8x8

8x8 Agent status API

Manages and obtains the status for tenant agents

Operations 4

GET /tenants/{tenantId}/agentstatus/agents Obtain the status for tenant agents. Agents can be filtered by group. Pagination is currently not available. #
POST /tenants/{tenantId}/agentstatus/agents/bulk The bulk operation for setting the status for multiple agents. #
GET /tenants/{tenantId}/agentstatus/agents/{agentId} Obtains the status for a specific agent. #
PUT /tenants/{tenantId}/agentstatus/agents/{agentId} Sets the agent status for a specific agent. #

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/8x8-agent-status-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

8x8-agent-status-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1'
  title: Contact Center Agent status API
  description: "The 8x8 Contact Center Get/Set Agent Status API enables you to set an agent's status or availability in your contact center. You can set the status for a specific contact center agent or perform a bulk operation for setting the status for multiple agents. (e.g., ON_BREAK, WORK_OFFLINE). The available agent\n  status codes and types include the following -\n\n  * 0 UNKNOWN\n\n  * 1 LOGGED_OUT\n\n  * 2 LOGGED_IN\n\n  * 3 ON_BREAK\n\n  * 4 WAIT_TRANSACT\n\n  * 5 WORK_OFFLINE\n\n  * 6 TRANSACT_OFFERED\n\n  * 7 PROCESS_TRANSACT\n\n  * 8 POST_PROCESS\n\n  * 9 BUSY\n\n  * 10 DIRECT_CALL\n\n  * 11 ON_EMAIL \n\n\nThe Get/Set Agent Status API enables you to:\n* Obtain the query status for an agent or agents\n\n* Set the status for an agent or multiple agents\n\nThe data obtained from the Get/Set Agent Status API can be filtered by agent group.\n\nNote that pagination is currently not supported.\n\nThis API is not enabled by default. If you do not have access contact your 8x8 representative."
  contact:
    name: VCC Engineering Team
    email: vcc-dev@8x8.com
servers:
- description: NA30
  url: https://vcc-na30.8x8.com/api/v1/
- description: BC2
  url: https://odcc2.bell.ca/api/v1/
- description: NA6
  url: https://vcc-na6.8x8.com/api/v1/
- description: NA38
  url: https://vcc-na38.8x8.com/api/v1/
- description: EU7
  url: https://vcc-eu7.8x8.com/api/v1/
- description: NA39
  url: https://vcc-na39.8x8.com/api/v1/
- description: NA4
  url: https://vcc-na4.8x8.com/api/v1/
- description: EU10
  url: https://vcc-eu10.8x8.com/api/v1/
- description: NA17
  url: https://vcc-na17.8x8.com/api/v1/
- description: NA29
  url: https://vcc-na29.8x8.com/api/v1/
- description: NA14
  url: https://vcc-na14.8x8.com/api/v1/
- description: NA2
  url: https://vcc-na2.8x8.com/api/v1/
- description: EU3
  url: https://vcc-eu3.8x8.com/api/v1/
- description: NA3
  url: https://vcc-na3.8x8.com/api/v1/
- description: EU6
  url: https://vcc-eu6.8x8.com/api/v1/
- description: NA8
  url: https://vcc-na8.8x8.com/api/v1/
- description: NA13
  url: https://vcc-na13.8x8.com/api/v1/
- description: NA28
  url: https://vcc-na28.8x8.com/api/v1/
- description: NA1
  url: https://vcc-na1.8x8.com/api/v1/
- description: NA12
  url: https://vcc-na12.8x8.com/api/v1/
- description: NA9
  url: https://vcc-na9.8x8.com/api/v1/
- description: NA37
  url: https://vcc-na37.8x8.com/api/v1/
- description: EU4
  url: https://vcc-eu4.8x8.com/api/v1/
- description: NA16
  url: https://vcc-na16.8x8.com/api/v1/
- description: NA20
  url: https://vcc-na20.8x8.com/api/v1/
- description: EU2
  url: https://vcc-eu2.8x8.com/api/v1/
- description: AP1
  url: https://vcc-ap1.8x8.com/api/v1/
- description: CA2
  url: https://vcc-ca2.8x8.com/api/v1/
- description: NA19
  url: https://vcc-na19.8x8.com/api/v1/
- description: NA27
  url: https://vcc-na27.8x8.com/api/v1/
- description: EU11
  url: https://vcc-eu11.8x8.com/api/v1/
- description: AU1
  url: https://vcc-au1.8x8.com/api/v1/
- description: NA7
  url: https://vcc-na7.8x8.com/api/v1/
- description: NA11
  url: https://vcc-na11.8x8.com/api/v1/
- description: NA40
  url: https://vcc-na40.8x8.com/api/v1/
