DialNexa API

Voice AI agent platform API — agents, calls, workflows, integrations and analytics. 41 paths, 54 operations, bearer authentication, served from api.dialnexa.com.

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/dialnexa-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

dialnexa-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: DialNexa API
  description: Public `/v1` REST API for the DialNexa voice AI platform.
  version: 1.0.0
servers:
- url: https://api.dialnexa.com
  description: DialNexa production API
security:
- bearer: []
tags:
- name: Agents
- name: Batch Calls
- name: Calls
- name: Knowledge Base
- name: Languages
- name: LLMs
- name: Phone Numbers
- name: Transcribers
- name: Webhooks
- name: Voices
- name: Workflows
- name: Workflow Leads
paths:
  /v1/agents:
    post:
      description: 'Creates an agent with its first draft version. Optionally include `agent_functions`
        and `post_call_analysis` in the body to set them at creation time.


        **Phone number fields:** `inbound_phone_number_id` and `outbound_phone_number_id` must belong
        to the authenticated workspace. On create, these IDs are stored on the draft version. Live dispatch
        routing is claimed when the version is published through `PATCH /v1/agents/{id}` with `is_published:
        true`.'
      operationId: createAgent
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAgentRequest'
            examples:
              request:
                summary: Create an agent
                value:
                  title: Customer Support Agent
                  language_id: lang_en_in
                  voice_id: voice_abc123
                  llm_id: llm_A1B2C3D4E5F6G7
                  transcriber_id: trs_deepgram_nova_2
                  system_prompt_text: You are a helpful support agent. Confirm the customer issue and
                    summarize next steps.
                  fallback_stt_enabled: true
                  stt_fallback_transcriber_id: trs_soniox
                  post_call_analysis:
                  - field_name: issue_type
                    field_type: STRING
                    field_description: Main customer issue discussed on the call
                  predictive_preprocessing_enabled: false
                  outbound_phone_number_id: phn_def456
                  agent_type: Single_Prompt_Agent
                  prompt_text: You are a helpful support agent. Confirm the customer's issue and summarize
                    next steps.
      responses:
        '201':
          description: Agent created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents'
              examples:
                success:
                  summary: Successful response
                  value:
                    id: agent_2g7Xy3tY53gRlp
                    folder_id: null
                    current_version_number: 1
                    timezone: Asia/Kolkata
                    agent_type: Single_Prompt_Agent
                    pipeline_type: Cascaded
                    webhook_id: null
                    current_version:
                      agent_id: agent_2g7Xy3tY53gRlp
                      version_number: 1
                      version_title: Version 1
                      title: Customer Support Agent
                      is_published: false
                      language_id: lang_en_in
                      voice_id: voice_abc123
                      llm_id: llm_A1B2C3D4E5F6G7
                      transcriber_id: trs_deepgram_nova_2
                      fallback_stt_enabled: true
                      stt_fallback_transcriber_id: trs_soniox
                      post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
                    versions:
                    - agent_id: agent_2g7Xy3tY53gRlp
                      version_number: 1
                      version_title: Version 1
                      title: Customer Support Agent
                      is_published: false
                      language_id: lang_en_in
                      voice_id: voice_abc123
                      llm_id: llm_A1B2C3D4E5F6G7
                      transcriber_id: trs_deepgram_nova_2
                      fallback_stt_enabled: true
                      stt_fallback_transcriber_id: trs_soniox
                      post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
        '400':
          description: Invalid request body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 400 Bad Request
                  value:
                    statusCode: 400
                    message: Request validation failed
                    error: Bad Request
        '401':
          description: Unauthorized - missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 401 Unauthorized
                  value:
                    statusCode: 401
                    message: API key is missing or invalid
                    error: Unauthorized
        '403':
          description: Forbidden - API key does not have access to this organization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 403 Forbidden
                  value:
                    statusCode: 403
                    message: You do not have permission to access this resource
                    error: Forbidden
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 500 Internal Server Error
                  value:
                    statusCode: 500
                    message: Internal server error
                    error: Internal Server Error
      security:
      - bearer: []
      summary: Create Agent
      tags:
      - Agents
    get:
      description: Returns all agents for your organization. Agent functions are NOT included in list
        responses - fetch a specific agent by ID to get its functions.
      operationId: listAgents
      parameters: []
      responses:
        '200':
          description: Agents returned successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  agents:
                    type: array
                    items:
                      $ref: '#/components/schemas/Agents'
              examples:
                success:
                  summary: Successful response
                  value:
                    agents:
                    - id: agent_2g7Xy3tY53gRlp
                      folder_id: null
                      current_version_number: 1
                      timezone: Asia/Kolkata
                      agent_type: Single_Prompt_Agent
                      pipeline_type: Cascaded
                      webhook_id: null
                      current_version:
                        agent_id: agent_2g7Xy3tY53gRlp
                        version_number: 1
                        version_title: Version 1
                        title: Customer Support Agent
                        is_published: false
                        language_id: lang_en_in
                        voice_id: voice_abc123
                        llm_id: llm_A1B2C3D4E5F6G7
                        transcriber_id: trs_deepgram_nova_2
                        fallback_stt_enabled: true
                        stt_fallback_transcriber_id: trs_soniox
                        post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
                      versions:
                      - agent_id: agent_2g7Xy3tY53gRlp
                        version_number: 1
                        version_title: Version 1
                        title: Customer Support Agent
                        is_published: false
                        language_id: lang_en_in
                        voice_id: voice_abc123
                        llm_id: llm_A1B2C3D4E5F6G7
                        transcriber_id: trs_deepgram_nova_2
                        fallback_stt_enabled: true
                        stt_fallback_transcriber_id: trs_soniox
                        post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
        '400':
          description: Invalid query parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 400 Bad Request
                  value:
                    statusCode: 400
                    message: Invalid query parameters
                    error: Bad Request
        '401':
          description: Unauthorized - missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 401 Unauthorized
                  value:
                    statusCode: 401
                    message: API key is missing or invalid
                    error: Unauthorized
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 403 Forbidden
                  value:
                    statusCode: 403
                    message: You do not have permission to access this resource
                    error: Forbidden
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 500 Internal Server Error
                  value:
                    statusCode: 500
                    message: Internal server error
                    error: Internal Server Error
      security:
      - bearer: []
      summary: List Agents
      tags:
      - Agents
  /v1/agents/{id}:
    patch:
      description: 'Updates the specified draft version of an agent. `version_number` is required.


        **Managing functions via this endpoint:**

        - Pass `agent_functions: [...]` to fully replace all functions for that version.

        - Pass `agent_functions: []` to remove all functions.

        - Omit `agent_functions` entirely to leave existing functions untouched.


        **Post-call analysis LLM:**

        - Pass `post_call_analysis_llm_id`, for example `llm_A1B2C3D4E5F6G7`, to set the LLM used for
        post-call field extraction.

        - Pass `null` to clear the override and revert to the organization default.

        - Omit the field to leave it unchanged.


        **Phone number assignment:**

        - `inbound_phone_number_id` and `outbound_phone_number_id` are applied to live routing only when
        `is_published: true` is included in the same request.

        - Sending a phone number ID without `is_published: true` leaves live routing unchanged.

        - Pass an empty string to detach a phone number while publishing.

        - Outbound changes can return `409 Conflict` when active workflows still use the number. Pause
        those workflows before retrying.


        Published versions cannot be updated, except to set `is_published: true` to publish a draft.'
      operationId: updateAgent
      parameters:
      - name: id
        required: true
        in: path
        description: Agent ID
        schema:
          example: agent_2g7Xy3tY53gRlp
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateAgentRequest'
            examples:
              request:
                summary: Update a draft agent version
                value:
                  version_number: 1
                  title: Customer Support Agent
                  llm_id: llm_A1B2C3D4E5F6G7
                  fallback_stt_enabled: true
                  stt_fallback_transcriber_id: trs_soniox
                  post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
              clearPostCallAnalysisLlm:
                summary: Clear post-call analysis LLM override
                value:
                  version_number: 1
                  post_call_analysis_llm_id: null
              publishWithOutboundNumber:
                summary: Publish a draft with an outbound number
                value:
                  version_number: 1
                  is_published: true
                  outbound_phone_number_id: phn_def456
              detachOutboundNumber:
                summary: Publish while detaching an outbound number
                value:
                  version_number: 2
                  is_published: true
                  outbound_phone_number_id: ''
      responses:
        '200':
          description: Agent updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents'
              examples:
                success:
                  summary: Successful response
                  value:
                    id: agent_2g7Xy3tY53gRlp
                    folder_id: null
                    current_version_number: 1
                    timezone: Asia/Kolkata
                    agent_type: Single_Prompt_Agent
                    pipeline_type: Cascaded
                    webhook_id: null
                    current_version:
                      agent_id: agent_2g7Xy3tY53gRlp
                      version_number: 1
                      version_title: Version 1
                      title: Customer Support Agent
                      is_published: false
                      language_id: lang_en_in
                      voice_id: voice_abc123
                      llm_id: llm_A1B2C3D4E5F6G7
                      transcriber_id: trs_deepgram_nova_2
                      fallback_stt_enabled: true
                      stt_fallback_transcriber_id: trs_soniox
                      post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
                    versions:
                    - agent_id: agent_2g7Xy3tY53gRlp
                      version_number: 1
                      version_title: Version 1
                      title: Customer Support Agent
                      is_published: false
                      language_id: lang_en_in
                      voice_id: voice_abc123
                      llm_id: llm_A1B2C3D4E5F6G7
                      transcriber_id: trs_deepgram_nova_2
                      fallback_stt_enabled: true
                      stt_fallback_transcriber_id: trs_soniox
                      post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
        '400':
          description: Invalid body or attempting to update a published version.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 400 Bad Request
                  value:
                    statusCode: 400
                    message: Request validation failed
                    error: Bad Request
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 401 Unauthorized
                  value:
                    statusCode: 401
                    message: API key is missing or invalid
                    error: Unauthorized
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 403 Forbidden
                  value:
                    statusCode: 403
                    message: You do not have permission to access this resource
                    error: Forbidden
        '404':
          description: Agent or version not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 404 Not Found
                  value:
                    statusCode: 404
                    message: Agent not found
                    error: Not Found
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 500 Internal Server Error
                  value:
                    statusCode: 500
                    message: Internal server error
                    error: Internal Server Error
        '409':
          description: Phone number assignment conflicts with active workflows.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                phoneNumberUsedInActiveWorkflows:
                  summary: 409 Conflict
                  value:
                    statusCode: 409
                    message: Cannot bind outbound_phone_number_id "phn_def456" to this agent because it
                      is currently used by active workflows. Pause those workflows first, then retry.
                    error: Conflict
      security:
      - bearer: []
      summary: Update Agent
      tags:
      - Agents
    delete:
      description: Deletes an agent and all its versions. Historical call records remain available.
      operationId: deleteAgent
      parameters:
      - name: id
        required: true
        in: path
        description: Agent ID
        schema:
          example: agent_2g7Xy3tY53gRlp
          type: string
      responses:
        '200':
          description: Agent deleted successfully.
          content:
            application/json:
              examples:
                success:
                  summary: Successful response
                  value:
                    success: true
                    message: Agent deleted successfully
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: Agent deleted successfully
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 401 Unauthorized
                  value:
                    statusCode: 401
                    message: API key is missing or invalid
                    error: Unauthorized
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 403 Forbidden
                  value:
                    statusCode: 403
                    message: You do not have permission to access this resource
                    error: Forbidden
        '404':
          description: Agent not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 404 Not Found
                  value:
                    statusCode: 404
                    message: Agent not found
                    error: Not Found
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 500 Internal Server Error
                  value:
                    statusCode: 500
                    message: Internal server error
                    error: Internal Server Error
      security:
      - bearer: []
      summary: Delete Agent
      tags:
      - Agents
    get:
      description: Returns the agent with all versions. Each version includes `agent_functions`, `pronunciations`,
        and `postcall_analysis` embedded.
      operationId: getAgent
      parameters:
      - name: id
        required: true
        in: path
        description: Agent ID
        schema:
          example: agent_2g7Xy3tY53gRlp
          type: string
      responses:
        '200':
          description: Agent returned with all versions and embedded agent_functions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents'
              examples:
                success:
                  summary: Successful response
                  value:
                    id: agent_2g7Xy3tY53gRlp
                    folder_id: null
                    current_version_number: 1
                    timezone: Asia/Kolkata
                    agent_type: Single_Prompt_Agent
                    pipeline_type: Cascaded
                    webhook_id: null
                    current_version:
                      agent_id: agent_2g7Xy3tY53gRlp
                      version_number: 1
                      version_title: Version 1
                      title: Customer Support Agent
                      is_published: false
                      language_id: lang_en_in
                      voice_id: voice_abc123
                      llm_id: llm_A1B2C3D4E5F6G7
                      transcriber_id: trs_deepgram_nova_2
                      fallback_stt_enabled: true
                      stt_fallback_transcriber_id: trs_soniox
                      post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
                    versions:
                    - agent_id: agent_2g7Xy3tY53gRlp
                      version_number: 1
                      version_title: Version 1
                      title: Customer Support Agent
                      is_published: false
                      language_id: lang_en_in
                      voice_id: voice_abc123
                      llm_id: llm_A1B2C3D4E5F6G7
                      transcriber_id: trs_deepgram_nova_2
                      fallback_stt_enabled: true
                      stt_fallback_transcriber_id: trs_soniox
                      post_call_analysis_llm_id: llm_A1B2C3D4E5F6G7
        '400':
          description: Invalid agent ID format.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 400 Bad Request
                  value:
                    statusCode: 400
                    message: Invalid query parameters
                    error: Bad Request
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 401 Unauthorized
                  value:
                    statusCode: 401
                    message: API key is missing or invalid
                    error: Unauthorized
        '403':
          description: Forbidden - agent does not belong to your organization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 403 Forbidden
                  value:
                    statusCode: 403
                    message: You do not have permission to access this resource
                    error: Forbidden
        '404':
          description: Agent not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 404 Not Found
                  value:
                    statusCode: 404
                    message: Agent not found
                    error: Not Found
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 500 Internal Server Error
                  value:
                    statusCode: 500
                    message: Internal server error
                    error: Internal Server Error
      security:
      - bearer: []
      summary: Get Agent Details
      tags:
      - Agents
  /v1/batch-calls:
    post:
      description: Uploads a CSV or Excel leads file, creates a batch call, and enqueues outbound calls
        for all leads.
      operationId: createBatchCall
      parameters: []
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - file
              - title
              - agent_id
              properties:
                file:
                  type: string
                  format: binary
                  description: CSV or Excel file containing leads (max 10 MB)
                title:
                  type: string
                  example: Q3 Follow-up Batch
                  maxLength: 35
                  description: Batch title shown in the dashboard. Must be 35 characters or fewer.
                agent_id:
                  type: string
                  example: agent_abc123
                agent_version_number:
                  type: number
                  example: 1
                  description: Published agent version to use. Omit to use the agent's latest published
                    version.
                starts_at:
                  type: string
                  example: '2024-01-15T09:00:00Z'
                  description: ISO 8601 datetime - leave empty to start immediately
                ends_at:
                  type: string
                  example: '2024-01-15T18:00:00Z'
                calling_hours_start:
                  type: string
                  example: 09:00
                calling_hours_end:
                  type: string
                  example: '18:00'
            examples:
              request:
                summary: Request example
                value:
                  file: leads.csv
                  title: Q3 Follow-up Batch
                  agent_id: agent_abc123
                  agent_version_number: 1
      responses:
        '201':
          description: Batch call created and calls enqueued.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: batch_abc123
                  title:
                    type: string
                  total_records:
                    type: number
                    example: 250
                  status:
                    type: string
                    example: initiated
                  from_number:
                    type: string
                    nullable: true
                  warning:
                    type: object
                    description: Non-blocking scheduling warning returned when another running, waiting,
                      or nearby scheduled batch may delay this batch.
                    properties:
                      message:
                        type: string
                      conflicts:
                        type: array
                        items:
                          type: object
                          properties:
                            kind:
                              type: string
                              enum:
                              - running
                              - waiting
                              - scheduled
                            batch_name:
                              type: string
                            processed_leads:
                              type: number
                            total_leads:
                              type: number
                            starts_at:
                              type: string
                              format: date-time
              examples:
                success:
                  summary: Successful response
                  value:
                    id: batch_abc123
                    title: Q3 Follow-up Batch
                    total_records: 250
                    status: initiated
                    from_number: '+14155552671'
                    warning:
                      message: This batch was created, but your organization already has 1 running batch
                        ahead of it. Batches run one at a time per organization, so this batch may be
                        delayed.
                      conflicts:
                      - kind: running
                        batch_name: July renewals
                        processed_leads: 42
                        total_leads: 250
        '400':
          description: Invalid file or missing required fields, the resolved agent version is unpublished,
            or no outbound phone number is attached to that version.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 400 Bad Request
                  value:
                    statusCode: 400
                    message: The uploaded file must include a phone_number column
                    error: Bad Request
                titleTooLong:
                  summary: Title too long
                  value:
                    statusCode: 400
                    message: title must be 35 characters or fewer (received 42).
                    error: Bad Request
                unpublishedVersion:
                  summary: Agent version is still a draft
                  value:
                    statusCode: 400
                    message: Version 2 of agent agent_abc123 is a draft. Publish it before starting a
                      batch call.
                    error: Bad Request
        '401':
          description: Unauthorized - missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 401 Unauthorized
                  value:
                    statusCode: 401
                    message: API key is missing or invalid
                    error: Unauthorized
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 403 Forbidden
                  value:
                    statusCode: 403
                    message: Destination country or network prefix is not enabled for this workspace
                    error: Forbidden
        '404':
          description: Agent not found in the workspace, or the requested agent version does not exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                versionNotFound:
                  summary: Agent version not found
                  value:
                    statusCode: 404
                   

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