Windstream Holdings tenants API
Tenant management and configuration
Documentation
Documentation
https://api.solutions.uniti.com/voice.html
Documentation
https://api.solutions.uniti.com/ccs.html
Tenant management and configuration
openapi: 3.0.3
info:
title: Windstream Enterprise Contact Center Services agents tenants 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: tenants
description: Tenant management and configuration
paths:
/tenants:
get:
operationId: listTenants
summary: List Tenants
description: Returns a list of all tenants managed by the contact center.
tags:
- tenants
responses:
'200':
description: List of tenants
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Tenant'
/tenants/{tenantUuid}:
get:
operationId: getTenant
summary: Get Tenant Details
description: Returns detailed configuration for a specific tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
responses:
'200':
description: Tenant details
content:
application/json:
schema:
$ref: '#/components/schemas/Tenant'
'404':
description: Tenant not found
post:
operationId: updateTenantProducts
summary: Update Tenant Products
description: Adds or removes product assignments for a tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TenantProductUpdate'
responses:
'200':
description: Products updated
put:
operationId: updateTenantLimits
summary: Update Tenant Limits
description: Updates usage limits and license counts for a tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TenantLimitsUpdate'
responses:
'200':
description: Tenant limits updated
/tenants/{tenantUuid}/roles:
get:
operationId: listTenantRoles
summary: List Tenant Roles
description: Returns all roles configured for a specific tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
responses:
'200':
description: List of tenant roles
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Role'
/tenants/{tenantUuid}/acds:
get:
operationId: listTenantACDs
summary: List Tenant ACDs
description: Returns all Automatic Call Distributors (ACDs/queues) for a tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
responses:
'200':
description: List of ACDs
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ACD'
/tenants/{tenantUuid}/presence-options:
get:
operationId: listPresenceOptions
summary: List Presence Options
description: Returns available presence/status options for agents in a tenant.
tags:
- tenants
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'
/tenants/{tenantUuid}/extensions:
get:
operationId: listTenantExtensions
summary: List Tenant Extensions
description: Returns all extensions configured for a specific tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
responses:
'200':
description: List of extensions
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Extension'
/tenants/{tenantUuid}/extensions/{extensionUuid}:
put:
operationId: updateTenantExtension
summary: Update Tenant Extension
description: Updates configuration for a specific extension within a tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
- name: extensionUuid
in: path
required: true
description: Extension UUID
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ExtensionUpdate'
responses:
'200':
description: Extension updated
/tenants/{tenantUuid}/text-count:
get:
operationId: getTextMessageCount
summary: Get Text Message Count
description: Returns the SMS/MMS message count for a tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
responses:
'200':
description: SMS/MMS count
content:
application/json:
schema:
$ref: '#/components/schemas/TextCount'
post:
operationId: resetTextMessageCount
summary: Reset Text Message Count
description: Resets the SMS/MMS message count for a tenant.
tags:
- tenants
parameters:
- name: tenantUuid
in: path
required: true
description: Tenant UUID
schema:
type: string
format: uuid
responses:
'200':
description: Count reset successfully
components:
schemas:
TenantLimitsUpdate:
type: object
description: Request to update tenant limits
properties:
max_agents:
type: integer
description: New maximum agent count
max_calls:
type: integer
description: New maximum concurrent calls
sms_limit:
type: integer
description: SMS message limit
Role:
type: object
description: A role with associated permissions
properties:
id:
type: string
description: Role identifier
name:
type: string
description: Role name
enum:
- API
- Agent Control
- Call Control
- Agent Events
- Call Events
- Inbound Queue Events
description:
type: string
description: Role description
Tenant:
type: object
description: A contact center tenant configuration
properties:
uuid:
type: string
format: uuid
description: Tenant UUID
name:
type: string
description: Tenant name
status:
type: string
description: Tenant status
enum:
- active
- inactive
- suspended
max_agents:
type: integer
description: Maximum number of concurrent agents
max_calls:
type: integer
description: Maximum concurrent calls
ExtensionUpdate:
type: object
description: Extension update request
properties:
name:
type: string
description: New display name
role:
type: string
description: Updated role assignment
TextCount:
type: object
description: SMS/MMS message count
properties:
sms_count:
type: integer
description: Number of SMS messages sent
mms_count:
type: integer
description: Number of MMS messages sent
period_start:
type: string
format: date-time
description: Start of the counting period
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
Extension:
type: object
description: A contact center extension
properties:
uuid:
type: string
format: uuid
description: Extension UUID
number:
type: string
description: Extension number
name:
type: string
description: Display name
tenant_uuid:
type: string
description: Tenant UUID
ACD:
type: object
description: An Automatic Call Distributor (queue)
properties:
id:
type: string
description: ACD identifier
name:
type: string
description: Queue name
tenant_uuid:
type: string
description: Tenant UUID
max_queue_length:
type: integer
description: Maximum number of calls in queue
current_queue_length:
type: integer
description: Current number of calls waiting
agents_available:
type: integer
description: Number of available agents
TenantProductUpdate:
type: object
description: Request to update tenant product assignments
properties:
add:
type: array
items:
type: string
description: Product IDs to add
remove:
type: array
items:
type: string
description: Product IDs to remove
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: Bearer token authentication for CCS API