Salesforce Service Cloud APIs Bot API

The bot API from Salesforce Service Cloud APIs — 3 operation(s) for bot.

Business capability
Self-Service Management BC-430.40

Operations 3

POST /v5.3.0/bots/{bot-id}/sessions Start a session #
POST /v5.3.0/sessions/{session-id}/messages Continue an active session #
DELETE /v5.3.0/sessions/{session-id} End an active session #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/service-cloud-bot-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

service-cloud-bot-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Einstein Bots API (BETA) Bot API
  version: v5.3.0
servers:
- url: https://runtime-api-na-west.prod.chatbots.sfdc.sh
  description: Einstein Bots API - NA West
- url: https://runtime-api-na-east.prod.chatbots.sfdc.sh
  description: Einstein Bots API - NA East
- url: https://runtime-api-eu-west.prod.chatbots.sfdc.sh
  description: Einstein Bots API - EU West
- url: https://runtime-api-eu-east.prod.chatbots.sfdc.sh
  description: Einstein Bots API - EU East
- url: https://runtime-api-ap-west.prod.chatbots.sfdc.sh
  description: Einstein Bots API - AP West
- url: https://runtime-api-ap-east.prod.chatbots.sfdc.sh
  description: Einstein Bots API - AP East
tags:
- name: bot
paths:
  /v5.3.0/bots/{bot-id}/sessions:
    post:
      tags:
      - bot
      summary: Start a session
      description: Send a message to the bots API to start a new session.
      operationId: startSession
      security:
      - chatbotAuth:
        - chatbot_api
      - jwtBearer: []
      parameters:
      - in: path
        name: bot-id
        description: ID of the Einstein Bot that you want to interact with.
        required: true
        schema:
          type: string
      - in: header
        name: X-Org-Id
        description: 18-character org ID of the Salesforce org associated with the bot.
        required: true
        schema:
          example: 00Dx0000000ALskEAG
          type: string
        allowEmptyValue: false
      - in: header
        name: X-Request-ID
        description: Request ID. A UUID in string format created by you to help with request tracking.
        required: false
        schema:
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          type: string
      requestBody:
        description: Request payload to initiate a session.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InitMessageEnvelope'
      responses:
        '200':
          $ref: '#/components/responses/SuccessfulResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '422':
          $ref: '#/components/responses/RequestProcessingException'
        '423':
          $ref: '#/components/responses/ServerBusyError'
        '429':
          $ref: '#/components/responses/TooManyRequestsError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /v5.3.0/sessions/{session-id}/messages:
    post:
      tags:
      - bot
      summary: Continue an active session
      description: Send a message to the bots API on an active session.
      operationId: continueSession
      security:
      - chatbotAuth:
        - chatbot_api
      - jwtBearer: []
      parameters:
      - in: path
        name: session-id
        description: ID of an active session, which is the `sessionId` returned by the bot when you start a session.
        required: true
        schema:
          type: string
      - in: header
        name: X-Org-Id
        description: 18-character org ID of the Salesforce org associated with the bot.
        required: true
        schema:
          example: 00Dx0000000ALskEAG
          type: string
        allowEmptyValue: false
      - in: header
        name: X-Request-ID
        description: Request ID. A UUID in string format created by you to help with request tracking.
        required: false
        schema:
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          type: string
      - in: header
        name: X-Runtime-CRC
        description: Internal runtime CRC, which is the `X-Runtime-CRC` value from previous response.
        schema:
          type: string
      requestBody:
        description: Request payload to continue the chat.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatMessageEnvelope'
      responses:
        '200':
          $ref: '#/components/responses/SuccessfulChatMessageResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '422':
          $ref: '#/components/responses/RequestProcessingException'
        '423':
          $ref: '#/components/responses/ServerBusyError'
        '429':
          $ref: '#/components/responses/TooManyRequestsError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /v5.3.0/sessions/{session-id}:
    delete:
      tags:
      - bot
      summary: End an active session
      description: Send a message to the bots API to end a session
      operationId: endSession
      security:
      - chatbotAuth:
        - chatbot_api
      - jwtBearer: []
      parameters:
      - in: path
        name: session-id
        description: ID of an active session, which is the `sessionId` returned by the bot when you start a session.
        required: true
        schema:
          type: string
      - in: header
        name: X-Org-Id
        description: 18-character org ID of the Salesforce org associated with the bot.
        required: true
        schema:
          example: 00Dx0000000ALskEAG
          type: string
        allowEmptyValue: false
      - in: header
        name: X-Session-End-Reason
        description: Reason session ended.
        example: Transfer
        required: true
        schema:
          $ref: '#/components/schemas/EndSessionReason'
        allowEmptyValue: false
      - in: header
        name: X-Request-ID
        description: Request ID. A UUID in string format created by you to help with request tracking.
        required: false
        schema:
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          type: string
      - in: header
        name: X-Runtime-CRC
        description: Internal runtime CRC, which is the `X-Runtime-CRC` value from previous response.
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/SuccessfulChatMessageResponse'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '422':
          $ref: '#/components/responses/RequestProcessingException'
        '423':
          $ref: '#/components/responses/ServerBusyError'
        '429':
          $ref: '#/components/responses/TooManyRequestsError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        default:
          $ref: '#/components/responses/ErrorResponse'
