Windstream Holdings agents API

Agent state management

OpenAPI Specification

windstream-holdings-agents-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Windstream Enterprise Contact Center Services agents API
  description: The Windstream Enterprise Contact Center Services (CCS) API provides programmatic access to contact center operations, enabling developers to route calls, web chats, and text messages, manage agent states, configure tenants, and monitor queue activity. The REST API is complemented by a WebSocket interface for real-time event streaming.
  version: 2.0.0
  contact:
    name: Windstream Enterprise Developer Support
    url: https://api.solutions.uniti.com/
  termsOfService: https://www.windstreamenterprise.com/legal/
servers:
- url: https://{ccs_domain}/6/v2/api
  description: CCS REST API
  variables:
    ccs_domain:
      default: ccs.windstreamenterprise.com
      description: CCS domain hostname
tags:
- name: agents
  description: Agent state management
paths:
  /tenants/{tenantUuid}/presence-options:
    get:
      operationId: listPresenceOptions
      summary: List Presence Options
      description: Returns available presence/status options for agents in a tenant.
      tags:
      - agents
      parameters:
      - name: tenantUuid
        in: path
        required: true
        description: Tenant UUID
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: List of presence options
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PresenceOption'
  /agent-state:
    post:
      operationId: updateAgentState
      summary: Update Agent State
      description: Updates the current agent's presence state (e.g., available, busy, on break).
      tags:
      - agents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentStateUpdate'
      responses:
        '200':
          description: Agent state updated
  /extensions/{extensionUuid}/agent-state:
    get:
      operationId: getAgentState
      summary: Get Agent State
      description: Returns the current presence/state of a specific agent extension.
      tags:
      - agents
      parameters:
      - name: extensionUuid
        in: path
        required: true
        description: Extension UUID
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Agent state details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentState'
components:
  schemas:
    AgentState:
      type: object
      description: Current agent state/presence
      properties:
        extension_uuid:
          type: string
          description: Extension UUID
        state:
          type: string
          description: Current presence state
        available_for_calls:
          type: boolean
          description: Whether agent can receive calls
        updated_at:
          type: string
          format: date-time
          description: Timestamp of last state change
    AgentStateUpdate:
      type: object
      description: Agent state update request
      required:
      - state
      properties:
        state:
          type: string
          description: New presence state
        reason:
          type: string
          description: Reason for state change
    PresenceOption:
      type: object
      description: An agent presence/status option
      properties:
        id:
          type: string
          description: Presence option identifier
        name:
          type: string
          description: Display name (e.g., Available, Busy, On Break)
        available_for_calls:
          type: boolean
          description: Whether agent is available to receive calls in this state
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token authentication for CCS API