openapi: 3.0.1 info: title: Vocode Hosted Actions API description: Hosted REST API for the Vocode voice AI platform. Place and manage outbound and inbound phone calls driven by configurable voice agents, and manage the agents, voices, prompts, actions, phone numbers, and webhooks that power them. All requests are authenticated with a Bearer API key. This specification covers the hosted API and is distinct from the open-source vocode-core Python library. termsOfService: https://www.vocode.dev contact: name: Vocode Support url: https://docs.vocode.dev version: 1.0.0 servers: - url: https://api.vocode.dev/v1 description: Production environment security: - HTTPBearer: [] tags: - name: Actions paths: /actions/create: post: operationId: createAction tags: - Actions summary: Create an action requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ActionParams' responses: '200': description: The created action. content: application/json: schema: $ref: '#/components/schemas/Action' '422': $ref: '#/components/responses/ValidationError' /actions: get: operationId: getAction tags: - Actions summary: Get an action parameters: - name: id in: query required: true schema: type: string format: uuid responses: '200': description: The requested action. content: application/json: schema: $ref: '#/components/schemas/Action' '422': $ref: '#/components/responses/ValidationError' /actions/list: get: operationId: listActions tags: - Actions summary: List actions parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/Size' responses: '200': description: A paginated page of actions. content: application/json: schema: $ref: '#/components/schemas/ActionPage' '422': $ref: '#/components/responses/ValidationError' /actions/update: post: operationId: updateAction tags: - Actions summary: Update an action parameters: - name: id in: query required: true schema: type: string format: uuid requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ActionParams' responses: '200': description: The updated action. content: application/json: schema: $ref: '#/components/schemas/Action' '422': $ref: '#/components/responses/ValidationError' components: parameters: Size: name: size in: query required: false schema: type: integer default: 10 Page: name: page in: query required: false schema: type: integer default: 1 schemas: ActionParams: type: object required: - type properties: type: type: string enum: - action_transfer_call - action_end_conversation - action_dtmf - action_set_hold - action_add_to_conference - action_external config: type: object ValidationError: type: object required: - loc - msg - type properties: loc: type: array items: type: string msg: type: string type: type: string ActionPage: type: object properties: items: type: array items: $ref: '#/components/schemas/Action' page: type: integer size: type: integer total: type: integer HTTPValidationError: type: object properties: detail: type: array items: $ref: '#/components/schemas/ValidationError' Action: type: object required: - id - user_id - type properties: id: type: string format: uuid user_id: type: string format: uuid type: type: string enum: - action_transfer_call - action_end_conversation - action_dtmf - action_set_hold - action_add_to_conference - action_external config: type: object responses: ValidationError: description: Validation error. content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' securitySchemes: HTTPBearer: type: http scheme: bearer