Webex AI Receptionist API

APIs for retrieving AI Receptionist sessions and conversational transcripts. Restricted to organization Full Administrators (CI role `id_full_admin`).

OpenAPI Specification

webex-ai-receptionist-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Webex Cloud Calling AI Receptionist API
  version: 1.0.0
  description: The Webex Cloud Calling APIs enable comprehensive management of cloud-based calling services, including user provisioning, device assignment, call routing, feature configuration, and number management. These APIs facilitate integration with enterprise directories, automation of telephony workflows, and centralized management of global calling infrastructure. Use cases include automated onboarding, self-service portals, integration with CRM/ERP systems, and real-time monitoring of call quality and usage.
  x-provenance:
    method: harvested
    authored_by: Cisco Webex
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
    provider_published: true
  x-evidence:
  - type: source
    url: https://github.com/webex/webex-openapi-specs/blob/main/public-spec/webex-cloud-calling.json
  - type: raw
    url: https://raw.githubusercontent.com/webex/webex-openapi-specs/main/public-spec/webex-cloud-calling.json
tags:
- name: AI Receptionist
  description: '<!-- feature-toggle-name:calling-air-transcript-api-CALL-205781 -->


    APIs for retrieving AI Receptionist sessions and conversational transcripts. Restricted to organization Full Administrators (CI role `id_full_admin`).'
