DialNexa Calls API

The Calls API from DialNexa — 2 operation(s) for calls.

Operations 3

POST /v1/calls Create Call #
GET /v1/calls List Calls #
GET /v1/calls/{id} Get Call Details #

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-calls-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

dialnexa-calls-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DialNexa Calls 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: Calls
paths:
  /v1/calls:
    post:
      description: Schedules a single outbound call. The call is queued and initiated when resources are available.
      operationId: createCall
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateCallRequest'
            examples:
              request:
                summary: Create an outbound call
                value:
                  agent_id: agent_2g7Xy3tY53gRlp
                  phone_number: '+919876543210'
                  agent_version_number: 1
                  metadata: {}
      responses:
        '201':
          description: Call created and queued successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateCallResponse'
              examples:
                success:
                  summary: Successful response
                  value:
                    id: call_abc123
                    to_phone_number: '+919876543210'
                    agent_id: agent_2g7Xy3tY53gRlp
                    agent_version_number: 1
        '400':
          description: Invalid request body - missing required fields or validation error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 400 Bad Request
                  value:
                    statusCode: 400
                    message: phone_number must be a valid E.164 phone number
                    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
        '402':
          description: Payment required - insufficient billing wallet balance.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 402 Payment Required
                  value:
                    statusCode: 402
                    message: Insufficient billing wallet balance
                    error: Payment Required
        '403':
          description: Forbidden - KYC not verified or API key does not have access.
          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 or phone number not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 404 Not Found
                  value:
                    statusCode: 404
                    message: Agent or phone number 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: Create Call
      tags:
      - Calls
    get:
      operationId: listCalls
      parameters:
      - name: agent_id
        required: false
        in: query
        description: Filter by agent ID(s) - can be a single ID or comma-separated list (e.g., 1,2,3)
        schema:
          type: string
      - name: call_id
        required: false
        in: query
        description: Filter by call ID - can be a single ID or comma-separated list (e.g., call_abc,call_def)
        schema:
          type: string
      - name: batch_call_id
        required: false
        in: query
        description: Filter by batch call ID - can be a single ID or comma-separated list (e.g., batch_abc,batch_def)
        schema:
          type: string
      - name: from
        required: false
        in: query
        description: Filter by sender phone number
        schema:
          type: string
      - name: to
        required: false
        in: query
        description: Filter by recipient phone number
        schema:
          type: string
      - name: type
        required: false
        in: query
        description: Filter by call type(s) - can be a single value or comma-separated list
        schema:
          type: string
          enum:
          - phone
          - web
      - name: call_direction
        required: false
        in: query
        description: Filter by call direction(s) - can be a single value or comma-separated list
        schema:
          type: string
          enum:
          - inbound
          - outbound
      - name: latency_min
        required: false
        in: query
        description: Filter by minimum latency (in milliseconds)
        schema:
          type: number
      - name: latency_max
        required: false
        in: query
        description: Filter by maximum latency (in milliseconds)
        schema:
          type: number
      - name: agent_version_id
        required: false
        in: query
        description: Filter by agent version ID(s) - can be a single ID or comma-separated list (e.g., 1,2,3)
        schema:
          type: string
      - name: agent_version_name
        required: false
        in: query
        description: Search by agent version name (partial match, case-insensitive)
        schema:
          type: string
      - name: sentiment
        required: false
        in: query
        description: Filter by sentiment(s) - can be a single value or comma-separated list
        schema:
          type: string
          enum:
          - positive
          - neutral
          - negative
          - unknown
      - name: start_date
        required: false
        in: query
        description: Filter by start date (ISO format)
        schema:
          type: string
      - name: end_date
        required: false
        in: query
        description: Filter by end date (ISO format)
        schema:
          type: string
      - name: duration_greater_than
        required: false
        in: query
        description: Filter by minimum call duration (in milliseconds)
        schema:
          type: number
      - name: duration_less_than
        required: false
        in: query
        description: Filter by maximum call duration (in milliseconds)
        schema:
          type: number
      - name: duration_min
        required: false
        in: query
        description: Filter by minimum duration range (in milliseconds)
        schema:
          type: number
      - name: duration_max
        required: false
        in: query
        description: Filter by maximum duration range (in milliseconds)
        schema:
          type: number
      - name: page
        required: false
        in: query
        description: Page number (starts from 1)
        schema:
          type: string
      - name: limit
        required: false
        in: query
        description: 'Number of records per page (min: 1, default: 20, max: 200)'
        schema:
          type: string
      - name: created_at
        required: false
        in: query
        description: Sort by created_at (asc or desc)
        schema:
          type: string
          enum:
          - asc
          - desc
      - name: duration
        required: false
        in: query
        description: Sort by duration (asc or desc)
        schema:
          type: string
          enum:
          - asc
          - desc
      - name: status
        required: false
        in: query
        description: Filter by call status(es) - can be a single status or comma-separated list
        schema:
          type: string
      - name: export
        required: false
        in: query
        description: Set to true to export all data without pagination
        schema:
          type: boolean
      - name: end_reason
        required: false
        in: query
        description: Filter by end/hangup reason - exact match; comma-separate multiple values for OR filtering
        schema:
          type: string
      - name: columns
        required: false
        in: query
        description: 'Export only: comma-separated column keys. Omitting both transcript and summary raises the single-export limit from 5000 to 10000 rows. Omit this parameter to include all columns.'
        schema:
          type: string
          example: duration,status,agent_name
      responses:
        '200':
          description: Calls returned successfully.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CallLogs'
              examples:
                success:
                  summary: Successful response
                  value:
                  - id: call_abc123
                    agent_id: agent_2g7Xy3tY53gRlp
                    to_number: '+919876543210'
                    from_number: '+14155552671'
                    status: initiated
                    call_direction: outbound
                    createdAt: '2026-07-03T10:30:00.000Z'
                    duration: 42
                    end_reason: completed
        '400':
          description: Bad request - 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.
          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
        '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 Calls
      tags:
      - Calls
      description: Returns calls for the authenticated workspace using the supplied filters, newest records first.
  /v1/calls/{id}:
    get:
      operationId: getCall
      parameters:
      - name: id
        required: true
        in: path
        description: Call ID
        schema:
          example: call_abc123
          type: string
      responses:
        '200':
          description: Call returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CallLogs'
              examples:
                success:
                  summary: Successful response
                  value:
                    id: call_abc123
                    agent_id: agent_2g7Xy3tY53gRlp
                    to_number: '+919876543210'
                    from_number: '+14155552671'
                    status: initiated
                    call_direction: outbound
                    createdAt: '2026-07-03T10:30:00.000Z'
                    duration: 42
                    transcript: 'Agent: Hello Priya. User: I am interested in the loan offer.'
                    summary: Customer asked for details about the loan offer.
        '400':
          description: Invalid call ID format.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 400 Bad Request
                  value:
                    statusCode: 400
                    message: Invalid call ID format
                    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 - call 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 call
                    error: Forbidden
        '404':
          description: Call not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                error:
                  summary: 404 Not Found
                  value:
                    statusCode: 404
                    message: Call 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 Call Details
      tags:
      - Calls
      description: Returns the current call record, including routing, status, transcript, and analysis fields when available.
