Nextiva Workitem Service API

Retrieve and control workitems — the unit of work in the Nextiva Contact Center — and the calls attached to them. Fetch workitems and workitem detail, bridge, hold, hang up, mute and unmute a call, send DTMF digits, change ACD priority, send an email response, and transfer a call to another agent or to an inbox queue.

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/workitem-service"
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

nextiva-workitem-service-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Workitem Service API
  version: 1.0.0
  description: API for managing and retrieving Workitem data and controlling call/interaction states.
servers:
- url: https://api.nextiva.com
  description: Nextiva API Base URL
tags:
- name: Workitems
  description: Operations related to Workitems (calls, messages, etc.)
- name: Call Management
  description: Actions specific to managing calls within workitems
- name: Recording
  description: Operations related to recording workitem interactions
- name: Transfers
  description: Operations for transferring workitems
- name: Conferences
  description: Operations for managing conferences
- name: Email
  description: Email-related workitem operations
- name: Surveys
  description: Survey management for workitems
- name: DTMF
  description: DTMF tone sending for calls
paths:
  /data/api/types/workitem:
    get:
      summary: Fetch all workitems
      operationId: fetchWorkitems
      tags:
      - Workitems
      description: 'Fetch all workitems. This endpoint retrieves a paginated list of workitems, allowing filtering by query
        string, rows, start index, and additional query parameters.

        '
      parameters:
      - in: query
        name: q
        schema:
          type: string
        description: Query string for filtering workitems.
      - in: query
        name: rows
        schema:
          type: integer
          format: int32
          default: 100
        description: Number of items per page.
      - in: query
        name: start
        schema:
          type: integer
          format: int32
          default: 0
        description: Pagination starting index.
      - in: query
        name: queryParams
        schema:
          type: object
          additionalProperties: true
        description: Additional query parameters for filtering.
      responses:
        '200':
          description: A paginated list of workitems.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FetchWorkitemsResponseBody'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/workitems/{id}:
    get:
      summary: Fetch a specific workitem by ID
      operationId: fetchWorkitemById
      tags:
      - Workitems
      description: 'Fetch a specific workitem by ID. This endpoint retrieves a single workitem by its unique identifier.

        '
      parameters:
      - in: path
        name: id
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem.
      responses:
        '200':
          description: The requested workitem object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        '404':
          description: Workitem not found.
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/calls/{workitemId}/bridge:
    post:
      summary: Activates a call for a given workitem (Bridge)
      operationId: activeWorkitemCall
      tags:
      - Call Management
      description: 'Activates a call for a given workitem. This endpoint makes a POST request to bridge (activate) a call
        for the specified workitem.

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem (call) to activate.
      responses:
        '200':
          description: Call successfully activated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/calls/{workitemId}/hold:
    post:
      summary: Puts a call on hold
      operationId: holdWorkitemCall
      tags:
      - Call Management
      description: 'Puts a call on hold for a given workitem. This endpoint sends a POST request to place the specified workitem
        (call) on hold.

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem (call) to put on hold.
      responses:
        '200':
          description: Call successfully put on hold.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/calls/{workitemId}/hangup:
    post:
      summary: Ends a call
      operationId: hangUpWorkitemCall
      tags:
      - Call Management
      description: 'Ends a call associated with a given workitem. This endpoint sends a POST request to terminate the specified
        workitem (call).

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem (call) to hang up.
      responses:
        '200':
          description: Call successfully ended.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/calls/{workitemId}/mute:
    post:
      summary: Mutes a call
      operationId: muteWorkitemCall
      tags:
      - Call Management
      description: 'Mutes a call associated with a given workitem. This endpoint sends a POST request to mute the specified
        workitem (call).

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem (call) to mute.
      responses:
        '200':
          description: Call successfully muted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      summary: Unmutes a call
      operationId: unMuteWorkitemCall
      tags:
      - Call Management
      description: 'Unmutes a call associated with a given workitem. This endpoint sends a DELETE request to unmute the specified
        workitem (call).

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem (call) to unmute.
      responses:
        '200':
          description: Call successfully unmuted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /workflows/api/workitems/{workitemId}/acd:
    post:
      summary: Change the priority of a workitem
      operationId: changeWorkitemPriority
      tags:
      - Workitems
      description: 'Changes the priority of a workitem. This endpoint updates the priority of a specific workitem within the
        ACD system.

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - priority
              properties:
                priority:
                  $ref: '#/components/schemas/WorkItemPriority'
      responses:
        '200':
          description: Workitem priority successfully changed.
          content:
            application/json:
              schema:
                type: object
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/workitems/{workitemId}/sendemailresponse:
    post:
      summary: Sends an email response for a workitem
      operationId: sendEmailResponse
      tags:
      - Email
      description: 'Sends an email response related to a specific workitem. This endpoint allows for responding to email-based
        workitems with a structured email.

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem associated with the email.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendEmailResponsePayload'
      responses:
        '200':
          description: Email response successfully sent.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/calls/{workitemId}/usertransfer/{userId}:
    post:
      summary: Transfers a workitem to another agent
      operationId: transferWorkitemToAgent
      tags:
      - Transfers
      description: 'Transfers a workitem (e.g., an active call) to another specified agent. This allows for routing work to
        the appropriate personnel.

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem to transfer.
      - in: path
        name: userId
        schema:
          type: string
        required: true
        description: Unique identifier of the target agent.
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransferToAgentPayload'
      responses:
        '200':
          description: Workitem successfully transferred to agent.
          content:
            application/json:
              schema:
                type: object
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/calls/{workitemId}/queuetransfer/{inboxId}:
    post:
      summary: Transfers a workitem to an inbox/queue
      operationId: transferWorkitemToInbox
      tags:
      - Transfers
      description: 'Transfers a workitem (e.g., an active call or message) to a specified inbox or queue. This is used for
        routing work to a group of agents or a specific processing queue.

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem to transfer.
      - in: path
        name: inboxId
        schema:
          type: string
        required: true
        description: Unique identifier of the target inbox/queue.
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransferToInboxPayload'
      responses:
        '200':
          description: Workitem successfully transferred to inbox/queue.
          content:
            application/json:
              schema:
                type: object
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /users/api/calls/{workitemId}/dtmf/{digit}:
    post:
      summary: Sends DTMF tones during a call
      operationId: sendDtmfTones
      tags:
      - DTMF
      description: 'Sends Dual-Tone Multi-Frequency (DTMF) tones during an active call associated with a workitem. This can
        be used for interacting with IVR systems or entering digits.

        '
      parameters:
      - in: path
        name: workitemId
        schema:
          type: string
        required: true
        description: Unique identifier of the workitem (call) to send DTMF tones to.
      - in: path
        name: digit
        schema:
          type: string
        required: true
        description: The DTMF digit(s) to send.
      responses:
        '200':
          description: DTMF tones sent successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workitem'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Workitem:
      type: object
      properties:
        _id:
          type: string
          description: Internal unique identifier (MongoDB ID).
        workitemId:
          type: string
          description: Public unique identifier for the workitem.
        state:
          type: string
          description: Current state of the workitem (e.g., active, hold, inqueue).
        channelType:
          type: string
          description: The communication channel (e.g., voice, chat, email).
        type:
          type: string
          description: The specific type of workitem (e.g., InboundCall, OutboundSMS).
        priority:
          type: integer
          description: Priority of the workitem (1-5).
        agentUsername:
          type: string
          description: Username of the assigned agent.
        createdAt:
          type: integer
          format: int64
          description: Unix timestamp (ms) when created.
        modifiedAt:
          type: integer
          format: int64
          description: Unix timestamp (ms) when last modified.
    PaginatedResponse:
      type: object
      properties:
        count:
          type: integer
          format: int32
          description: Number of objects in the current page.
        total:
          type: integer
          format: int32
          description: Total number of objects matching the criteria.
        objects:
          type: array
          items:
            $ref: '#/components/schemas/Workitem'
          description: Array of workitem objects.
    FetchWorkitemsResponseBody:
      allOf:
      - $ref: '#/components/schemas/PaginatedResponse'
      - type: object
        properties:
          objects:
            type: array
            items:
              $ref: '#/components/schemas/Workitem'
    WorkItemPriority:
      type: integer
      format: int32
      description: Priority level of a workitem (1-5, 5 being highest).
      enum:
      - 1
      - 2
      - 3
      - 4
      - 5
    WorkitemRecordingOption:
      type: string
      enum:
      - keepCurrent
      - startRecording
      - stopRecording
      description: Recording options for transfers.
    SendEmailResponsePayload:
      type: object
      required:
      - from
      - to
      - subject
      properties:
        bccAddresses:
          type: array
          items:
            type: string
          description: Email addresses to BCC.
        bodyParts:
          type: object
          description: Body parts of the email.
        ccAddresses:
          type: array
          items:
            type: string
          description: Email addresses to CC.
        createdAt:
          type: integer
          format: int64
          description: Creation timestamp.
        from:
          type: string
          format: email
          description: Sender's email address.
        subject:
          type: string
          description: Email subject.
        to:
          type: string
          format: email
          description: Recipient's email address.
        toAddresses:
          type: array
          items:
            type: string
          description: List of recipient email addresses.
    TransferToAgentPayload:
      type: object
      required:
      - userId
      - workitemId
      properties:
        eventName:
          type: string
          description: Name given to the transfer event.
        recording:
          $ref: '#/components/schemas/WorkitemRecordingOption'
        survey:
          type: object
          description: Survey data.
        userId:
          type: string
          description: The ID of the user (agent) to transfer the workitem to.
        workitemId:
          type: string
          description: The ID of the workitem to transfer.
    TransferToInboxPayload:
      type: object
      required:
      - inboxId
      - workitemId
      properties:
        eventName:
          type: string
          description: Name given to the transfer event.
        inboxId:
          type: string
          description: The ID of the target inbox/queue.
        recording:
          $ref: '#/components/schemas/WorkitemRecordingOption'
        ringAll:
          type: boolean
          description: Whether to ring all agents in the inbox.
        survey:
          type: object
          description: Survey data.
        workitemId:
          type: string
          description: The ID of the workitem to transfer.
    Error:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
security:
- bearerAuth: []