ConversationChannelDefinition

Represents the conversation channel definition that’s implemented for Interaction Service for Bring Your Own Channel for Messaging and Bring Your Own Channel for CCaaS messaging channels. This object is available in API version 60.0 and later.

Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.

Important

Parent Type 

This type extends Metadata and inherits its fields.

File Suffix and Directory Location 

ConversationChannelDefinition components have the suffix .ConversationChannelDefinition and are stored in the conversationChannelDefinitions folder.

Version 

Introduced in API version 60.0.

Special Access Rules 

Interaction service must be configured. Access to tooling objects requires Salesforce administrator privileges or the Customize Application permission.

Fields 

connectedAppOauthLink 

  • Type: string
  • Required: No
  • Description: DO NOT SET OR CHANGE THIS VALUE. This value is automatically generated. This field represents the OAuth link for the external client app (ECA) or connected app if the connectedAppType value is Partner. This is a string identifier to the ECA or connected app containing the partner Org ID and the consumer ID minus the key prefixes. Used to identify the ECA or connected app to use for the channel definition and channel at runtime.

connectedAppType 

  • Type: CustomChannelConnectedAppType (enumeration of type string)
  • Required: No
  • Description: The owner of the external client app (ECA) or connected app used to manage authentication between Salesforce Interaction Service and the Messaging or CCaaS partner’s system.

consentOwner 

  • Type: ConsentOwner (enumeration of type string)
  • Required: No
  • Description: The system the customer uses to manage consent levels.

conversationVendorInfo 

  • Type: string
  • Required: No
  • Description: The ConversationVendorInfo.developerName used to link this record to the ConversationVendorInfo record. For example, PartnerName.

customerConnectedAppOauthLink 

  • Type: string
  • Required: No
  • Introduced: API version 62.0
  • Description: DO NOT SET OR CHANGE THIS VALUE. This value is automatically generated. This field represents the OAuth link for the external client app or connected app created by an admin if the ConnectedAppType is Customer.

customEventChnlAddrIdField 

  • Type: string
  • Required: No
  • Description: The mapping field that points to the custom field used to point to the ChannelAddressIdentifier field.

customEventPayloadField 

  • Type: string
  • Required: Yes
  • Description: Required. The mapping field that points to the custom field used to point to the Payload field in the format <orgNamespace>__<CustomFieldName>__c. This is the API name of the custom Payload field in the custom platform event. For example, devorg__Payload__c.

customEventRecipientField 

  • Type: string
  • Required: No
  • Description: The mapping field that points to the custom field used to point to the Recipient field.

customEventTypeField 

  • Type: string
  • Required: No
  • Description: The mapping field that points to the custom field used to point to the Platform event type (EventType) field, in the format <orgNamespace>__<CustomFieldName>__c. This is the API name of the custom EventType field in the custom platform event. For example, devorg__EventType__c.

customIcon 

  • Type: string
  • Required: No
  • Introduced: API version 61.0
  • Description: For Bring Your Own Channel for Messaging and Bring Your Own Channel for CCaaS, this field represents the name of the status resource image used to identify the channel integration, such as a channel logo. For the best results, set the image size to 50px x 50px and save the image in SVG file format. This field is optional. This field is a relationship field.

customPlatformEvent 

  • Type: string
  • Required: Yes
  • Description: Required. The API name of the custom platform event created for the Interaction Service API in the format <orgNamespace>__<CustomPlatformEventName>__e. For example, devorg__TestEvent__e.

developerName 

  • Type: string
  • Required: Yes
  • Description: The unique name of the custom metadata type object in the API in the format <Prefix>_<ConversationChannelDefinition>, where Prefix matches the prefix you gave to the name of the Interaction Service external client app or connected app. For example, Partner1_ChannelDefinition1, where Partner1 is the prefix and ChannelDefinition1 is the given name.

isConferenceSupported 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the partner supports conferencing for Bring Your Own Channel (true), or not (false). With conferencing, more than two participants are allowed in a messaging session. The default is false.

