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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/nice:nice-stations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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
openapi: 3.2.0
info:
title: Nice Stations API
version: v1
description: 'Operations tagged Stations across 2 of this provider''s published API definitions: nice-admin-stations.json, nice-admin-stations-openapi.yml. Each path carries the servers of the definition it was published in.'
tags:
- name: Stations
description: Station Management
paths:
/stations:
get:
tags:
- Stations
summary: Get the list of stations paginated
description: This API gets the list of stations paginated
operationId: get-stations
parameters:
- name: searchString
in: query
description: Used to filter results to objects with the value in key fields
schema:
type: string
required: false
- name: fields
in: query
description: Comma separated list of elements to return in response
schema:
type: string
required: false
- name: skip
in: query
description: Number of records to skip in the results
schema:
type: integer
required: false
- name: top
in: query
description: Number of records to return in the results
schema:
type: integer
required: false
- name: orderBy
in: query
description: Values used to order results before paginating them. Can also specify "asc" or "desc" to specify direction for example "field1 asc,field2 desc,...". Default is asc
schema:
type: string
required: false
- name: isActive
in: query
description: Filter results based on status
schema:
type: boolean
required: false
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
businessUnitId:
type: integer
description: Id of business unit
totalRecords:
type: integer
description: total records obtained
activeStationsCount:
type: integer
description: Total of active stations
activeStationsLimit:
type: integer
description: Limit of stations to be created
stations:
type: array
items:
type: object
properties:
id:
type: integer
description: ID of the station
name:
type: string
description: Name of the station
phoneNumber:
type: string
description: PhoneNumber of the station
callerId:
type: string
description: Caller id of the station
isActive:
type: boolean
description: Status of the station
stationProfileId:
type: integer
description: ID of the station profile
stationProfileName:
type: string
description: Name of the station profile
'400':
description: InvalidParameters, InvalidFieldsList
'401':
description: InvalidSecurityUser
'403':
description: Forbidden
'500':
description: ServiceException
post:
tags:
- Stations
summary: Create an station
description: This API creates a new station
operationId: create-station
requestBody:
content:
application/json:
schema:
type: object
properties:
stationName:
type: string
description: The name of the station
phoneNumber:
type: string
description: phoneNumber of the station
callerId:
type: string
description: caller identifier of the station
stationProfileId:
type: integer
description: station profile identifier of the station
isActive:
type: boolean
description: true if the station is active
notes:
type: string
description: Notes of the station
emailRefusalTimeout:
type: integer
description: emailRefusalTimeout of the station
documentRefusalTimeout:
type: integer
description: documentRefusalTimeout of the station
chatRefusalTimeout:
type: integer
description: chatRefusalTimeout of the station
phoneCallRefusalTimeout:
type: integer
description: phoneCallRefusalTimeout of the station
voiceMailRefusalTimeout:
type: integer
description: voiceMailRefusalTimeout of the station
workItemRefusalTimeout:
type: integer
description: workItemRefusalTimeout of the station
machineIdentifier:
type: string
description: machineIdentifier IP of the station
required:
- stationName
- phoneNumber
- callerId
- stationProfileId
- isActive
required: true
description: Request payload to create a new station
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
id:
type: integer
description: Id of the station created
activeStationCount:
type: integer
description: All active stations from the BU
stationLimit:
type: integer
description: Limit of stations that are able to create
'400':
description: StationLimitReached, PhoneNumberInUseByActiveStation, InvalidStationName, InvalidCharacterStationName, InvalidRangeStationName, InvalidPhoneNumber, InvalidPhoneNumberFormat, InvalidPhoneNumberRange, InvalidCallerId, InvalidCallerIdRange, InvalidCallerIdFormat, InvalidNotesRange, InvalidStationProfileId, InvalidEmailRefusalTimeout, InvalidDocumentRefusalTimeout, InvalidChatRefusalTimeout, InvalidPhoneCallRefusalTimeout, InvalidVoiceMailRefusalTimeout, InvalidWorkItemRefusalTimeout, InvalidEmailRefusalTimeoutActivation, InvalidDocumentRefusalTimeoutActivation, InvalidChatRefusalTimeoutActivation, InvalidPhoneCallRefusalTimeoutActivation, InvalidVoiceMailRefusalTimeoutActivation, InvalidWorkItemRefusalTimeoutActivation, InvalidMachineIdentifier,
'401':
description: Unauthorized
'403':
description: Invalid Permissions
'500':
description: Something unexpected happened
/stations/{stationId}:
get:
tags:
- Stations
summary: Get an station detail by id
description: This API gets an station detail by id
operationId: get-station-by-id
parameters:
- name: stationId
in: path
required: true
description: The ID of the station to be obtained
schema:
type: integer
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
stationId:
type: integer
description: ID of the station
stationName:
type: string
description: Name of the station
phoneNumber:
type: string
description: Phone number associated with station
callerId:
type: string
description: Caller ID associated with station.
stationProfileId:
type: integer
description: ID of station profile related to station
stationProfileName:
type: string
description: Name of station profile related to station
notes:
type: string
description: Notes of the hour of operation
isActive:
type: boolean
description: Shows if station is active or not.
emailRefusalTimeout:
type: integer
description: Timeout to refuse an email.
documentRefusalTimeout:
type: integer
description: Timeout to refuse a document
chatRefusalTimeout:
type: integer
description: Timeout to refuse a chat
phoneCallRefusalTimeout:
type: integer
description: Timeout to refuse a phone call.
voiceMailRefusalTimeout:
type: integer
description: Timeout to refuse a voice mail
workItemRefusalTimeout:
type: integer
description: Timeout to refuse a work item
machineIdentifier:
type: string
description: IP of the machine.
'400':
description: InvalidStationId, NotFoundStationId
'401':
description: Unauthorized
'403':
description: Invalid Permissions
'500':
description: Something unexpected happened
put:
tags:
- Stations
summary: Update an station
description: This API updates an station
operationId: update-station
parameters:
- name: stationId
in: path
required: true
description: The ID of the station to be updated
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
stationName:
type: string
description: The name of the station
phoneNumber:
type: string
description: of the station
callerId:
type: string
description: caller identifier of the station
stationProfileId:
type: integer
description: station profile identifier of the station
isActive:
type: boolean
description: true if the station is active
notes:
type: string
description: Notes of the station
emailRefusalTimeout:
type: integer
description: emailRefusalTimeout of the station
documentRefusalTimeout:
type: integer
description: documentRefusalTimeout of the station
chatRefusalTimeout:
type: integer
description: chatRefusalTimeout of the station
phoneCallRefusalTimeout:
type: integer
description: phoneCallRefusalTimeout of the station
voiceMailRefusalTimeout:
type: integer
description: voiceMailRefusalTimeout of the station
workItemRefusalTimeout:
type: integer
description: workItemRefusalTimeout of the station
machineIdentifier:
type: string
description: machineIdentifier IP of the station
required:
- stationName
- phoneNumber
- callerId
- stationProfileId
- isActive
required: true
description: Request payload to update an station
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
activeStationCount:
type: integer
description: All active stations from the BU
stationLimit:
type: integer
description: Limit of stations that are able to create
'400':
description: StationLimitReached, PhoneNumberInUseByActiveStation, InvalidStationName, InvalidCharacterStationName, InvalidRangeStationName, InvalidPhoneNumber, InvalidPhoneNumberFormat, InvalidPhoneNumberRange, InvalidCallerId, InvalidCallerIdRange, InvalidCallerIdFormat, InvalidNotesRange, InvalidStationProfileId, InvalidEmailRefusalTimeout, InvalidDocumentRefusalTimeout, InvalidChatRefusalTimeout, InvalidPhoneCallRefusalTimeout, InvalidVoiceMailRefusalTimeout, InvalidWorkItemRefusalTimeout, InvalidEmailRefusalTimeoutActivation, InvalidDocumentRefusalTimeoutActivation, InvalidChatRefusalTimeoutActivation, InvalidPhoneCallRefusalTimeoutActivation, InvalidVoiceMailRefusalTimeoutActivation, InvalidWorkItemRefusalTimeoutActivation, InvalidMachineIdentifier,
'401':
description: InvalidSecurityUser
'403':
description: Forbidden
'500':
description: ServiceException
/stations/{stationId}/audit-history:
get:
tags:
- Stations
summary: Get station audit history paginated
description: This API gets the station audit history
operationId: get-stations-audit-history
parameters:
- name: stationId
in: path
required: true
description: The ID of the station
schema:
type: integer
- name: searchString
in: query
description: Used to filter results to objects with the value in key fields
schema:
type: string
required: false
- name: fields
in: query
description: Comma separated list of elements to return in response
schema:
type: string
required: false
- name: skip
in: query
description: Number of records to skip in the results
schema:
type: integer
required: false
- name: top
in: query
description: Number of records to return in the results
schema:
type: integer
required: false
- name: orderBy
in: query
description: Values used to order results before paginating them. Can also specify "asc" or "desc" to specify direction for example "field1 asc,field2 desc,...". Default is asc
schema:
type: string
required: false
- name: startDate
in: query
description: Init date to search auditHistory
schema:
type: string
required: false
- name: endDate
in: query
description: End date to search auditHistory
schema:
type: string
required: false
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
businessUnitId:
type: integer
description: Id of business unit
totalRecords:
type: integer
description: total records obtained
modifiedDate:
type: string
description: Modified date
createdDate:
type: string
description: Date of creation
modifiedBy:
type: string
description: Modified by user
createdBy:
type: string
description: Created by user
auditHistoryEntries:
type: array
items:
type: object
properties:
auditHistoryId:
type: integer
description: ID of the audit history
columnName:
type: string
description: Name of the column of the Audit history
newValue:
type: string
description: New value assigned to the column name
oldValue:
type: string
description: Old value assigned to the column name
date:
type: string
description: Date of the registration in the audit history
modifiedBy:
type: integer
description: ID of the user who has modified the register
modifiedByName:
type: string
description: Name of the user who has modified the register
'400':
description: InvalidStationId, NotFoundStationId, InvalidParameters, InvalidFieldsList
'401':
description: InvalidSecurityUser
'403':
description: Forbidden
'500':
description: ServiceException
/stations/{stationId}/login-history:
get:
tags:
- Stations
summary: Get station login history paginated
description: This API get the station login history
operationId: get-stations-login-history
parameters:
- name: stationId
in: path
required: true
description: The ID of the station to be updated
schema:
type: integer
- name: searchString
in: query
description: Used to filter results to objects with the value in key fields
schema:
type: string
required: false
- name: fields
in: query
description: Comma separated list of elements to return in response
schema:
type: string
required: false
- name: skip
in: query
description: Number of records to skip in the results
schema:
type: integer
required: false
- name: top
in: query
description: Number of records to return in the results
schema:
type: integer
required: false
- name: orderBy
in: query
description: Values used to order results before paginating them. Can also specify "asc" or "desc" to specify direction for example "field1 asc,field2 desc,...". Default is asc
schema:
type: string
required: false
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
businessUnitId:
type: integer
description: Id of business unit
totalRecords:
type: integer
description: total records obtained
loginHistoryEntries:
type: array
items:
type: object
properties:
agentNo:
type: integer
description: ID the agent
agentName:
type: string
description: Name of the agent
PhoneNo:
type: string
description: PhoneNumber of the agent
callerId:
type: string
description: Caller id of the agent
loginDate:
type: string
description: Login date of the agent
'400':
description: InvalidStationId, NotFoundStationId, InvalidParameters, InvalidFieldsList
'401':
description: InvalidSecurityUser
'403':
description: Forbidden
'500':
description: ServiceException
/stations/{stationId}/status:
patch:
tags:
- Stations
summary: Update an station status
description: This API updates an station status
operationId: update-station-status
parameters:
- name: stationId
in: path
required: true
description: The ID of the station to be updated
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
isActive:
type: boolean
description: true if the station is active
required:
- isActive
required: true
description: Request payload to update an station status
responses:
'200':
description: Success
'400':
description: InvalidStationId, NotFoundStationId, StationLimitReached, PhoneNumberInUseByActiveStation
'401':
description: InvalidSecurityUser
'403':
description: InvalidPermissions
'500':
description: ServiceException
x-refined-from:
- nice-admin-stations.json
- nice-admin-stations-openapi.yml