- description: NA10
  url: https://vcc-na10.8x8.com/api/v1/
- description: EU5
  url: https://vcc-eu5.8x8.com/api/v1/
- description: NA15
  url: https://vcc-na15.8x8.com/api/v1/
- description: NA18
  url: https://vcc-na18.8x8.com/api/v1/
- description: NA5
  url: https://vcc-na5.8x8.com/api/v1/
- description: EU12
  url: https://vcc-eu12.8x8.com/api/v1/
- description: CA1
  url: https://vcc-ca1.8x8.com/api/v1/
- description: EU9
  url: https://vcc-eu9.8x8.com/api/v1/
tags:
- name: Agent status
  description: 'Manages and obtains the status for tenant agents '
paths:
  /tenants/{tenantId}/agentstatus/agents:
    get:
      tags:
      - Agent status
      operationId: getagentsstatus
      summary: Obtain the status for tenant agents. Agents can be filtered by group. Pagination is currently not available.
      description: Obtain the status for tenant agents. Agents can be filtered by group. Pagination is currently not available.
      parameters:
      - $ref: '#/components/parameters/TenantId'
      - $ref: '#/components/parameters/GroupId'
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageIndex'
      security:
      - BasicAuth: []
      responses:
        '200':
          $ref: '#/components/responses/agent-statuses'
        '400':
          description: There was an error accepting the request.
        '401':
          description: Authentication or authorization failed for this request.
        '403':
          description: You are not authorized to access this tenant.
        '500':
          description: There was a server error.
        default:
          $ref: '#/components/responses/default'
  /tenants/{tenantId}/agentstatus/agents/bulk:
    post:
      tags:
      - Agent status
      operationId: setagentsstatuses
      summary: The bulk operation for setting the status for multiple agents.
      description: Setting the status for multiple agents at the same time.
      parameters:
      - $ref: '#/components/parameters/TenantId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentsStatusRequest'
      security:
      - BasicAuth: []
      responses:
        '207':
          $ref: '#/components/responses/agent-statuses-change-response'
        '400':
          description: There was an error accepting the request.
        '401':
          description: Authentication or authorization failed for this request.
        '403':
          description: You are not authorized to access this tenant.
        '500':
          description: There was a server error and your request was not accepted.
        default:
          $ref: '#/components/responses/default'
  /tenants/{tenantId}/agentstatus/agents/{agentId}:
    get:
      tags:
      - Agent status
      operationId: getagentstatus
      summary: Obtains the status for a specific agent.
      description: Obtains the status for a specific agent.
      parameters:
      - $ref: '#/components/parameters/TenantId'
      - $ref: '#/components/parameters/AgentId'
      security:
      - BasicAuth: []
      responses:
        '200':
          $ref: '#/components/responses/agent-status'
        '400':
          description: There was an error accepting the request.
        '401':
          description: Authentication or authorization failed for this request.
        '403':
          description: You are not authorized to access this tenant.
        '404':
          description: The agent does not exist.
        '500':
          description: There was a server error.
        default:
          $ref: '#/components/responses/default'
    put:
      tags:
      - Agent status
      operationId: setagentstatus
      summary: Sets the agent status for a specific agent.
      description: Sets the agent status for a specific agent.
      parameters:
      - $ref: '#/components/parameters/TenantId'
      - $ref: '#/components/parameters/AgentId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentStatusRequest'
      security:
      - BasicAuth: []
      responses:
        '200':
          description: The request was successful.
        '400':
          description: There was an error accepting the request.
        '401':
          description: Authentication or authorization failed for this request.
        '403':
          description: You are not authorized to access this tenant.
        '404':
          description: The agent does not exist.
        '500':
          description: There was a server error.
        default:
          $ref: '#/components/responses/default'
