OpenAPI 3.1.0raw.githubusercontent.com2026-08-051,2852,0364.4 MB

8f5f4e537994

Assistants

Import assistants from external provider

Import assistants from external providers. Any assistant that has already been imported will be overwritten with its latest version from the importing provider.

post/ai/assistants/import

Request body

provider'elevenlabs' | 'vapi' | 'retell' required

The external provider to import assistants from.

api_key_refstring required

Integration secret pointer that refers to the API key for the external provider. This should be an identifier for an integration secret created via /v2/integration_secrets.

import_idsstring[]

Optional list of assistant IDs to import from the external provider. If not provided, all assistants will be imported.

Response

Successful Response

Example response

{
  "data": [
    {
      "tools": [
        {
          "webhook": {
            "url": "https://example.com/api/v1/function",
            "body_parameters": {
              "properties": {
                "age": {
                  "description": "The age of the customer.",
                  "type": "integer"
                },
                "location": {
                  "description": "The location of the customer.",
                  "type": "string"
                }
              },
              "required": [
                "age",
                "location"
              ],
              "type": "object"
            },
            "path_parameters": {
              "properties": {
                "id": {
                  "description": "The id of the customer.",
                  "type": "string"
                }
              },
              "required": [
                "id"
              ],
              "type": "object"
            },
            "query_parameters": {
              "properties": {
                "page": {
                  "description": "The page number.",
                  "type": "integer"
                }
              },
              "required": [
                "page"
              ],
              "type": "object"
            }
          }
        }
      ],
      "conversation_flow": {
        "edges": [
          {
            "condition": {
              "prompt": "The caller is asking about a bill or charge.",
              "type": "llm"
            },
            "id": "e_intake_to_billing",
            "start_node_id": "n_intake",
            "target": {
              "node_id": "n_billing",
              "type": "node"
            }
          },
          {
            "condition": {
              "prompt": "The caller has explicitly asked for a human.",
              "type": "llm"
            },
            "id": "e_intake_to_escalation_assistant",
            "start_node_id": "n_intake",
            "target": {
              "assistant_id": "assistant-human-handoff",
              "position": {
                "x": 600,
                "y": 80
              },
              "type": "assistant",
              "voice_mode": "distinct"
            }
          }
        ],
        "nodes": [
          {
            "type": "prompt",
            "id": "n_intake",
            "instructions": "Greet the caller and ask what they're calling about.",
            "name": "Intake",
            "position": {
              "x": 120,
              "y": 80
            },
            "shared_tool_ids": [
              "tool-faq-kb"
            ]
          },
          {
            "type": "prompt",
            "id": "n_billing",
            "instructions": "Focus on billing questions. Look up the caller's latest invoice with the billing tool before answering.",
            "instructions_mode": "append",
            "model": "moonshotai/Kimi-K2.6",
            "name": "Billing",
            "position": {
              "x": 420,
              "y": 80
            },
            "shared_tool_ids": [
              "tool-billing-lookup"
            ],
            "tools_mode": "append"
          }
        ],
        "start_node_id": "n_intake"
      }
    }
  ]
}