> ## Documentation Index
> Fetch the complete documentation index at: https://www.voiceflow.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get integration tool schemas

> Returns the tools one integration offers, each with its inputs and the ID it has in this environment once it has been added. Use it to find the `toolName` that execute and add-tool take.



## OpenAPI

````yaml /specs-prettified/realtime/openapi.stable.json get /v1/stable/integration/{integration}/schema
openapi: 3.0.0
info:
  title: Realtime
  description: Realtime gateway API service
  version: 1.0.0
  contact: {}
servers:
  - url: https://realtime-api.voiceflow.com
security: []
tags: []
paths:
  /v1/stable/integration/{integration}/schema:
    get:
      tags:
        - Integration
      summary: Get integration tool schemas
      description: Returns the tools one integration offers, each with its inputs and
        the ID it has in this environment once it has been added. Use it to find
        the `toolName` that execute and add-tool take.
      operationId: StableIntegrationController_getSchema
      parameters:
        - name: integration
          required: true
          in: path
          schema:
            type: string
          x-vf-doc:
            description: The integration identifier, as `GET /v1/stable/integration` lists
              it (for example `twilio`).
          description: The integration identifier, as `GET /v1/stable/integration` lists
            it (for example `twilio`).
        - name: projectID
          required: true
          in: query
          schema:
            type: string
            description: The ID of the project to operate on.
        - name: environmentAlias
          required: true
          in: query
          schema:
            type: string
            description: The alias of the environment to operate on (e.g. `main`).
      responses:
        "200":
          description: Returns every tool the integration offers, attached or not, each
            with its catalog `toolName`, inputs, and `integrationToolID` (null
            until the tool is added), plus whether the project has credentials
            stored for the integration.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/StableIntegrationSchemaReadResponse"
          x-vf-doc:
            description: Returns every tool the integration offers, attached or not, each
              with its catalog `toolName`, inputs, and `integrationToolID` (null
              until the tool is added), plus whether the project has credentials
              stored for the integration.
      security:
        - token: []
