---
schema_version: "1"
id: 9fc4e135eef58f38797b6fd6255515b5c20d095e65544a166c1c76b10f47a534
title: Bring Your Own Bot Setup Entities
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/service-cloud/interaction-service-api/references/byob-setup-entities.md
canonical_url: https://developer.salesforce.com/docs/service/messaging-byob/references/byob-reference/byob-setup-entities.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 333a305a0b941909b83ba3f0f5f615595c4e21e4bed73af8899fa5e1513d7985
products:
  - Bring Your Own Bot for Messaging
  - Service Cloud Developer Content
---
# 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.

## ExtConvParticipantIntegDef

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      |

## ExternalConversationBotDef

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       |
