This page was last edited on February 15, 2024, at 19:11.
Comments or questions about this documentation? Contact us for support!
This is part of the API Basics section of the Web Services API.
The Services resource provides a list of the services available in the system as well as their statuses and any information that is necessary to interact with the service (for example, a public SIP port for a "Voice" service). These services represent various aspects of Web Services that (in most cases) correspond to internal Genesys servers. For instance, each "Voice" service corresponds to a TServer, each "Reporting" service corresponds to a StatServer, and so on. A UI application can use this information to draw portions of the screen based on the status of a specific service. For instance, if the Provisioning service is "read only" the UI should disable all write operations but allow reading of provisioning data.
The following operations are available for /services:
Operation | Description | Permissions |
---|---|---|
GET | Returns a list of service URIs or actual service resources if the fields parameter is specified. The list is populated based on the features currently enabled for the contact center.
|
|
The following operations are available for /services/{id}:
Operation | Description | Permissions |
---|---|---|
GET | Returns information about the specified service. |
|
The following attributes are currently available for each service resource:
Attribute | Type | Description | Access | Applies To |
---|---|---|---|---|
id | String | A unique string identifying the service | GET | All Services |
name | String | The service name. This will be equal to the name of the corresponding server's application object in Configuration Server. Note that in case there is a primary/backup pair, the primary server's application name will be used regardless of which instance is currently running. For the "Provisioning" service, the value will always be set to Provisioning. | GET | All Services |
type | String | One of the following:
Provisioning (CME + Cassandra) | Voice (T-Server) | Reporting (Stat Server) | Media (Interaction Server) |
GET | All Services |
state | String | The service's current state. Possible values are:
Active | Inactive | ReadOnly (where applicable) |
GET | All Services |
The client application can subscribe to the topic /notifications/services in order to receive service state change notifications. The following attributes will be present in a service state change notification:
Attribute | Value Type | Description |
---|---|---|
messageType | String | Will always be ServiceStateChangeMessage |
service | Service Resource | The service resource for which the state has been changed |
GET /services?fields=* { "statusCode": 0, "services": [{ "id": "..", "name": "Provisioning", "type": "Provisioning", "state": "Active" }, { "id": "..", "name": "SIPS1", "type": "Voice", "state": "Active" }, { "id": "..", "name": "SIPS2", "type": "Voice", "state": "Active" }, }
GET /services/<service_id> { "statusCode": 0, "service": [{ "id": <service_id>, "name": "Provisioning", "type": "Provisioning", "state": "Active" } }