SignalWire Resources API

Endpoints related to creating & managing Resources

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/signalwire-resources-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 email required.

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

OpenAPI Specification

signalwire-resources-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: SignalWire REST Resources API
  version: 1.0.0
  contact:
    name: SignalWire
    url: https://support.signalwire.com/portal/en/newticket?departmentId=1029313000000006907&layoutId=1029313000000074011
    email: support@signalwire.com
  license:
    name: MIT
    url: https://github.com/signalwire/docs/blob/main/LICENSE
  termsOfService: https://signalwire.com/legal/signalwire-cloud-agreement
  description: Endpoints related to creating & managing Resources
servers:
- url: https://{space_name}.signalwire.com
  description: SignalWire API
  variables:
    space_name:
      default: '{Your_Space_Name}'
      description: Your SignalWire Space name
security:
- SignalWireBasicAuth: []
tags:
- name: Resources
  description: Endpoints related to creating & managing Resources
  externalDocs:
    url: https://signalwire.com/docs/apis
    description: Developer documentation on Resource, Fabric API endpoints
paths:
  /api/fabric/resources:
    get:
      operationId: list_resources
      summary: List Resources
      description: 'A list of Fabric Resources


        #### Permissions


        The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_, _Messaging_, _Fax_, or _Video_.


        [Learn more about API scopes](/docs/platform/your-signalwire-api-space).'
      parameters: []
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceListResponse'
              examples:
                Resource list:
                  summary: Resource list
                  description: A page containing one compact AI Agent resource.
                  value:
                    data:
                    - id: 993ed018-9e79-4e50-b97b-984bd5534095
                      project_id: 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
                      display_name: Support Assistant
                      created_at: '2024-05-06T12:20:00Z'
                      updated_at: '2024-05-06T12:25:00Z'
                      type: ai_agent
                      ai_agent:
                        prompt:
                          text: You are a helpful customer support assistant.
                        agent_id: a87db7ed-8ebe-42e4-829f-8ba5a4152f54
                        name: Support Assistant
                    links:
                      self: https://example.signalwire.com/api/fabric/resources?page_number=0&page_size=50
                      first: https://example.signalwire.com/api/fabric/resources?page_number=0&page_size=50
        '401':
          description: Access is unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode401'
        '404':
          description: The server cannot find the requested resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode404'
        '500':
          description: An internal server error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode500'
      tags:
      - Resources
  /api/fabric/resources/{id}:
    get:
      operationId: get_resource
      summary: Get Resource
      description: 'Returns a Resource by ID


        #### Permissions


        The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_, _Messaging_, _Fax_, or _Video_.


        [Learn more about API scopes](/docs/platform/your-signalwire-api-space).'
      parameters:
      - $ref: '#/components/parameters/ResourcePathID'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceResponse'
              examples:
                Messaging script:
                  summary: Messaging script
                  description: A compact Messaging SWML Script resource.
                  value:
                    id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                    project_id: 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
                    display_name: Reply Bot
                    created_at: '2024-05-06T12:20:00Z'
                    updated_at: '2024-05-06T12:25:00Z'
                    type: swml_script
                    swml_script:
                      id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                      display_name: Reply Bot
                      script_type: messaging
                      request_url: https://example.com/swml_script
                      contents:
                        version: 1.0.0
                        sections:
                          main:
                          - reply: Thanks for your message!
                Calling script:
                  summary: Calling script
                  description: A compact Calling SWML Script resource.
                  value:
                    id: 993ed018-9e79-4e50-b97b-984bd5534095
                    project_id: 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
                    display_name: Welcome Script
                    created_at: '2024-05-06T12:20:00Z'
                    updated_at: '2024-05-06T12:25:00Z'
                    type: swml_script
                    swml_script:
                      id: 993ed018-9e79-4e50-b97b-984bd5534095
                      display_name: Welcome Script
                      script_type: calling
                      request_url: https://example.com/swml_script
                      contents:
                        version: 1.0.0
                        sections:
                          main:
                          - play:
                              url: https://cdn.signalwire.com/swml/audio.mp3
                Call Flow:
                  summary: Call Flow
                  description: A Call Flow with compact SWML content.
                  value:
                    id: 993ed018-9e79-4e50-b97b-984bd5534095
                    project_id: 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
                    display_name: Welcome Call Flow
                    created_at: '2024-05-06T12:20:00Z'
                    updated_at: '2024-05-06T12:25:00Z'
                    type: call_flow
                    call_flow:
                      id: 993ed018-9e79-4e50-b97b-984bd5534095
                      title: Welcome Call Flow
                      flow_data: {}
                      relayml:
                        version: 1.0.0
                        sections:
                          main:
                          - play:
                              url: https://cdn.signalwire.com/swml/audio.mp3
                      document_version: 1
                AI Agent:
                  summary: AI Agent
                  description: An AI Agent Fabric resource.
                  value:
                    id: 993ed018-9e79-4e50-b97b-984bd5534095
                    project_id: 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
                    display_name: Support Assistant
                    created_at: '2024-05-06T12:20:00Z'
                    updated_at: '2024-05-06T12:25:00Z'
                    type: ai_agent
                    ai_agent:
                      prompt:
                        text: You are a helpful customer support assistant.
                      agent_id: a87db7ed-8ebe-42e4-829f-8ba5a4152f54
                      name: Support Assistant
        '401':
          description: Access is unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode401'
        '404':
          description: The server cannot find the requested resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode404'
        '500':
          description: An internal server error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode500'
      tags:
      - Resources
    delete:
      operationId: delete_resource
      summary: Delete Resource
      description: 'Deletes a Resource by ID


        #### Permissions


        The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_, _Messaging_, _Fax_, or _Video_.


        [Learn more about API scopes](/docs/platform/your-signalwire-api-space).'
      parameters:
      - $ref: '#/components/parameters/ResourcePathID'
      responses:
        '204':
          description: 'There is no content to send for this request, but the headers may be useful. '
        '401':
          description: Access is unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode401'
        '404':
          description: The server cannot find the requested resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode404'
        '500':
          description: An internal server error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode500'
      tags:
      - Resources
