Bring Your Own Bot Setup Entities
The Bring Your Own Bot (BYOB) feature introduces two setup entities to integrate external bots with the Salesforce Conversation Platform.
This entity describes an integration that an Independent Software Vendor (ISV) or organization provides, that allows an external system to provide conversation participants. The integration also defines an organization’s access to this ISV integration, including how the ISV authenticates with Salesforce and receives events sent from Salesforce along with metadata about the ISV and the external system.
| Field Label | Developer Name | Type | Description | Required |
|---|---|---|---|---|
| Master Label | MasterLabel | text | The human-readable name to show in the UI (Inherited from the Setup Entity Template). | Yes |
| Developer Name | DeveloperName | text | The developer name to use internally/in the code (Inherited from the Setup Entity Template). | Yes |
| Connected App Oauth Link | ConnectedAppOauthLink | text | The OAuth link for the ExternalClientApp associated with the record. The ExternalClient will be used to call the Interaction Service APIs. | Yes |
| Conversation Vendor Info | ConversationVendorInfo | foreignkey (ConversationVendorInfo) | Represents the vendor/partner associated with this entity. If a partner is providing a package solution, this field contains the partner’s information. | No |
| Custom Platform Event | CustomPlatformEvent | foreignkey (CustomEntityDefinition) | Represents the custom platform event against which the outbound events are published on the Salesforce event bus. | Yes |
| Custom Event Payload Field | CustomEventPayloadField | foreignkey (CustomFieldDefinition) | Refers to the specific field within the custom platform event to be used to set the event payload. It is used to publish the payload corresponding to each event type. | Yes |
| Custom Event Type Field | CustomEventTypeField | foreignkey (CustomFieldDefinition) | This refers to the specific field within the custom platform event to be used to define the event type. It serves to differentiate between various published events, such as Interaction, RoutingRequested, and so on. | Yes |
This entity describes a specific chatbot participant within the integration provided by ConversationParticipantDef. It holds details about the chatbot, such as its identifier in the external system and its display name. This chatbot can join a Conversation as a participant when it is requested to do so, and then it can send and receive messages or events related to that Conversation.
| Field Label | Developer Name | Type | Description | Required |
|---|---|---|---|---|
| External Conversation Participant Integration Definition | ExtConvParticipantIntegDef | foreignkey (ExtConvParticipantIntegDef) | Represents the ExtConvParticipantIntegDef associated with this entity. | Yes |
| External Id | ExternalId | text | Identifier to uniquely identify this bot in an external system. | Yes |
| Is Active | IsActive | boolean | Identify if the bot is available to use in a conversation. If not, the conversation would be routed to a fallback queue. | Yes |
| Display Name | DisplayName | text | Name of the bot to show in the agent experience UI and web client. | Yes |
| Type | Type | staticenum | Type of the external bot. Valid value: Chatbot. | No |