components:
  schemas:
    Problem:
      type: object
      properties:
        type:
          type: string
          format: uri
          description: 'An absolute URI that identifies the problem type.  When dereferenced,

            it provides human-readable documentation for the problem type.

            (e.g., using HTML).

            '
          default: about:blank
        title:
          type: string
          description: 'A short, summary of the problem type. Written in English and readable

            for engineers (usually not suited for non-technical stakeholders and

            not localized).

            '
          example: Service Unavailable
        status:
          type: integer
          format: int32
          description: 'The HTTP status code generated by the origin server for this occurrence

            of the problem.

            '
          minimum: 100
          example: 503
          exclusiveMaximum: 600
        detail:
          type: string
          description: 'A human readable explanation specific to this occurrence of the

            problem.

            '
          example: Connection to database timed out
        instance:
          type: string
          format: uri
          description: 'An absolute URI that identifies the specific occurrence of the problem.

            It may or may not yield further information if dereferenced.

            '
    AgentStatusChange:
      type: object
      description: The agent status change.
      properties:
        agent-id:
          description: The agent ID.
          type: string
          example: agb7CaTIXvQPWmPKmTu1rJjw
        change-status:
          description: The status code for each entry in the bulk request.
          type: number
          example: 400
        reason:
          description: The reason for the status code.
          type: string
          example: The status code list id is invalid.
    AgentStatusRequest:
      type: object
      description: The agent status request.
      properties:
        agent-status:
          description: The agent's desired status ID.
          type: number
          example: 9
          enum:
          - 1
          - 3
          - 4
          - 5
        status-code-list-id:
          description: The current status list code ID for the agent.
          type: number
          example: 5
        status-code-item-id:
          description: The current status code ID for the agent.
          type: number
          example: 1
        status-code-item-short-code:
          description: The agent status short code.
          type: string
          example: St 1
      required:
      - agent-status
    AgentStatusChangeList:
      type: object
      description: The response containing the agent status list.
      properties:
        data:
          type: array
          description: The agent status list.
          items:
            oneOf:
            - $ref: '#/components/schemas/AgentStatusChange'
    AgentsStatusRequest:
      type: object
      description: The agent status request.
      properties:
        agents:
          type: array
          description: The list of agents statuses to set.
          items:
            oneOf:
            - $ref: '#/components/schemas/AgentStatusRequestEx'
          maxItems: 100
    AgentsStatuses:
      type: object
      description: The response containing the agent status list.
      properties:
        data:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/AgentStatus'
        page:
          $ref: '#/components/schemas/PageResult'
    PageResult:
      type: object
      description: The default page result format.
      properties:
        pageSize:
          type: number
          example: 10
          maximum: 500
          description: The page size of the pagination.
        totalElements:
          type: number
          example: 134
          description: The total number of elements available.
        totalPages:
          type: number
          example: 14
          description: The number of pages necessary for splitting the totalElements into pages of pageSize.
        pageIndex:
          type: number
          example: 0
          description: An 0-based index for numbering the pages.
    AgentStatusRequestEx:
      allOf:
      - $ref: '#/components/schemas/AgentStatusRequest'
      - type: object
        required:
        - agent-id
        properties:
          agent-id:
            description: The agent ID.
            type: string
            example: agb7CaTIXvQPWmPKmTu1rJjw
    AgentStatus:
      type: object
      description: The agent status.
      properties:
        agent-id:
          description: The agent identification.
          type: string
          example: agb7CaTIXvQPWmPKmTu1rJjw
        name:
          description: The agent name composed from the agent's first and last name.
          type: string
          example: John Smith
        agent-status:
          description: The agent's current status ID.
          type: number
          example: 9
          enum:
          - 0
          - 1
          - 2
          - 3
          - 4
          - 5
          - 6
          - 7
          - 8
          - 9
          - 10
          - 11
        agent-sub-status:
          description: The agent sub-status that can be used for chat. Values can be 'none' or 'stopnew'
          type: string
          example: none
        status-code-list-id:
          description: The agent current status list code ID.
          type: number
          example: 5
        status-code-item-id:
          description: The agent current status code ID.
          type: number
          example: 1
        status-code-item-short-code:
          description: The agent status short code.
          type: string
          example: St 1
  parameters:
    AgentId:
      name: agentId
      in: path
      description: The agent identification.
      required: true
      schema:
        type: string
        format: string
      example: agb7CaTIXvQPWmPKmTu1rJjw
    TenantId:
      name: tenantId
      in: path
      description: The tenant's unique name or identification.
      required: true
      schema:
        type: string
        format: string
      example: wavecell
    PageIndex:
      name: pageIndex
      in: query
      description: Specifies the page index of the returned paginated data.
      required: false
      example: 0
      schema:
        type: number
    PageSize:
      name: pageSize
      in: query
      description: Specifies the page size of the returned paginated data.
      required: false
      example: 100
      schema:
        type: number
    GroupId:
      name: groupId
      in: query
      description: The group identification. If the groupId is provided in the request, the response is filtered.
      required: false
      schema:
        type: string
        format: string
      example: 100
  responses:
    default:
      description: An error has occurred - see the status code and problem object for more information.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Problem'
    agent-status:
      description: The agent status response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AgentStatus'
    agent-statuses:
      description: The agents statuses response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AgentsStatuses'
    agent-statuses-change-response:
      description: The agent's status change response. Check the status code for each entry in the response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AgentStatusChangeList'
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
      description: The username is the tenantId and the password is the VCC action-token. These values are used for the Agent Status API.
x-readme:
  explorer-enabled: true
  proxy-enabled: true
  samples-enabled: true