Create the Conversation Channel Definition Record

The Conversation Channel Definition (ConversationChannelDefinition) record contains metadata used for Bring Your Own Channel integration.

Get the API names of the custom platform event you created and its custom fields. In the next task, you need the API names to set several parameters.

  1. From Setup, in the Quick Find box, enter Platform Events, and then select Platform Events.
  2. Click the name of the custom platform event.
  3. Copy the API Name of the platform event. The API Name is in the format devorg\_\_TestEvent\_\_e.
  4. In the Custom Fields and Relationships section, find and copy the API Names for the EventType and Payload fields. For example, the API Name for the EventType field is in the format devorg\_\_EventType\_\_c.

Use your preferred method, such as Tooling API, Metadata API, SOAP API, or SoapUI, to create the record. If you use the SoapUI to create the ConversationChannelDefinition record, verify that you’ve generated the enterprise WSDL. Otherwise, use the sample SOAP API payload to create the record.

  1. Use one of the sample payloads to create the ConversationChannelDefinition record.

    If you use Tooling API to create the record, send the POST request to this endpoint:

    POST /services/data/v60.0/tooling/sobjects/ConversationChannelDefinition/

    To configure the payload, follow these guidelines.

    • developerName: Enter the API name in the format {prefix}_{ConnectedAppName} that you generated in Create the Interaction Service Connected App. For example, Partner1_ChannelDefinition1 has the given name “ChannelDefinition1” with the prefix “Partner1,” which matches the prefix of the connected app.
    • masterLabel: Set this value to the record’s label name in the UI. This name appears in several places in the UI, so include the Bring Your Own Channel name for easy identification.
    • conversationVendorInfo: Set this value to the ConversationVendorInfo.developerName value. This field applies to Metadata API and Tooling API.
    • conversationVendorInfoId: Set this value to the ConversationChannelDefinition.ConversationVendorInfoId value that's used to link this record to the ConversationVendorInfo record—for example, 0m8000000000000123. This field applies to SOAP API.
    • customPlatformEvent: Set this value to the API Name of the custom platform event—for example, devorg\_\_TestEvent\_\_e.
    • customEventTypeField: Set this value to the API name of the custom EventType field in the custom platform event—for example, devorg\_\_EventType\_\_c.
    • customEventPayloadField: Set this value to the API name of the custom Payload field in the custom platform event—for example, devorg\_\_Payload\_\_c.
    • capabilitiesSupportsCustomChannelParameters: Set this value to true to let administrators leverage custom parameters and parameter mappings in Bring Your Own Channel messaging channels. The default value is true.
    • capabilitiesSupportsIsoCountryCode: Set this value to true to support ISO-3166 country codes. The default value is false.
    • capabilitiesSupportsKeywords: Set this value to true to support keywords when Salesforce manages consent levels.
    • capabilitiesSupportsImplicitConsent: Set this value to true to expose the Implicit Opt-In consent level to the administrator. This field is required and must be set to true. The default value is false. To learn more about consent levels, see Configure Levels to Customize the Messaging Opt-In and Opt-Out Experience.
    • capabilitiesSupportsExplicitConsent: Set this value to true to expose the Explicit Opt-In consent level to the administrator. The default value is false. This field is optional. To learn more about consent levels, see Configure Consent Levels to Customize the Messaging Opt-In and Opt-Out Experience.
    • customIcon: Set this value to the name of the static resource image you want to use to identify this 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. To learn more about custom icons, see Add a Custom Icon.
    • routingOwner: Set to Salesforce to let Salesforce Omni-Channel manage routing. For Bring Your Own Channel, this is the only supported value. If not set, this value defaults to Salesforce.
    • consentOwner: Set to Salesforce to let Salesforce manage consent levels. For Bring Your Own Channel, this is the only supported value. If not set, this value defaults to Salesforce.
  2. After the record is created, copy the ConversationChannelDefinition record ID that's returned in the response. You need it to create the Bring Your Own Channel messaging channel.

Use these sample payloads as templates to create ConversationChannelDefinition records for Bring Your Own Channel.

Consider these optional tasks when creating the ConversationChannelDefinition Record:

See Also