components:
  responses:
    ForbiddenError:
      description: User forbidden from accessing the resource
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 403
            path: /v1/00DRM00000067To/chatbots/HelloWorldBot/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: ForbiddenError
            message: User forbidden from accessing the resource
            timestamp: 1531245973799
            additionalProp1: {}
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    SuccessfulChatMessageResponse:
      description: OK
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ChatMessageResponseEnvelope'
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
        X-Runtime-CRC:
          description: Internal runtime CRC.
          schema:
            type: string
    BadRequestError:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 400
            path: /v1/00DRM00000067To/chatbots/HelloWorldBot/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: BadRequestError
            message: Bad Request
            timestamp: 1531245973799
            additionalProp1: {}
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    ErrorResponse:
      description: Something went wrong
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    ServerBusyError:
      description: Server is busy and cannot process the request at this time
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 423
            path: /v1/00DRM00000067To/chatbots/HelloWorldBot/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: ServerBusyError
            message: Server is busy and cannot process the request at this time
            timestamp: 1531245973799
            additionalProp1: {}
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    ServiceUnavailable:
      description: Service is unavailable possibly because Apex or Flow calls timed out
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 503
            path: /v1/00DRM00000067To/chatbots/HelloWorldBot/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: ServiceUnavailable
            message: Service is unavailable possibly because Apex/Flow calls timed out
            timestamp: 1531245973799
            additionalProp1: {}
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    UnauthorizedError:
      description: Access bearer token is missing or invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 401
            path: /v1/00DRM00000067To/chatbots/HelloWorldBot/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: UnauthorizedError
            message: Access bearer token is missing or invalid
            timestamp: 1531245973799
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    SuccessfulResponse:
      description: OK
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResponseEnvelope'
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
        X-Runtime-CRC:
          description: Internal runtime CRC unique to the request.
          schema:
            type: string
        X-Bot-Mode:
          description: Bot mode.
          example: default
          schema:
            type: string
    RequestProcessingException:
      description: Any exception that occurred during the request execution
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 422
            path: v4.0.0/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: RequestProcessingException
            message: Cannot determine the active version for the bot
            timestamp: 1531245973799
            additionalProp1: {}
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    NotFoundError:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 404
            path: /v1/00DRM00000067To/chatbots/HelloWorldBot/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: NotFoundError
            message: Resource not found
            timestamp: 1531245973799
            additionalProp1: {}
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
    TooManyRequestsError:
      description: Too many requests for the server to handle
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            status: 429
            path: /v1/00DRM00000067To/chatbots/HelloWorldBot/messages
            requestId: 19c056ab-d909-49df-b976-65e56b6ab214
            error: TooManyRequestsError
            message: Too many requests for the server to handle
            timestamp: 1531245973799
            additionalProp1: {}
      headers:
        X-Request-ID:
          description: Request ID. A UUID in string format to help with request tracking.
          example: 36a73651-a46d-4d16-9a8a-fd436ed62e1a
          schema:
            type: string
  schemas:
    ResponseEnvelope:
      type: object
      properties:
        sessionId:
          $ref: '#/components/schemas/ResponseSessionId'
        botVersion:
          $ref: '#/components/schemas/BotVersion'
        processedSequenceIds:
          description: Sequence IDs of messages that the bot processed. Except for the initial request to start the session, all requests require a `sequenceId`.
          type: array
          items:
            format: int64
            type: integer
            example: 1
        messages:
          description: Messages from the bot.
          type: array
          minimum: 0
          items:
            oneOf:
            - $ref: '#/components/schemas/TextResponseMessage'
            - $ref: '#/components/schemas/ChoicesResponseMessage'
            - $ref: '#/components/schemas/EscalateResponseMessage'
            - $ref: '#/components/schemas/SessionEndedResponseMessage'
        variables:
          $ref: '#/components/schemas/Variables'
        metrics:
          description: Session metrics.
          type: object
          additionalProperties: false
        intents:
          $ref: '#/components/schemas/Intents'
        entities:
          $ref: '#/components/schemas/Entities'
        _links:
          $ref: '#/components/schemas/Links'
      required:
      - sessionId
      - botVersion
      - processedSequenceIds
      - messages
      - _links
      additionalProperties: false
    TransferFailedRequestMessage:
      type: object
      properties:
        type:
          description: Message type for the client to inform the bot that the client failed to transfer the session to another target.
          type: string
          enum:
          - transferFailed
          example: transferFailed
        sequenceId:
          $ref: '#/components/schemas/SequenceId'
        inReplyToMessageId:
          $ref: '#/components/schemas/InReplyToMessageId'
        reason:
          description: Reason for the failed transfer.
          type: string
          enum:
          - NoAgentAvailable
          - Error
          example: NoAgentAvailable
        description:
          description: Description of why the transfer failed.
          type:
          - string
          - 'null'
      required:
      - type
      - sequenceId
      - reason
      additionalProperties: false
    MoneyVariable:
      type: object
      properties:
        name:
          description: API name of a variable defined in the bot definition.
          type: string
          example: orderAmount
        type:
          description: Variable type of a money variable storing the currency and amount.
          type: string
          enum:
          - money
          example: money
        value:
          description: Money in format '3_LETTER_CURRENCY_CODE AMOUNT'.
          type:
          - string
          - 'null'
          example: USD 10.40
      required:
      - name
      - type
      - value
      additionalProperties: false
    NormalizedEntity:
      type: object
      properties:
        confidenceScore:
          description: Probability number that the AI assigns to this entity.
          type: number
          example: 0.4
        value:
          description: Value of the entity that the customer enters.
          type: string
          example: USD 30.0
        type:
          $ref: '#/components/schemas/EntityType'
        entitySource:
          $ref: '#/components/schemas/EntitySource'
      required:
      - confidenceScore
      - value
      - type
      additionalProperties: false
    TextResponseMessage:
      type: object
      properties:
        type:
          description: Message type of a text message to the customer.
          type: string
          enum:
          - text
          example: text
        id:
          $ref: '#/components/schemas/MessageId'
        text:
          description: Message from the bot.
          type: string
          example: Hello world!
        schedule:
          $ref: '#/components/schemas/Schedule'
        feedbackId:
          $ref: '#/components/schemas/FeedbackId'
      required:
      - type
      - id
      - text
      additionalProperties: false
    ChatMessageEnvelope:
      type: object
      properties:
        message:
          description: Message to the bot.
          oneOf:
          - $ref: '#/components/schemas/ChoiceMessage'
          - $ref: '#/components/schemas/TextMessage'
          - $ref: '#/components/schemas/TransferSucceededRequestMessage'
          - $ref: '#/components/schemas/TransferFailedRequestMessage'
          - $ref: '#/components/schemas/RedirectMessage'
          - $ref: '#/components/schemas/SetVariablesMessage'
        responseOptions:
          $ref: '#/components/schemas/ResponseOptions'
      required:
      - message
      additionalProperties: false
    SetVariablesMessage:
      type: object
      description: Update existing session variables
      properties:
        type:
          description: Message type
          type: string
          enum:
          - setVariables
        sequenceId:
          $ref: '#/components/schemas/SequenceId'
        variables:
          $ref: '#/components/schemas/Variables'
      required:
      - type
      - sequenceId
      - variables
      additionalProperties: false
    FeedbackId:
      type: string
      description: unique ID to identify the generation, used to submit feedback
      example: 9247bbd8-5ed9-11ee-8c99-0242ac120002
    Links:
      description: List of Einstein Bots API endpoints for HATEOS compliancy.
      type: object
      properties:
        self:
          $ref: '#/components/schemas/HyperLink'
        messages:
          $ref: '#/components/schemas/HyperLink'
        session:
          $ref: '#/components/schemas/HyperLink'
      required:
      - self
      additionalProperties: false
    ObjectVariable:
      type: object
      properties:
        name:
          description: API name of a variable defined in the bot definition.
          type: string
          example: contact
        type:
          description: Variable type of an object variable.
          type: string
          enum:
          - object
          example: object
        value:
          description: Variable value is an object.
          allOf:
          - $ref: '#/components/schemas/Variables'
          example:
          - name: fullName
            type: text
            value: Matt Smith
      required:
      - name
      - type
      - value
      additionalProperties: false
    ListVariable:
      type: object
      properties:
        name:
          description: API name of a variable defined in the bot definition.
          type: string
          example: target
        type:
          description: Object variable that contains a list.
          type: string
          enum:
          - list
          example: list
        value:
          description: Array of objects.
          type:
          - array
          - 'null'
          items:
            type: object
          example:
          - type: ref
            value: 1M5xx000000000BCAQ
      required:
      - name
      - type
      - value
      additionalProperties: false
    TextMessage:
      type: object
      properties:
        type:
          description: Message type for replying to the bot through text.
          type: string
          enum:
          - text
          example: text
        sequenceId:
          $ref: '#/components/schemas/SequenceId'
        inReplyToMessageId:
          $ref: '#/components/schemas/InReplyToMessageId'
        text:
          description: Text reply to the bot. To answer a question with choices with a text message, type the `choiceLabel`.
          type: string
      required:
      - type
      - sequenceId
      - text
      additionalProperties: false
    ExternalSessionKey:
      description: UUID in string format for the conversation. You can use this parameter to trace the conversation in your bot's event logs.
      type: string
      example: 57904eb6-5352-4c5e-adf6-5f100572cf5d
    ChatMessageResponseEnvelope:
      type: object
      properties:
        botVersion:
          $ref: '#/components/schemas/BotVersion'
        processedSequenceIds:
          description: Sequence IDs of processed messages.
          type: array
          example: 1, 2
          items:
            format: int64
            type: integer
        messages:
          description: Messages from the bot.
          type: array
          minimum: 0
          items:
            oneOf:
            - $ref: '#/components/schemas/TextResponseMessage'
            - $ref: '#/components/schemas/ChoicesResponseMessage'
            - $ref: '#/components/schemas/EscalateResponseMessage'
            - $ref: '#/components/schemas/SessionEndedResponseMessage'
        variables:
          $ref: '#/components/schemas/Variables'
        metrics:
          description: Session metrics.
          type: object
          additionalProperties: false
        intents:
          $ref: '#/components/schemas/Intents'
        entities:
          $ref: '#/components/schemas/Entities'
        _links:
          $ref: '#/components/schemas/Links'
      required:
      - botVersion
      - processedSequenceIds
      - messages
      - _links
      additionalProperties: false
    EntityType:
      description: System or custom entity Type ([What’s an Entity?](https://help.salesforce.com/s/articleView?id=sf.bots_service_whats_an_entity.htm&type=5)).
      type: string
      example: MONEY
    TextInitMessage:
      type: object
      properties:
        text:
          description: Initial message from the customer to the bot to begin a session.
          type: string
          example: Hello
      additionalProperties: false
    SequenceId:
      description: Client-generated sequence number of the message in a session. Increase this number for each subsequent message.
      format: int64
      type: integer
      example: 1
    Error:
      type: object
      properties:
        status:
          description: HTTP status.
          type: integer
          format: int32
        path:
          description: Request path.
          type: string
        requestId:
          description: Request ID. A UUID in string format to help with request tracking.
          type: string
        error:
          description: Error class name.
          type: string
        message:
          description: Exception message.
          type: string
        timestamp:
          description: Unix timestamp.
          type: integer
          format: int64
      required:
      - status
      - path
      - requestId
      - error
      - message
      - timestamp
      additionalProperties: false
    ResponseOptionsVariables:
      type: object
      description: Variables returned in the response.
      properties:
        include:
          type: boolean
          example: true
          description: Indicates whether to include variables in the response.
        filter:
          type:
          - array
          - 'null'
          example:
          - OrderQty
          - OrderType
          description: Filter the returned variables. If missing, null, or empty, no filtering is applied.
          items:
            type: string
            description: Variable name to filter the returned variables on.
            example: OrderQty
        onlyChanged:
          type: boolean
          example: true
          description: Indicates whether the response contains only changed variables.
      required:
      - include
      - onlyChanged
      additionalProperties: false
    SessionEndedResponseMessage:
      type: object
      properties:
        type:
          description: Message type informing that the session ended.
          type: string
          enum:
          - sessionEnded
          example: sessionEnded
        id:
          $ref: '#/components/schemas/MessageId'
        reason:
          description: Reason the session ended.
          type: string
          enum:
          - ClientRequest
          - TransferFailedNotConfigured
          - Action
          - Error
          - InfiniteLoopDetected
          example: ClientRequest
        schedule:
          $ref: '#/components/schemas/Schedule'
        feedbackId:
          $ref: '#/components/schemas/FeedbackId'
      required:
      - type
      - id
      - reason
      additionalProperties: false
    HyperLink:
      description: Hyperlink object included in the Links schema
      type: object
      properties:
        href:
          description: Link to the endpoint
          type: string
          example: https://runtime-api-ap-east.prod.chatbots.sfdc.sh/v5.0.0/sessions
    ResponseSessionId:
      description: Bot runtime session ID.
      type: string
      example: 57904eb6-5352-4c5e-adf6-5f100572cf5d
    BotVersion:
      description: Bot configuration version.
      type:
      - string
      - 'null'
      example: 0X9RM0000004CD00AM
    EntitySource:
      description: '"Prediction system that detects the entity. The Bot API can call NLPs or it can figure out the entity by itself."


        * `BOT_SERVICE`—Bot detects entity without Natural Language Processing (NLP)

        * `CORE_NLP`—Third-party NLP

        * `EINSTEIN_NLP`—Einstein NLP

        '
      type: string
      enum:
      - BOT_SERVICE
      - CORE_NLP
      - EINSTEIN_NLP
      example: EINSTEIN_NLP
    DateVariable:
      type: object
      properties:
        name:
          description: API name of a variable defined in the bot definition.
          type: string
          example: orderDate
        type:
          description: Variable type of a date variable.
          type: string
          enum:
          - date
          example: date
        value:
          description: Date in format ISO_LOCAL_DATE 'YYYY-MM-DD'.
          type:
          - string
          - 'null'
          example: '2021-09-21'
      required:
      - name
      - type
      - value
      additionalProperties: false
    IntentSource:
      description: 'Prediction system that detects the intent.


        * `DIRECT`—Utterance search or an exact match

        * `CORE_NLP`—Third-party Natural Language Processing (NLP)

        * `EINSTEIN_NLP`—Einstein NLP

        '
      type: string
      enum:
      - DIRECT
      - CORE_NLP
      - EINSTEIN_NLP
      example: EINSTEIN_NLP
    RefVariable:
      type: object
      properties:
        name:
          description: API name of a variable defined in the bot definition.
          type: string
          example: target
        type:
          description: Variable type of a reference ID variable.
          type: string
          enum:
          - ref
          example: ref
        value:
          description: Variable value in reference ID format.
          type:
          - string
          - 'null'
          example: 1M5xx000000000BCAQ
      required:
      - name
      - type
      - value
      additionalProperties: false
    InitMessageEnvelope:
      type: object
      properties:
        externalSessionKey:
          $ref: '#/components/schemas/ExternalSessionKey'
        message:
          $ref: '#/components/schemas/TextInitMessage'
        forceConfig:
          $ref: '#/components/schemas/ForceConfig'
        responseOptions:
          $ref: '#/components/schemas/ResponseOptions'
        tz:
          description: Client timezone where the customer starts the chat.
          type:
          - string
          - 'null'
          example: America/Los_Angeles
        variables:
          $ref: '#/components/schemas/Variables'
        referrers:
          description: Array of referrers of transferring the session to another bot.
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Referrer'
      required:
      - forceConfig
      - externalSessionKey
      additionalProperties: false
    Intents:
      description: 'Array of the intents detected by the bot when processing the request. For a bot, "intent" refers to the goal the customer

        (see [Use Intents to Understand Your Customers](https://help.salesforce.com/s/articleView?id=sf.bots_service_train_bot.htm&type=5&_ga=2.5901875.1281711304.1657558186-1967832163.1652719780)).

        '
      type: array
      minimum: 0
      items:
        $ref: '#/components/schemas/NormalizedIntent'
    Schedule:
      type: object
      properties:
        responseDelayMilliseconds:
          description: Delay in ms to display the bot's message to the user. This parameter is set by the bot admin when creating the bot.
          type: integer
          format: int32
          example: 1200
      required:
      - responseDelayMilliseconds
      additionalProperties: false
    TransferSucceededRequestMessage:
      type: object
      properties:
        type:
          description: Message type for the client to inform the bot that the client successfully transferred the session to another target.
          type: string
          enum:
          - transferSucceeded
          example: transferSucceeded
        sequenceId:
          $ref: '#/components/schemas/SequenceId'
        inReplyToMessageId:
          $ref: '#/components/schemas/InReplyToMessageId'
      required:
      - type
      - sequenceId
      additionalProperties: false
    EscalateResponseMessage:
      type: object
      properties:
        type:
          description: Message type of an escalation message.
          type: string
          enum:
          - escalate
          example: escalate
        id:
          $ref: '#/components/schemas/MessageId'
        schedule:
          $ref: '#/components/schemas/Schedule'
        feedbackId:
          $ref: '#/components/schemas/FeedbackId'
        targets:
          type: array
          minimum: 

# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/service-cloud/refs/heads/main/openapi/service-cloud-bot-api-openapi.yml