components:
  parameters:
    ResourcePathID:
      name: id
      in: path
      required: true
      description: Unique ID of a Resource.
      schema:
        $ref: '#/components/schemas/uuid'
  schemas:
    ResourceResponseSipGateway:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - sip_gateway
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - sip_gateway
          description: The type of Resource
          examples:
          - sip_gateway
        sip_gateway:
          allOf:
          - $ref: '#/components/schemas/SipGateway'
          description: An object containing the response data of the SIP Gateway
      unevaluatedProperties:
        not: {}
      title: SIP Gateway
    ResourceResponseConferenceRoom:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - conference_room
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - swml_script
          description: The type of Resource
          examples:
          - swml_script
        conference_room:
          allOf:
          - $ref: '#/components/schemas/ConferenceRoom'
          description: An object containing the response data of the Conference Room
      unevaluatedProperties:
        not: {}
      title: Conference Room
    ResourceResponseCXMLWebhook:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - cxml_webhook
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - cxml_webhook
          description: The type of Resource
          examples:
          - cxml_webhook
        cxml_webhook:
          allOf:
          - $ref: '#/components/schemas/CXMLWebhook'
          description: An object containing the response data of the cXML Webhook
      unevaluatedProperties:
        not: {}
      title: cXML Webhook
    ResourceResponseCXMLApplication:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - cxml_application
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - cxml_application
          description: The type of Resource
          examples:
          - cxml_application
        cxml_application:
          allOf:
          - $ref: '#/components/schemas/CxmlApplication'
          description: An object containing the response data of the cXML Application
      unevaluatedProperties:
        not: {}
      title: cXML Application
    Encryption:
      type: string
      enum:
      - required
      - optional
      - default
    CXMLWebhook:
      type: object
      required:
      - id
      - name
      - used_for
      - primary_request_url
      - primary_request_method
      - fallback_request_url
      - fallback_request_method
      - status_callback_url
      - status_callback_method
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the CXML Webhook.
          examples:
          - a87db7ed-8ebe-42e4-829f-8ba5a4152f54
        name:
          type: string
          description: Name of the CXML Webhook.
          examples:
          - My CXML Webhook
        used_for:
          allOf:
          - $ref: '#/components/schemas/UsedForType'
          description: Used for of the CXML Webhook.
          examples:
          - calling
        primary_request_url:
          type: string
          format: uri
          description: Primary request url of the CXML Webhook.
          examples:
          - https://primary.com
        primary_request_method:
          allOf:
          - $ref: '#/components/schemas/RequestUrlMethodType'
          description: Primary request method of the CXML Webhook.
          examples:
          - GET
        fallback_request_url:
          anyOf:
          - type: string
            format: uri
          - type: 'null'
          description: Fallback request url of the CXML Webhook.
          examples:
          - https://fallback.com
        fallback_request_method:
          allOf:
          - $ref: '#/components/schemas/RequestUrlMethodType'
          description: Fallback request method of the CXML Webhook.
          examples:
          - GET
        status_callback_url:
          anyOf:
          - type: string
            format: uri
          - type: 'null'
          description: Status callback url of the CXML Webhook.
          examples:
          - https://callback.com
        status_callback_method:
          allOf:
          - $ref: '#/components/schemas/RequestUrlMethodType'
          description: Status callback method of the CXML Webhook.
          examples:
          - POST
      unevaluatedProperties:
        not: {}
    Types.StatusCodes.StatusCode401:
      type: object
      required:
      - error
      properties:
        error:
          type: string
          enum:
          - Unauthorized
      unevaluatedProperties:
        not: {}
      description: Access is unauthorized.
    SipGateway:
      type: object
      required:
      - id
      - uri
      - name
      - ciphers
      - codecs
      - encryption
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the SIP Gateway.
          examples:
          - cce59cad-104d-4c28-ada4-98cfd102ae09
        uri:
          type: string
          description: The URI for the SIP Gateway.
          examples:
          - user3@domain.com
        name:
          type: string
          description: Display name of the SIP Gateway.
          examples:
          - My SIP Gateway
        ciphers:
          type: array
          items:
            $ref: '#/components/schemas/Ciphers'
          description: List of supported SIP ciphers.
          examples:
          - - AEAD_AES_256_GCM_8
        codecs:
          type: array
          items:
            $ref: '#/components/schemas/Codecs'
          description: List of supported codecs.
          examples:
          - - OPUS
        encryption:
          allOf:
          - $ref: '#/components/schemas/Encryption'
          description: Specifies the encryption requirement.
          examples:
          - required
      unevaluatedProperties:
        not: {}
    ResourceResponseSipEndpoint:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - sip_endpoint
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - sip_endpoint
          description: The type of Resource
          examples:
          - sip_endpoint
        sip_endpoint:
          allOf:
          - $ref: '#/components/schemas/FabricSipEndpoint'
          description: An object containing the response data of the SIP Endpoint
      unevaluatedProperties:
        not: {}
      title: SIP Endpoint
    Codecs:
      type: string
      enum:
      - PCMU
      - PCMA
      - G722
      - G729
      - OPUS
      - OPUS@48000H@20I
      - OPUS@24000H@20I
      - OPUS@16000H@20I
      - OPUS@8000H@20I
      - VP8
      - H264
    ResourceResponseSWMLWebhook:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - swml_webhook
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - swml_webhook
          description: The type of Resource
          examples:
          - swml_webhook
        swml_webhook:
          allOf:
          - $ref: '#/components/schemas/SWMLWebhook'
          description: An object containing the response data of the SWML Webhook
      unevaluatedProperties:
        not: {}
      title: SWML Webhook
    RequestUrlMethodType:
      type: string
      enum:
      - GET
      - POST
      description: The method type to use for the URL
    ResourceResponse:
      oneOf:
      - $ref: '#/components/schemas/ResourceResponseAI'
      - $ref: '#/components/schemas/ResourceResponseCallFlow'
      - $ref: '#/components/schemas/ResourceResponseCXMLWebhook'
      - $ref: '#/components/schemas/ResourceResponseCXMLScript'
      - $ref: '#/components/schemas/ResourceResponseCXMLApplication'
      - $ref: '#/components/schemas/ResourceResponseDialogFlowAgent'
      - $ref: '#/components/schemas/ResourceResponseFSConnector'
      - $ref: '#/components/schemas/ResourceResponseRelayApp'
      - $ref: '#/components/schemas/ResourceResponseSipEndpoint'
      - $ref: '#/components/schemas/ResourceResponseSipGateway'
      - $ref: '#/components/schemas/ResourceResponseSubscriber'
      - $ref: '#/components/schemas/ResourceResponseSWMLWebhook'
      - $ref: '#/components/schemas/ResourceResponseSWMLScript'
      - $ref: '#/components/schemas/ResourceResponseConferenceRoom'
    Ciphers:
      type: string
      enum:
      - AEAD_AES_256_GCM_8
      - AES_256_CM_HMAC_SHA1_80
      - AES_CM_128_HMAC_SHA1_80
      - AES_256_CM_HMAC_SHA1_32
      - AES_CM_128_HMAC_SHA1_32
    ResourceResponseSubscriber:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - subscriber
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - subscriber
          description: The type of Resource
          examples:
          - subscriber
        subscriber:
          allOf:
          - $ref: '#/components/schemas/Subscriber'
          description: An object containing the response data of the [Subscriber](/docs/platform/subscribers).
      unevaluatedProperties:
        not: {}
      title: Subscriber
    AIAgent:
      type: object
      required:
      - prompt
      - agent_id
      - name
      properties:
        hints:
          type: array
          items:
            type: string
          description: 'Hints help the AI agent understand certain words or phrases better. Words that can commonly be misinterpreted can be added to the hints to help the AI speak more accurately.


            See [`ai.hints` in the SWML reference](/docs/swml/reference/calling/ai#aihints).'
          examples:
          - - pizza
            - pepperoni
        languages:
          type: array
          items:
            type: object
            unevaluatedProperties: {}
          description: 'An array of JSON objects defining supported languages in the conversation.

            Mutually exclusive with `multilingual`: if both are set, `multilingual` is used and

            this array is ignored.


            See [`ai.languages` in the SWML reference](/docs/swml/reference/calling/ai#ailanguages).'
          examples:
          - - name: English
              code: en-US
              voice: rime.spore
        params:
          type: object
          unevaluatedProperties: {}
          description: 'A JSON object containing parameters as key-value pairs.


            See [`ai.params` in the SWML reference](/docs/swml/reference/calling/ai#aiparams).'
          examples:
          - ai_model: gpt-4o-mini
            wait_for_user: true
        post_prompt:
          type: object
          unevaluatedProperties: {}
          description: 'The final set of instructions and configuration settings to send to the agent.


            See [`ai.post_prompt` in the SWML reference](/docs/swml/reference/calling/ai#aipost_prompt).'
          examples:
          - text: Summarize the conversation and provide any follow-up action items.
        pronounce:
          type: array
          items:
            type: object
            unevaluatedProperties: {}
          description: 'An array of JSON objects to clarify the AI''s pronunciation of words or expressions.


            See [`ai.pronounce` in the SWML reference](/docs/swml/reference/calling/ai#aipronounce).'
          examples:
          - - replace: SWML
              with: swim-el
              ignore_case: true
        prompt:
          type: object
          unevaluatedProperties: {}
          description: 'Defines the AI agent''s personality, goals, behaviors, and instructions for handling conversations.

            The prompt establishes how the agent should interact with callers, what information it should gather,

            and how it should respond to various scenarios. It is recommended to write prompts using markdown formatting.


            See [`ai.prompt` in the SWML reference](/docs/swml/reference/calling/ai#aiprompt).'
          examples:
          - text: You are a helpful customer support assistant.
        SWAIG:
          type: object
          unevaluatedProperties: {}
          description: 'An array of JSON objects to create user-defined functions/endpoints that can be executed during the dialogue.


            See [`ai.SWAIG` in the SWML reference](/docs/swml/reference/calling/ai#aiswaig).'
          examples:
          - native_functions:
            - check_time
        agent_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of an AI Agent.
          examples:
          - 3fa85f64-5717-4562-b3fc-2c963f66afa6
        name:
          type: string
          description: Name of the AI Agent.
          examples:
          - My AI Agent
      unevaluatedProperties:
        not: {}
      description: 'Creates an AI agent that conducts voice conversations using automatic speech recognition (ASR),

        large language models (LLMs), and text-to-speech (TTS) synthesis.

        The agent processes caller speech in real-time, generates contextually appropriate responses,

        and can execute custom functions to interact with external systems through SignalWire AI Gateway (SWAIG).


        See the [SWML `ai` method reference](/docs/swml/reference/calling/ai) for the complete configuration contract.'
      title: AI Agent
    ResourceResponseCXMLScript:
      type: object
      required:
      - id
      - project_id
      - display_name
      - created_at
      - updated_at
      - type
      - cxml_script
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Resource.
          examples:
          - 993ed018-9e79-4e50-b97b-984bd5534095
        project_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Project.
          examples:
          - 1313fe58-5e14-4c11-bbe7-6fdfa11fe780
        display_name:
          type: string
          description: Display name of the Resource
          examples:
          - My Resource
        created_at:
          type: string
          format: date-time
          description: Date and time when the resource was created.
          examples:
          - '2024-05-06T12:20:00Z'
        updated_at:
          type: string
          format: date-time
          description: Date and time when the resource was updated.
          examples:
          - '2024-05-06T12:20:00Z'
        type:
          type: string
          enum:
          - cxml_script
          description: The type of Resource
          examples:
          - cxml_script
        cxml_script:
          allOf:
          - $ref: '#/components/schemas/CXMLScript'
          description: An object containing the response data of the cXML Script
      unevaluatedProperties:
        not: {}
      title: cXML Script
    CallHandlerType:
      type: string
      enum:
      - default
      - passthrough
      - block-pstn
      - resource
    Subscriber:
      type: object
      required:
      - id
      - email
      - first_name
      - last_name
      - display_name
      - job_title
      - timezone
      - country
      - company_name
      properties:
        id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: Unique ID of the Subscriber.
          examples:
          - d369a402-7b43-4512-8735-9d5e1f387814
        email:
          type: string
          description: Email of the Subscriber.
          examples:
          - johndoe@example.com
        first_name:
          type: string
          description: First name of the Subscriber.
          examples:
          - John
        last_name:
          type: string
          description: Last name of the Subscriber.
          examples:
      

# --- truncated at 32 KB (70 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/signalwire/refs/heads/main/openapi/signalwire-resources-api-openapi.yml