paths:
  /telephony/config/aiReceptionists:
    get:
      summary: List AI Receptionists
      operationId: listAiReceptionists
      description: 'Get list of AI Receptionists.


        AI Receptionist is a Webex Calling feature that uses AI to greet callers and intelligently route calls to people or services. These APIs let administrators manage AI receptionist resources across organizations and locations.


        This API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
      tags:
      - AI Receptionist
      parameters:
      - name: orgId
        in: query
        description: Optional target organization identifier. Defaults to token's organization if not provided.
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
        schema:
          type: string
          minLength: 1
          maxLength: 200
          example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
      - name: max
        in: query
        description: 'Maximum number of items returned in the response. Default: 2000.'
        example: 100
        schema:
          type: integer
          minimum: 1
          maximum: 2000
          example: 100
      - name: start
        in: query
        description: Zero-based offset for pagination.
        example: 0
        schema:
          type: integer
          minimum: 0
          example: 0
      - name: locationId
        in: query
        description: Location identifier. If not specified, returns AI receptionists from all locations.
        example: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgyMjI4MWVkLWUyMmItMTYxNi1hOTYyLTExYTY2OTExYTY2OQ
        schema:
          type: string
          minLength: 1
          maxLength: 200
      - name: name
        in: query
        description: Search AI receptionists by name (contains match).
        example: Shine Healthcare
        schema:
          type: string
          minLength: 1
          maxLength: 30
          example: Shine Healthcare
      - name: phoneNumber
        in: query
        description: Search (Contains) based on number or extension. Search cannot be performed based on esn.
        example: '+1350434'
        schema:
          type: string
          minLength: 1
          maxLength: 23
          example: '+1350434'
      responses:
        '200':
          description: OK
          headers:
            Link:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AiReceptionistListResponse'
              example:
                aiReceptionists:
                - id: Y2lzY29zcGFyazovL3VzL0FJX1JFQ0VQVElPTklTVC82MDEyNGU1MC03MWNkLTQ2N2QtODkzZS1mMGY5MDc0YWYyYjc
                  name: Shine Healthcare Clinic
                  phoneNumber: '+13504342182'
                  extension: '42182'
                  routingPrefix: '1234'
                  esn: '123442182'
                  location:
                    id: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgyMjI4MWVkLWUyMmItMTYxNi1hOTYyLTExYTY2OTExYTY2OQ
                    name: San Jose
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
  /telephony/config/aiReceptionists/actions/validateCountry/invoke:
    post:
      summary: Validate Country for AI Receptionist
      operationId: validateAiReceptionistCountry
      description: 'Validates if country passed in the request supports AI Receptionist.


        AI Receptionist is a Webex Calling feature that uses AI to greet callers and intelligently route calls.


        This API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.'
      tags:
      - AI Receptionist
      parameters:
      - name: orgId
        in: query
        description: Optional; target organization ID, otherwise defaults to token's org.
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
        schema:
          type: string
          minLength: 1
          maxLength: 200
          example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateCountryRequest'
            example:
              countryCode: US
              locationId: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzEyMzQ1
      responses:
        '204':
          description: No Content
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
  /telephony/config/aiReceptionists/templates:
    get:
      summary: List AI Receptionist Templates
      operationId: listAiReceptionistTemplates
      description: 'Get AI Receptionist template list.


        AI Receptionist is a Webex Calling feature that uses AI to greet callers and intelligently route calls. Templates help standardize greetings, goals, and guidelines.


        Returns all templates in a single response.


        This API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
      tags:
      - AI Receptionist
      parameters:
      - name: orgId
        in: query
        description: Optional target organization identifier. Defaults to token's organization if not provided.
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
        schema:
          type: string
          minLength: 1
          maxLength: 200
          example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AiReceptionistTemplateListResponse'
              example:
                defaultTransparencyMessage: Hi, I’m an AI receptionist. This interaction may be recorded and transcribed for troubleshooting purposes.
                templates:
                - id: Y2lzY29zcGFyazovL3VzL1RFTVBMQVRFL2EyYjNjNDU2LTc4OTAtMTIzNC01Njc4LTkwYWJjZGVmMTIzNA
                  name: Clinic
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
  /telephony/config/aiReceptionists/templates/{templateId}:
    get:
      summary: Get AI Receptionist Template Details
      operationId: getAiReceptionistTemplate
      description: 'Get AI Receptionist template details.


        AI Receptionist is a Webex Calling feature that uses AI to greet callers and intelligently route calls. Use templates to define goals, messages, and guidelines.


        This API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
      tags:
      - AI Receptionist
      parameters:
      - name: templateId
        in: path
        required: true
        description: Template Id.
        example: Y2lzY29zcGFyazovL3VzL1RFTVBMQVRFL2EyYjNjNDU2LTc4OTAtMTIzNC01Njc4LTkwYWJjZGVmMTIzNA
        schema:
          type: string
          minLength: 1
          maxLength: 200
      - name: orgId
        in: query
        description: Optional target organization identifier. Defaults to token's organization if not provided.
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
        schema:
          type: string
          minLength: 1
          maxLength: 200
          example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AiReceptionistTemplate'
              example:
                id: Y2lzY29zcGFyazovL3VzL1RFTVBMQVRFL2EyYjNjNDU2LTc4OTAtMTIzNC01Njc4LTkwYWJjZGVmMTIzNA
                name: Clinic
                goal: As an AI receptionist for Shine Healthcare Clinic, your role is to help callers with necessary information regarding our services.
                welcomeMessage: Hello I am your AI Receptionist. How can I help you today?
                guideline: '1. Role Definition: You are a friendly assistant

                  2. Context: User can only book or cancel appointment'
                defaultTransparencyMessage: Hi, I'm an AI receptionist. This interaction may be recorded and transcribed for troubleshooting purposes.
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
  /telephony/config/locations/{locationId}/aiReceptionists/actions/validate/invoke:
    post:
      summary: Validate AI Receptionist
      operationId: validateAiReceptionist
      description: 'Validates AI Receptionist name at location level and max limit at org level.


        AI Receptionist is a Webex Calling feature that uses AI to greet callers and intelligently route calls.


        This API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.'
      tags:
      - AI Receptionist
      parameters:
      - name: locationId
        in: path
        required: true
        description: Location ID.
        example: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgyMjI4MWVkLWUyMmItMTYxNi1hOTYyLTExYTY2OTExYTY2OQ
        schema:
          type: string
          minLength: 1
          maxLength: 200
      - name: orgId
        in: query
        description: Optional target organization identifier, defaults to the token's org if not provided.
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
        schema:
          type: string
          minLength: 1
          maxLength: 200
          example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateAiReceptionistRequest'
            example:
              name: Shine Healthcare Clinic
      responses:
        '204':
          description: No Content
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
  /telephony/config/locations/{locationId}/aiReceptionists/availableNumbers:
    get:
      summary: List Available Numbers for AI Receptionist
      operationId: listAiReceptionistAvailableNumbers
      description: 'List and search numbers that can be assigned as AI Receptionist number.


        AI Receptionist is a Webex Calling feature that uses AI to greet callers and intelligently route calls. Numbers listed here can be assigned to an AI receptionist at a location.


        This API requires a full or read-only administrator auth token with a scope of `spark-admin:telephony_config_read`.'
      tags:
      - AI Receptionist
      parameters:
      - name: locationId
        in: path
        required: true
        description: Location ID.
        example: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgyMjI4MWVkLWUyMmItMTYxNi1hOTYyLTExYTY2OTExYTY2OQ
        schema:
          type: string
          minLength: 1
          maxLength: 200
      - name: orgId
        in: query
        description: Optional target organization identifier. Defaults to the token's org Id if not provided.
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
        schema:
          type: string
          minLength: 1
          maxLength: 200
          example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
      - name: max
        in: query
        description: 'Maximum number of items returned in the response. Default: 2000.'
        example: 100
        schema:
          type: integer
          minimum: 1
          maximum: 2000
          example: 100
      - name: start
        in: query
        description: Record offset.
        example: 0
        schema:
          type: integer
          minimum: 0
          example: 0
      - name: phoneNumber
        in: query
        description: Search (Contains) based on number or extension. Search cannot be performed based on esn.
        example: '+1213456'
        schema:
          type: string
          minLength: 1
          maxLength: 20
          example: '+1213456'
      responses:
        '200':
          description: OK
          headers:
            Link:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AvailableNumbersListResponse'
              example:
                phoneNumbers:
                - phoneNumber: '+12134567895'
                  state: ACTIVE
                  isMainNumber: false
                  telephonyType: PSTN_NUMBER
                  tollFreeNumber: false
                  isServiceNumber: false
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
  /telephony/config/locations/{locationId}/aiReceptionists:
    post:
      summary: Create an AI Receptionist
      operationId: createAiReceptionist
      description: 'Create a new AI Receptionist for a location.


        AI Receptionist is a Webex Calling feature that uses AI to greet callers and intelligently route calls to people or services.


        This API requires a full administrator auth token with a scope of `spark-admin:telephony_config_write`.'
      tags:
      - AI Receptionist
      parameters:
      - name: locationId
        in: path
        required: true
        description: Location ID.
        example: Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OLzgyMjI4MWVkLWUyMmItMTYxNi1hOTYyLTExYTY2OTExYTY2OQ
        schema:
          type: string
          minLength: 1
          maxLength: 200
      - name: orgId
        in: query
        description: Optional target organization identifier. Defaults to token's organization if not provided.
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
        schema:
          type: string
          minLength: 1
          maxLength: 200
          example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi85NmFiYzJhYS0zZGNjLTExZTUtYTE1Mi1mZTM0ODE5Y2RjOWE
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAiReceptionistRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAiReceptionistResponse'
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
 

# --- truncated at 32 KB (182 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/webex/refs/heads/main/openapi/webex-ai-receptionist-api-openapi.yml