components:
  schemas:
    CallLogs:
      type: object
      properties:
        id:
          type: string
          example: call_abc123
          description: Signed call ID
      required:
      - id
    ErrorResponse:
      type: object
      properties:
        statusCode:
          type: integer
          example: 400
        message:
          oneOf:
          - type: string
          - type: array
            items:
              type: string
          example: phone_number must be a valid E.164 phone number
        error:
          type: string
          example: Bad Request
      required:
      - statusCode
      - message
      - error
    CreateCallResponse:
      type: object
      properties:
        id:
          type: string
          example: call_mfgsn90vwcozgb
          description: Unique call ID for tracking. Use this ID to reference the call in other API endpoints.
        to_phone_number:
          type: string
          example: '+911234567890'
          description: The phone number that will receive the call.
        agent_id:
          type: string
          example: agent_mfgsn90vwcozgb
          description: The ID of the agent used for this call.
        agent_version_number:
          type: number
          example: 2
          description: The version number of the agent used for this call.
      required:
      - id
      - to_phone_number
      - agent_id
    CreateCallRequest:
      type: object
      properties:
        phone_number:
          type: string
          example: '+911234567890'
          description: 'Phone number to call (must include country code). Format: +[country code][phone number]'
        agent_id:
          type: string
          example: mgao6051Rk718Y
          description: Agent ID to use for the call. Must belong to the authenticated organization.
        agent_version_number:
          type: number
          example: 2
          description: Specific agent version number to use (optional). If provided, must be a published version. If not provided, will use the latest published version.
        metadata:
          type: object
          example:
            customer_name: John Doe
            customer_email: john@example.com
            priority: high
          description: Metadata for the call including customer information and any additional context. This data will be available during the call for personalization.
        notes:
          type: object
          example:
            customer_name: John Doe
            follow_up_required: true
            source: crm
          description: Optional notes stored on the call log. Must be a JSON object with at most 15 top-level keys.
      required:
      - phone_number
      - agent_id
      - metadata
  securitySchemes:
    bearer:
      scheme: bearer
      type: http