isInboundAcknwOptionExposed 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the partner supports read receipts and delivery receipts for inbound messages (true) or whether the partner doesn’t support these inbound acknowledgments and the functionality is hidden from the Salesforce admin in the Messaging settings (false). The default value is false.

isInboundReceiptsEnabled 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the partner supports read receipts and delivery receipts for inbound messages (true) or whether the partner doesn’t support these inbound acknowledgements and the functionality is hidden from the Salesforce admin in the Messaging settings (false). The default value is false.

isProgressIndicatorOptExposed 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the partner supports progress indicators for AI agents (true) or whether the partner doesn’t support them and the functionality is hidden from the Salesforce admin in the Messaging settings (false). The default value is false.

isRoutingWorkResultEnabled 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the Routing Work Result event is sent as a Custom Platform event or not.

isRoutingWorkResultSupported 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the Routing Work Result event is sent as a Custom Platform event (true) or not (false). The default value is false.

isTypingIndicatorDisabled 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the partner doesn’t support typing indicators for outbound messages and the functionality is hidden from the Salesforce admin in the Messaging settings (true) or whether outbound typing indicators are supported by the partner (false). The default value is false, meaning the outbound typing indicator feature is supported by default. To disable the outbound typing indicator feature, set this value to true.

isTypingIndicatorOptionHidden 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the partner doesn’t support typing indicators for outbound messages and the functionality is hidden from the Salesforce admin in the Messaging settings (true) or whether outbound typing indicators are supported by the partner (false). The default value is false, meaning the outbound typing indicator feature is supported by default. To disable the outbound typing indicator feature, set this value to true.

masterLabel 

  • Type: string

  • Required: Yes

  • Description: The namespace prefix that is associated with this object. Each Developer Edition org that creates a managed package has a unique namespace prefix. Limit: 15 characters. You can refer to a component in a managed package by using the namespacePrefix__componentName notation. The namespace prefix can have one of the following values.

    • In Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless an object is in an installed managed package. In that case, the object has the namespace prefix of the installed managed package. This field’s value is the namespace prefix of the Developer Edition org of the package developer.
    • In orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix.

    NamespacePrefix is null if the publisher is Salesforce.

maxParticipantsForCnfrOverride 

  • Type: int
  • Required: No
  • Description: Specifies the limit for how many participants can be in a messaging conference. If set, this field overrides the platform limit for the number of participants in a conference. If not set, the limit defaults to the messaging platform limit of how many participants can be in a messaging conference at one time.

routingOwner 

  • Type: RoutingOwner (enumeration of type string)
  • Required: No
  • Description: The system the customer uses to manage routing for Bring Your Own Channel for Messaging or Bring Your Own Channel for CCaaS.

supportsCustomChannelParameters 

  • Type: boolean
  • Required: No
  • Description: Indicates whether admins can configure custom parameters and parameter mappings for messaging channels. Custom parameters and parameter mappings are used to pass additional information at runtime to Omni-Channel flows. The default value is false.

supportsDoubleOptInConsent 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the channel supports (true) the Double Opt-In consent level. The default value is false. If set to true, then capabilitiesSupportsExplicitConsent must also be set to true. This field is optional and isn’t supported for Bring Your Own Channel for Messaging. It’s only supported for Bring Your Own Channel for CCaaS.

supportsExplicitConsent 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the channel supports (true) the Explicit Opt-In consent level. This field is optional.

supportsImplicitConsent 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the channel supports (true) the Implicit Opt-In consent level. This value is required and must always be set to true. The default value is false.

supportsIsoCountryCode 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the channel supports (true) ISO country codes. The default value is false.

supportsKeywords 

  • Type: boolean
  • Required: No
  • Description: Indicates whether the channel supports (true) keywords. The default value is false.

Declarative Metadata Sample Definition 

The following is an example of a ConversationChannelDefinition component.

The following is an example package.xml that references the previous definition.