components:
  schemas:
    StableIntegrationSchemaReadResponse:
      type: object
      properties:
        connected:
          type: boolean
          description: Whether the project has credentials stored for the integration, as
            the integration list reports it. A connection saved only in the
            draft may read false and still run.
        tools:
          type: array
          items:
            $ref: "#/components/schemas/StableIntegrationSchemaTool"
          description: Every tool the integration offers, attached or not. Empty for an
            integration with no tools, such as ElevenLabs.
      required:
        - connected
        - tools
    StableIntegrationSchemaTool:
      type: object
      properties:
        toolName:
          description: The catalog name to pass as `toolName` when executing.
          allOf:
            - $ref: "#/components/schemas/IntegrationToolName"
          enum:
            - example_dynamic_schema
            - zendesk_find_user
            - zendesk_find_group
            - zendesk_find_ticket
            - zendesk_create_ticket
            - zendesk_update_ticket
            - zendesk_add_ticket_comment
            - zendesk_update_organization
            - zendesk_find_latest_comment
            - salesforce_create_lead
            - salesforce_update_lead
            - salesforce_create_contact
            - salesforce_update_contact
            - salesforce_create_case
            - salesforce_update_case
            - salesforce_add_comment_to_case
            - shopify_get_products
            - shopify_get_order
            - shopify_cancel_order
            - shopify_update_order
            - google_sheets_create_spreadsheet
            - google_sheets_update_spreadsheet
            - google_sheets_read_spreadsheet
            - google_sheets_append_spreadsheet
            - google_sheets_read_row
            - google_gmail_send_email
            - airtable_create_records
            - airtable_delete_records
            - airtable_get_record
            - airtable_list_records
            - airtable_update_records
            - make_run_scenario
            - twilio_send_sms
            - hubspot_create_contact
            - hubspot_create_lead
            - hubspot_create_ticket
          x-enumNames:
            - EXAMPLE_DYNAMIC_SCHEMA
            - ZENDESK_FIND_USER
            - ZENDESK_FIND_GROUP
            - ZENDESK_FIND_TICKET
            - ZENDESK_CREATE_TICKET
            - ZENDESK_UPDATE_TICKET
            - ZENDESK_ADD_TICKET_COMMENT
            - ZENDESK_UPDATE_ORGANIZATION
            - ZENDESK_FIND_LATEST_TICKET_COMMENT
            - SALESFORCE_CREATE_LEAD
            - SALESFORCE_UPDATE_LEAD
            - SALESFORCE_CREATE_CONTACT
            - SALESFORCE_UPDATE_CONTACT
            - SALESFORCE_CREATE_CASE
            - SALESFORCE_UPDATE_CASE
            - SALESFORCE_ADD_COMMENT_TO_CASE
            - SHOPIFY_GET_PRODUCTS
            - SHOPIFY_GET_ORDER
            - SHOPIFY_CANCEL_ORDER
            - SHOPIFY_UPDATE_ORDER
            - GOOGLE_SHEETS_CREATE_SPREADSHEET
            - GOOGLE_SHEETS_UPDATE_SPREADSHEET
            - GOOGLE_SHEETS_READ_SPREADSHEET
            - GOOGLE_SHEETS_APPEND_SPREADSHEET
            - GOOGLE_SHEETS_READ_ROW
            - GOOGLE_GMAIL_SEND_EMAIL
            - AIRTABLE_CREATE_RECORDS
            - AIRTABLE_DELETE_RECORDS
            - AIRTABLE_GET_RECORD
            - AIRTABLE_LIST_RECORDS
            - AIRTABLE_UPDATE_RECORDS
            - MAKE_RUN_SCENARIO
            - TWILIO_SEND_SMS
            - HUBSPOT_CREATE_CONTACT
            - HUBSPOT_CREATE_LEAD
            - HUBSPOT_CREATE_TICKET
        name:
          type: string
          description: The human-readable name of the tool.
        description:
          type: string
          description: What the tool does, from the catalog, and which optional inputs a
            run needs at least one of.
        integrationToolID:
          nullable: true
          description: The ID attachments use for this tool in this environment, or null
            when the tool has not been added to it yet.
          type: string
        inputs:
          type: array
          items:
            $ref: "#/components/schemas/StableExecuteInput"
          description: The inputs execute takes for this tool.
      required:
        - toolName
        - name
        - description
        - integrationToolID
        - inputs
    IntegrationToolName:
      type: string
      enum:
        - example_dynamic_schema
        - zendesk_find_user
        - zendesk_find_group
        - zendesk_find_ticket
        - zendesk_create_ticket
        - zendesk_update_ticket
        - zendesk_add_ticket_comment
        - zendesk_update_organization
        - zendesk_find_latest_comment
        - salesforce_create_lead
        - salesforce_update_lead
        - salesforce_create_contact
        - salesforce_update_contact
        - salesforce_create_case
        - salesforce_update_case
        - salesforce_add_comment_to_case
        - shopify_get_products
        - shopify_get_order
        - shopify_cancel_order
        - shopify_update_order
        - google_sheets_create_spreadsheet
        - google_sheets_update_spreadsheet
        - google_sheets_read_spreadsheet
        - google_sheets_append_spreadsheet
        - google_sheets_read_row
        - google_gmail_send_email
        - airtable_create_records
        - airtable_delete_records
        - airtable_get_record
        - airtable_list_records
        - airtable_update_records
        - make_run_scenario
        - twilio_send_sms
        - hubspot_create_contact
        - hubspot_create_lead
        - hubspot_create_ticket
      x-enumNames:
        - EXAMPLE_DYNAMIC_SCHEMA
        - ZENDESK_FIND_USER
        - ZENDESK_FIND_GROUP
        - ZENDESK_FIND_TICKET
        - ZENDESK_CREATE_TICKET
        - ZENDESK_UPDATE_TICKET
        - ZENDESK_ADD_TICKET_COMMENT
        - ZENDESK_UPDATE_ORGANIZATION
        - ZENDESK_FIND_LATEST_TICKET_COMMENT
        - SALESFORCE_CREATE_LEAD
        - SALESFORCE_UPDATE_LEAD
        - SALESFORCE_CREATE_CONTACT
        - SALESFORCE_UPDATE_CONTACT
        - SALESFORCE_CREATE_CASE
        - SALESFORCE_UPDATE_CASE
        - SALESFORCE_ADD_COMMENT_TO_CASE
        - SHOPIFY_GET_PRODUCTS
        - SHOPIFY_GET_ORDER
        - SHOPIFY_CANCEL_ORDER
        - SHOPIFY_UPDATE_ORDER
        - GOOGLE_SHEETS_CREATE_SPREADSHEET
        - GOOGLE_SHEETS_UPDATE_SPREADSHEET
        - GOOGLE_SHEETS_READ_SPREADSHEET
        - GOOGLE_SHEETS_APPEND_SPREADSHEET
        - GOOGLE_SHEETS_READ_ROW
        - GOOGLE_GMAIL_SEND_EMAIL
        - AIRTABLE_CREATE_RECORDS
        - AIRTABLE_DELETE_RECORDS
        - AIRTABLE_GET_RECORD
        - AIRTABLE_LIST_RECORDS
        - AIRTABLE_UPDATE_RECORDS
        - MAKE_RUN_SCENARIO
        - TWILIO_SEND_SMS
        - HUBSPOT_CREATE_CONTACT
        - HUBSPOT_CREATE_LEAD
        - HUBSPOT_CREATE_TICKET
    StableExecuteInput:
      type: object
      properties:
        name:
          type: string
          description: The input name, used as its key in `inputs` when executing.
        type:
          type: string
          description: The JSON type the value must have, such as `string`, `number` or
            `boolean`. Always `string` for a function or an API tool, and `any`
            when an MCP tool does not say.
        required:
          type: boolean
          description: Whether execute needs a value for this input.
        description:
          nullable: true
          description: What the input holds, as the tool describes it.
          type: string
      required:
        - name
        - type
        - required
        - description
  securitySchemes:
    token:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Voiceflow bearer token
````
