Voice API Overview
This document is intended for developers who want to create applications using the silhouette API. The silhouette API is a web service based on REST and WebSocket technologies that accepts and delivers content in JSON format. Application Developers can use any development platform capable of consuming the service.
The following typographical conventions are used in the documentation.
Bold text
Indicates GUI components, such as menu items and buttons.
Italic text
References titles of publications and is used for emphasis.
Monospace text
Indicates paths and filenames, and is used for code.
2 About this Document
The silhouette Public API integrates call management, status monitoring, and provisioning, and enables applications to receive asynchronous notification of call-related events. Applications can use it to make calls, answer calls, release calls and view the call details of active calls in silhouette. It allows applications to monitor the call and presence status of specific users by subscribing to receive call and presence status events.
The silhouette API is a RESTful hyperlinking API, supporting the following the HAL media type specification, combined with a WebSocket-based stream for reporting realtime call and presence events.
Public API Guide
The silhouette API provides public access, implemented as a web service following a REST/HATEOAS architectural style. Call and presence events are delivered via WebSockets.
An application using the silhouette API is expected to
provide authentication credentials with each request to the API
authenticate users connected to the application
populate the HTTP User-Agent header with a string identifying the client application
limit request rate to avoid exceeding limits
handle errors appropriately (interpret response)
Client applications using the silhouette API to manage calls are expected to
subscribe for required events
associate requests and events and manage the application view of call activity, and so forth
track call history, if required
not assume events will be received immediately (may be rate limited)
initiate and maintain connection to silhouette (for example, use a keep-alive to keep a WebSocket open to receive events)
request the current state of a silhouette account when it initially connects (if required). Events are only pushed to the applications as they occur.
The silhouette API entry point is https://<WebAdmin>/api. Accessing the silhouette API includes
The Public API is intended for use by client applications deployed in the customer premise. Applications access the Public API through the TOWS, using the existing WebAdmin IP address or FQDN.
See Architecture.
silhouette API security comprises
HTTP Basic Authentication (see https://en.wikipedia.org/wiki/ Basic_access_authentication) is used for authenticating silhouette API access. All REST requests and the WebSocket connection request must be authenticated individually (no sessions).
The credentials required in the HTTP Authorization header must be in the format of:
<username>:<password> Credentials
The silhouette API authenticates that the credentials specified in the HTTP Authentication header are those of a valid silhouette user. The username in the credentials must indicate the user’s tenant and extension. The password in the credentials are the user’s PIN.
The username of the credential must be in one of following formats:
<ext>@<tenant ID>
for example, 3266@315100001
<ext>@<tenant ID>.ID
<ext>@<tenant DID>.DID
Public API Guide<ext>@<tenant web login URL>.URI
for example, [email protected]
where DID, URI or ID are used as the domain type suffix and have to be in uppercase. Disabled users and users of inactive tenants are not permitted to use the API.
Authorization is per request and is based on the authority users have to access the API. Public API
In the following table, the Authority column indicates the permission set the user has for managing resources of the API. Each resource documents its specific Authority requirements for permitted operations.
Authorization Header contains
Authority
<ext>@<tenant ID> - where extension
corresponds to a TenantAdmin User
Tenant Admin Call Control User
<ext>@<tenant ID> - where extension
corresponds to a non-admin User
Non-admin Call Control User
Load control mechanisms ensure the following on the Public API:
WebSockets
maxIdleTimeout=3600000 milliseconds (1 hour). Without any data transfer, the WebSocket connection times out after 1 hour.
maxConnectionCount=4000. The maximum number of public WebSocket connections.
maxConnectionPerClient=1. The maximum number of concurrent processing threads per client. Per client means per user+client IP address.
blockAfterFailedLoginCount=3. Client is locked out after 3 failed login attempts.
blockFailedLoginWithin=1800000 milliseconds (30 minutes). After 3 failed login attempts within 30 minutes, the client is locked out.
blockPeriod=3600000 milliseconds (1 hour). After 3 failed attempts within 30 minutes, the client is locked out for an hour.
For REST service calls
maxThreads=100. The maximum number of concurrent requests from all clients that the server accepts.
maxConnectionPerClient=3. The maximum number of concurrent processing threads per client. Per client means per user+client IP address.
busyDelay=3000 milliseconds (3 seconds). When a response is delayed for 3 seconds, the system returns a 503.
blockAfterFailedLoginCount=3. Client is locked out after 3 failed login attempts.
blockFailedLoginWithin=1800000 milliseconds (30 minutes). After 3 failed login attempts within 30 minutes, the client is locked out.
blockPeriod=3600000 milliseconds (1 hour). After 3 failed attempts within 30 minutes, the client is locked out for an hour.
The silhouette API supports the following versions of Transport Layer Security (TLS):
TLS v1.2
The silhouette API supports the TLS SSL ECDHE_* cipher suite, excluding all RC4, MD5, DES, DSS and NULL ciphers.
Using the API includes the following topics:
Hyperlinking API Fundamentals
The silhouette API is designed as a hyperlinking RESTful API. Rather than focusing on specific URLs, which may change as the system evolves, a hyperlinking API focuses on exposing relationships between resources and providing the ability to discover available resources. The benefit of this approach is that it results in an explorable API that provides client developers the ability to browse data and interact with the API at design time, which makes it much easier for the client developers to build a mental model of the API and its data structures.
The silhouette API supports the following HTTP verbs in compliance with the definitions in the HTTP specification (RFC7231). Note that not all resources of the API support all verbs. See the resource details (online or in this document) for its supported verbs.
GET—Retrieves the representation of the resource at the request URL. Some resources accept optional query parameters that let the client refine the content received in the response.
HEAD —Performs the same logic on the server as a GET request to the same URL, but does not return any response data. Clients can use this to pre-test whether a GET will be successful.
PUT—Creates a new resource or replaces an existing resource at the request URL using the request payload.
POST—Tells the service how to modify the contents of the resource at the request URL, particularly when that resource is a container of other resources. Thus, a POST request may create a new subordinate resource if it is a container resource (a POST request to the Call Group list is used to add a new Call Group). If the resource is not a container resource, the POST request may have the effect of
directly modifying the resource at the request URL (a POST request to a Call is used to change the call state).
If a new resource is created as the effect of a POST request, the HTTP response code will be a 201 Created and the HTTP Location header will be populated with the URL of the new resource.
DELETE—Deletes the resource at the request URL. A successful response is typically a 200 OK with an empty payload.
The API supports the media type application/json for request payloads, and
application/hal+json in response payloads.
API Documentation—The HAL Browser
The HAL Browser is a web-based user interface that is provided as part of the silhouette API. It lets client developers explore the API’s capabilities. Use it to discover the resources supported in the API, their data structures, and their link relationships.
The HAL Browser is located at
https://<WebAdmin IP>/api/browser/browser.html
When accessing The HAL Browser for the first time, you are prompted for credentials. See API Access. Once the credentials have been accepted you can proceed with exploring the API.
Provide the user identifier (<ext>@<tenant ID>) and a valid subscriber PIN to start browsing the API from a Tenant Administrator or non-admin user perspective.
Resource Graph
The detailed documentation (online and in this document) includes sample Request/Response formats, including sample URLs. The URLs shown in these examples are representative only. Actual URLs will likely differ at runtime, based on the runtime environment.
The silhouette API delivers Call and Presence Event Notifications over a WebSocket. You can find out more about the WebSocket protocol at
http://www.websocket.org/aboutwebsocket.html
To establish a WebSocket connection with silhouette, the URL is published in API Root Resource response as the link relation called “v1:createWebSocket”. In the current release, this URL is as follows:
https:<WebAdmin IP>/api/ws
Any valid user credentials can be used.
After the WebSocket connection has been successfully established, a message is sent from the server to the client indicating the UUID of the newly-created WebSocket. This UUID is used in subsequent REST requests to the silhouette API to subscribe to events. Note that there could be a small delay before this message is sent.
===>
wss://{webadmin ip}/api/ws
<===
HTTP/1.1 101 Switching Protocols
Connection: Upgrade Upgrade: WebSocket
<===
{"webSocketId":"aa922613-78ad-4e30-97e1-fac6a6a7e75c"}
The server establishes a timeout interval for the WebSocket connection. If no events are delivered in that period of time, silhouette closes the connection and any subscriptions on the WebSocket are cancelled. Clients can force the connection to stay open by periodically sending a message over the connection. The format of the message may be a short string, such as “hello”. The server will echo this back if the connection is still alive and reset the timeout counter.
The timeout value for connections is set to 1 hour.
WebSockets should be explicitly torn down gracefully by the client before any attempt to establish a new connection.
WSTool is a web-based tool that creates a WebSocket connection. It is shipped with the silhouette API, preconfigured to use the createWebsocket URL to establish a connection, and can be used for testing or exploring the API. It requires HTTP basic authentication, the same as the API itself (see Security). Access WSTool at https://
<webadmin IP>/api/wstool/wstool.html.
Once it has established a WebSocket, the client can subscribe to events. To receive events, follow these steps:
Establish a WebSocket with the silhouette API.
Receive a WebSocket ID over the newly-established WebSocket.
Use the WebSocket ID to create a Subscription Set for each set of subscriptions.
Create a subscription within the Subscription Set to subscribe for specific events. (Events related to the subscriptions are sent over the WebSocket as they occur.)
The silhouette API includes the following features:
Table of Contents
Expand Parameter Examples Description
Most resources list or entity (for example: a list of tenants, or a single tenant) support an optional query parameter on the URL that enables the client to request more detail in the query response.
In a query response, many entity representations include information about related resources in the _embedded section of the payload. Similarly, in a list query, each element of the list is included in the _embedded section of the payload. Embedded representations typically include only identifying information about the resource.
However, when a client is interested in more information about some embedded representations than is included by default, it can ask for more detail about those representations to be included in the response by providing the representation name in the value of the expand query parameter.
If the embedded resource contains an array, each element of the array will be expanded. In the case of list resources, such as the tenant list or user list, this allows the client to retrieve detail about every item in the list in a single query.
The expand parameter value contains one or more expand keys, each expand key can be:
simple keys:
•
item, this special key only used in a list resource context, it means item of the list.
•
all, this special key means expand all possible embed resources of an entity resource.
•
<valid embed name of entity>, this means expand the specified embed resource of an entity resource.
•
-<valid embed name of entity>, minus sign can be used to specify not expand the specified embed resource, which is useful when together with the
all key to exclude the specified embed resource.
multi-level keys: (combination of simple keys)
•
<valid embed name of entity>.item, this means expand the embedded resource, not include embedded of the embedded resource.
•
<valid embed name of entity>.all, this means expand the embedded resource, include all embedded of the embedded resource.
•
<valid embed name of entity>.<valid embed name>, this means expand the specified embed resource of specified embed resource of the
entity.
•
-<valid embed name of entity>.<valid embed name>, minus sign
can be used to specify not expand the specified embed resource of specified embed resource of the entity, which is useful when together with the <valid embed name of entity>.all key.
•
Recursive expansion can be specified by identifying the desired tokens using
dot-notation to specify the path to the embedded resource within the embedded resource, there is no limitation of how many level can be expanded.
When more than one expand key provided, they must be separated by coma.
Any unrecognized key include embed name of embed resource not accessible for user will be ignored.
When expand any embed resource, the owner of the embed resource will be expanded as well (the item will be implicitly included).
When expand any entity(include embedded resource), it only expand one level, which means it will include all attributes of the entity(visible by user role), and un-expanded view of all embedded resource of the entity, if need expand next level, next level expand key have to be provided in the parameter value.
When using embed name as expand key, must exactly (case-sensitively) match the name of the embedded resource to include.
When expand parameter included, the more content included and more level content included, the more time it will be cost to build the response and the much bigger size of the response will be.
It is up to the client to judge the query performance based on their requirements. Expand Parameter Examples
Here are some examples of getting a list of user with expand parameters:
GET /api/v1/tenants/414/users?expand=item GET /api/v1/tenants/414/users?expand=all
GET /api/v1/tenants/414/users?expand=all,-keyProfile
GET /api/v1/tenants/414/users?expand=featureSettings,adminSettings GET /api/v1/tenants/414/users/100?expand=all
GET /api/v1/tenants/414/users/100?expand=callPermissionProfile
Table of Contents
Filter Parameter Examples Description
Filtering result of GET request on all List resources is supported by optional filter
query parameter.
When multiple filter parameters provided, the logical relation between these filters are AND which means the result will only include items match all filters.
Each filter parameter value contains one or more filter conditions.
When more than one condition provided, they must be separated by coma.
When more than one filter conditions in the filter parameter value, the logical relation between filter conditions are OR relation which mean any item match any one of the filter conditions will be included in the result.
Each filter condition must match valid format, if NOT, will get 400 bad request error. There are 2 type of filter conditions: value condition and no-value condition. value condition
Value condition means compare the current value of an attribute of resource or embed resource with a provided value.
Each value condition format is:
<operator>(<key>,<value>)
value condition operators
operator
description
support value type
eq
equal
Integer, Boolean, String
ne
not equal
Integer, Boolean, String
operator
description
support value type
gt
greater than
Integer
ge
greater and equal
Integer
lt
less than
Integer
le
less and equal
Integer
ct
contains
String(case sensitive)
ci
contains ignore case
String(case insensitive)
sw
start with
String(case sensitive)
ew
end with
String(case sensitive)
value condition key
Key must be either a <valid property name> of the item resource of the list or a
<valid property name> of a valid embed resource of the item resource.
Only property or embedded which is visible to the user can be used as key
Multi level embed resources and properties is valid for filter condition key value,
such as:
•
<valid embed name>.<valid embed name>…<valid embed name>.<valid property name>
•
Note: the above condition implicitly indicate that every higher level embed must be exist
value
value must be provided
value must match expected value type
string value should not be quoted and must be URI encoded if contains URI special
characters
value condition examples eq(active,false) ci(firstName,Steven)
sw(keyProfile.name,Sales)
format: <operator>(<key>)
non-value condition operators
operator
description
est
exist
nes
not exist
emp
empty
nem
not empty
non-value condition key
key must be: <valid property name or valid embed name> of the item resource of the list or <valid property name or valid embed name> of a valid embed resource of the item resource.
only property or embedded which is visible to the user can be used as key
Multi level embed resources and properties is valid for filter condition key value,
such as:
•
<valid embed name>.<valid embed name>…<valid embed name>
•
<valid embed name>.<valid embed name>…<valid embed name>.<valid
property name>
•
Note: the above condition implicitly indicate that every higher level embed
must be exist
non-value condition examples
est(keyProfile) emp(feature.callForwardNoAnswer.callTarget) Performance
When filter parameter included, it will cause server processing time slightly increase, while it may reduce the network transfer time if the result list getting smaller.
When multiple filter parameter provided, the order in the URI will affect performance, the better performance can be achieved by put the more restricted filter more closer to beginning of the query parameter. For example, the filter of filter user by name equals Steven should be put before user do not have a key profile.
When use more than one condition in a filter, better performance can be achieved by put the less restricted condition before more restricted condition. For example, you should be put user do not have a key profile before name equals Steven.
Here is an example query URI for get a list of user with filter to ask for users which extension start with 2 or 3 and no key profile:
GET /api/v1/tenants/414/users? filter=sw(extension,2),sw(extension,3)&filter=nes(keyProfile)
As a client development aid, the silhouette API provides an enum lookup service for enumerated type values used in the API. This service provides a list of valid values that can be used for the indicated property. A hyperlink is provided to each enum value from the resource that uses it.
For example, the POST Call request has a required field called callRequest:
POST /calls/3501-1441389611741-3%3A155@21375
{"callRequest":"hangupCall", "myPartyId":"155@21375", "deviceId":"4564",
}
The GET Call response includes a hyperlink to the enum lookup resource for the
callRequest field:
GET /calls/3501-1441389611741-3%3A155%4021375 HTTP/1.1
Response:
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1options", "templated" : true
},
"self" : {
"href" : "/calls/3501-1441389611741-3:155@21375"
},
"v1options:callRequest" : {
"href" : "/api/v1/enums/callrequest"
}
},
"answerTime" : "2016-03-18T13:05:14.216-04:00", "callId" : "3501-1441389611741-3:155@21375",
"callParties" : [ { "PartyId" : "155@21375",
"PartyName" : "User, Jane"
}, {
"PartyId" : "203@21375",
"PartyName" : "User, Joe"
} ],
"callState" : "connected", "digitsDialed" : "203", "from" : "203@21375",
"redirected" : false,
"startTime" : "2016-03-18T13:04:44.260-04:00",
"talkDuration" : "PT45S", "to" : "155@21375",
"transferred" : false
}
You can issue a GET request to the href value indicated by the v1options:callRequest link to see the list of valid values that can be used for the callRequest field:
GET /api/v1/enums/callrequest
The response includes a list of valid values:
{
"_links": {
"self": {
"href": "/api/v1/enums/callrequest"
}
},
"values": [
{
"name": "answerCall", "defaultLabel": "answerCall"
},
{
"name": "hangupCall", "defaultLabel": "hangupCall"
}
]
}
The string value in the name property can be used as the value of the callRequest
property in subsequent POST requests to modify the call state.
By programmatically parsing it at runtime, client can ensure they are using the correct string value.
The purpose of a Third Party Call Control API is to enable applications to monitor calls, and to invoke requests to make calls, and modify existing calls.
Details on how to initiate a call, retrieve a parked call, and query a user’s active calls are documented in the ActiveCalls Resource section of Call Management Resources. Commands to answer, hang up, or invoke call features are documented in the Call Resource section of Call Management Resources.
It is possible to monitor call activity using Events received over a WebSocket. In order to receive Call, Presence, or ParkLocation events, a Subscription Set must be created, and the client must register for specific events. The details on how to register for events are documented in the Event Management Resources section.
Detail on the Event content is contained in the Events section.
It is also possible to get the current status information of a user or park location as described in the Presence Status Resource and ParkLocation Status Resource. This is normally used by an application that has registered for events to get an initial status.
Third Party Call Control Commands
The silhouette API includes the following Third Party Call Control (3PCC) commands. All commands are supported for MiNET and VVX devices. The following table shows which commands are supported for BSTs (Basic SIP Terminals).
Command | BST Support |
Yes | |
Yes | |
Yes | |
Yes | |
No | |
Yes | |
Yes | |
No | |
No | |
Yes | |
Yes | |
Yes | |
Yes |
For more information, see API Resources and Subscription Sets.
Description
Places a call. Allows the user to place the call from an external number as part of the Bring Your Own Number (BYON) feature. The feature still places a call from the user’s default device when no device is specified.
Details
https://{ip}/api/v1/calls
{"request":"makeCall" "from":"102@tenantId", "to":"912125551212",
"deviceIdType":"external", "deviceId": "{external number}"}
For a basic SIP terminal (BST) to support makeCall, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Description
Gets a list of active calls for the authorized user.
Details
https://{ip}/api/v1/calls/{callObserverId}
For a basic SIP terminal (BST) to support getCalls, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Description
Gets the details of a particular call based on the callObserverId.
Details
https://{ip}/api/v1/calls/{callObserverId}
For a basic SIP terminal (BST) to support getCall, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Description
Parks a specific call based on the callId.
To Park a call at system-generated (generic) location, remove featureData from the request body.
Details
https://{ip}/api/v1/calls/{callId}
{"callRequest":"parkCall", "myPartyId":"105@tenantId", “featureData”:”4”}
For a basic SIP terminal (BST) to support parkCall, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Description Answers a call.
Details
https://{ip}/api/v1/calls/{callObserverId}
{"callRequest":"answerCall", ”myPartyId”:"ext@tenantId"}
Description Hangs up a call.
Details
https://{ip}/api/v1/calls/{callObserverId}
{"callRequest":"hangupCall"}
For a basic SIP terminal (BST) to support hangupCall, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Description
Deflects a ringing call to coverage. Details
https://{ip}/api/v1/calls/{callId}
{"callRequest":"deflectCall", "myPartyId":"105@tenantId" }
For a basic SIP terminal (BST) to support deflectCall, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Description
Holds a specific call based on the callId.
Details
https://{ip}/api/v1/calls/{callId}
{"callRequest":"holdCall", "myPartyId":105@tenantId }
Description
Resumes a specific call based on the callId from a hold state.
Details
https://{ip}/api/v1/calls/{callId}
{"callRequest":"resumeHeldCall", "myPartyId":"105@tenantId" }
Description
Transfers active and held calls. Details
https://{ip}/api/v1/calls/{callId2}
{"callRequest":"transfer", "myPartyId":"105@tenantId", "otherCallId":"{callId1}" }
For a basic SIP terminal (BST) to support transferCall, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Description
Retrieves a parked call at a park location referenced by featureData. Details
POST https://{ip}/api/v1/calls
{"request":"retrieveParkedCall" "from":"102@tenantId", "featureData”:”4" "deviceIdType":"device", "deviceId": "23"}
For a basic SIP terminal (BST) to support retrieveCall, the SIP phone must
be able to handle a minimum of two calls concurrently
have an available line appearance
accept reINVITEs
be able to send reINVITEs
Applications use the Subscription Set Resource to subscribe to accounts. See Event Management Resources. Applications can subscribe to Call Events, Presence Events and ParkLocation Events. Events are streamed through a WebSocket and include
a callId, which is necessary for tracking calls for each subscriber involved. The smdrCallId in Third Party Call Control (3PCC) events correlates with the callid in the SMDR records and optionally in call segments if Segmented SMDR is enabled.
Call events provide the necessary information for tracking calls. Call events reference a callId, which can be used to associate events common to a single call on the account. Call events also reference the account. Call events report basic call events such as dial, ring, answer, offer, and end—although not all information is included in each event. Calls start with either an offer (incoming) or dial (outgoing) event and end with an “end” event. When a client starts up, if it tracks calls, it can get current calls to find out about existing calls. See ActiveCalls Resource and Call Management Resources. After that the events should provide all needed information.
Feature events including hold, resume, forward, and transfer are reported as call events. Call events are pushed to each subscribed application as they occur. Call events report the same basic information on accounts as the legacy call events, but are not identical. Call events reference the phone used by the associated user or location when relevant (events such as Answer).
===>
https://{webadminIP}/api/v1/calls
Description
Account has dialed a call. Details
{
“subscriptionSetId”:”12345”, “event”:”dial”,
“callId”:1, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “from”:”100@Windstream”, “to”:”101@Windstream”,
“sipCallId”:”[email protected]”, “dialingDeviceId”:1
}
Description
Dialed call is ringing.
Details
{
“subscriptionSetId”:”12345”, “event”:”ringback”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”
}
Description
Call has been offered to account. Details
{
“subscriptionSetId”:”12345”, “event”:”offer”,
“callId”:1, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “from”:”101@Windstream”, “to”:”100@Windstream”, “via”:”102@Windstream”,
“sipCallId”:”[email protected]”, “dialedDigits”:“100”,
“callingName”:”Homer Simpson”
}
Description
Call offered to account is ringing on a particular phone. Details
{
“subscriptionSetId”:”12345”, “event”:”ringing”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “ringingDeviceId”:1
}
Description
Ringing call offered to account has been answered on a particular phone, or dialed call has been answered.
Details
{
“subscriptionSetId”:”12345”, “event”:”answer”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “answeringParty”:”101@Windstream”, “answeringDeviceId”:2
}
Description
Call has been forwarded. Details
{
“subscriptionSetId”:”12345”, “event”:”forward”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
"version”:”v1”, “forwardingParty”:”101@Windstream”, “forwardTarget”:”102@Windstream”
}
Description
Call has been put on hold. Details
{
“subscriptionSetId”:”12345”, “event”:”hold”,
“callId”:1, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “holdingParty”:”100@Windstream”, “heldParty”:”101@Windstream”
}
Description
Issued for the held party when a call is put on hold. Details
{
“subscriptionSetId”:”12345”, “event”:”hold”,
“callId”:1, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “holdingParty”:”100@Windstream”, “heldParty”:”101@Windstream”
}
Description
Held call has been resumed. Details
{
“subscriptionSetId”:”12345”, “event”:”resume”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “resumingParty”:”100@Windstream”, “heldParty”:”101@Windstream”
}
Description
Issued to the held party when a call is taken off hold. Details
{
“subscriptionSetId”:”12345”, “event”:”resume”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “resumingParty”:”100@Windstream”, “heldParty”:”101@Windstream”
}
Description
Call has been transferred. Details
{
“subscriptionSetId”:”12345”, “event”:”transfer”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “transferringParty”:”100@Windstream”, “transferee”:”101@Windstream”, “transferTarget”:”102@Windstream”
}
Description
Call cannot be completed and has been forwarded to treatment. Details
{
“subscriptionSetId”:”12345”, “event”:”callError”, “callId”:1,
“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “error”:”Subscriber unavailable”
}
Description
Account is no longer involved in a call . Details
{
“subscriptionSetId”:”12345”, “event”:”end”,
“callId”:1, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,
“version”:”v1”, “from”:”100@Windstream”, “to”:”101@Windstream”, “endingParty”:”100@Windstream”, “endReason”:”normal”, “callDuration”:”PT3M25S”
}
Description
Issued for the parking party when an account parks a call. Details
{
“callId”:1, "parkingPartyNumber"."100", "parkLocationId"."1", "observedParty"."120", "parkedPartyNumber"."101", “subscriptionSetId”:”12345”, “event”:”park”, "parkingPartyName"."Jack Slack", “version”:”v1”, “parkedPartyName”:”Joe Schmo” “timestamp”:”2015-05-11T14:06:52-04”,
}
Description
Issued for the parked party when a call is parked. Details
{
“callId”:1, "parkingPartyNumber"."100", "parkLocationId"."1", "observedParty"."120", "parkedPartyNumber"."101", “subscriptionSetId”:”12345”, “event”:”park”, "parkingPartyName"."Jack Slack", “version”:”v1”, “parkedPartyName”:”Joe Schmo” “timestamp”:”2015-05-11T14:06:52-04”,
}
Description
Issued for the retrieving party when an account retrieves a call from the parked state. Details
{
“callId”:1, "retrievingPartyName"."Joe Schmo", "parkLocationID"."3", "observedPartyID"."100@5556661111", "parkedPartyNumber"."100", “subscriptionSetId”:”12345”, “event”:”retrieve”,
“version”:”v1”, “retrievingPartyID”:”101”, “parkedPartyName”:”Jack Slack” “timestamp”:”2015-05-11T14:06:52-04”,
}
Description
Issued for the parked party when a call is retrieved from park. Details
{
“callId”:1, "retrievingPartyName"."Joe Schmo", "parkLocationID"."3", "observedPartyID"."100@5556661111", "parkedPartyNumber"."100", “subscriptionSetId”:”12345”, “event”:”retrieved”, “version”:”v1”, “retrievingPartyID”:”101”, “parkedPartyName”:”Jack Slack”
“timestamp”:”2015-05-11T14:06:52-04”,
}
Presence Events must be reported from the perspective of a single user or location extension. Currently, presence events are relevant only for users and locations. The application must explicitly subscribe for presence events for specific accounts. All presence events include a reference to the account, rather than particular calls. Clients that track presence status will want to get the current presence status of users at the same time that they register for presence events. See PresenceStatusByExtension Resource.
Presence events report basic account status such as idle, busy, available for calls, unavailable for calls, joined group, left group, available for ACD, unavailable for ACD. Presence events are pushed as they occur to each subscribed application.
The sipCallId header may or may not be present in the dial, offer, ringback, ringing, and answer events. To be included at any point in a call flow, the call must include at least one SIP endpoint (device, gateway, and so forth.). The particular events in a call event stream that contain a sipCallId header depends on the call scenario.
The via header may or may not be included in the offer event, depending on the call scenario.
Account is not involved in any calls. Details
{
“subscriptionSetId”:”12345”, “event”:”idle”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
Account is involved in one or more calls. Details
{
“subscriptionSetId”:”12345”, “event”:”busy”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
Account is available to receive calls (that is, logged in to at least one, connected device). Details
{
“subscriptionSetId”:”12345”, “event”:”available”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
Account is not available to receive calls (i.e., account is not logged into any connected devices.
Details
{
“subscriptionSetId”:”12345”, “event”:”unavailable”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
Account has joined a group. Details
{
“subscriptionSetId”:”12345”, “event”:”joinedGroup”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”, “groupJoined”:”600@Windstream”
}
Account has left a group. Details
{
“subscriptionSetId”:”12345”, “event”:”leftGroup”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”, “groupLeft”:”600@Windstream”
}
Account is available to participate in ACD applications. Details
{
“subscriptionSetId”:”12345”, “event”:”signedInAcd”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
Account is unavailable to participate in ACD applications. Details
{
“subscriptionSetId”:”12345”, “event”:”signedOutAcd”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
Account has turned DND off. Details
{
“subscriptionSetId”:”12345”, “event”:”dndOff”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
Account has turned DND on. Details
{
“subscriptionSetId”:”12345”, “event”:”dndOn”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
ParkLocation Events must be reported from the perspective of a single Park Location. The application must explicitly subscribe for ParkLocation events for specific Park Location or all Park Locations in a tenant. All ParkLocation events include a reference to the Park Location. Clients that track ParkLocation status will want to get the
current ParkLocation status of a ParkLocation at the same time that they register for ParkLocation events. See ParkLocationStatus Resource.
ParkLocation events report basic Park Location status such as idle, busy. ParkLocation events are pushed as they occur to each subscribed application.
ParkLocation is not involved in any calls. Details
{
“subscriptionSetId”:”12345”, “event”:”idle”, “observedParty”:”PL1@315100001”, “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
ParkLocation is involved in one or more calls. Details
{
“subscriptionSetId”:”12345”, “event”:”busy”, “observedParty”:”PL1@315100001”, "parkedParty":"6132805555", "parkedPartyName":"Steve L" “timestamp”:”2015-05-11T14:06:52+04”,
“version”:”v1”
}
This section includes
The detailed documentation in this chapter includes references to information thatis visible only to Telco Users or which may not be enabled on all systems. Clients of this API are not able to view or modify this data. In particular, example messages may differ between this document and the live system. Use The HAL Browser to verify resource representations in your system.
You can view the complete interactive graph online at https://<webadminIP>/api/ browser/graph.html or using the “Resource Graph” link in the HAL browser. You can view a whole list of all resource models online at https://< webadminIP>/api/ browser/list.html or using the “Resource List” link in the HAL browser.
Navigation resources include:
API Root Resource—the API entry point; this resource varies depending on the authorization of the requesting user.
V1 Resource—the entry point to the V1 of the API; this resource varies depending on the authorization of the requesting user.
URI Template Dictionary—provides a list of URL templates of major resources supported by the API.
Enums List Resource—provides a list of all enum types used by the application.
Enum Resource—describes the general response format to a query for enum details.
Table of Contents
Sample GET Response Description
This resource is the entry point of the silhouette API.
This resource returns a list of potential resources an application client may wish to navigate to as a logical next step in using the silhouette API.
If the end user making the request is restricted to viewing data within a tenant, then basic information about that tenant will also be returned in this response.
GET
View API Root resource HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
View
TenantAdmin
View
User
View
Location
View
Path
Type
Description
Visibility
tenantId
Number
The unique identifier of the requesting subscriber’s tenant. This may form
part of the AccountId. This property is only provided if the requester is a Subscriber or a Telco user with tenant scope.
TenantAdmin, User
tenantName
String
The tenant name of the requesting subscriber’s tenant. This property is only provided if the requester
is a Subscriber or a Telco user with tenant scope.
TenantAdmin, User
Relation
Description
Visibility
api:createWebsocket
The href defined by this link relation provides the URL to use to create
a WebSocket connection for the delivery of Call and Presence Events.
all
api:v1
The v1 resource is the entry point to the v1 version of the interface.
all
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 353
{
"_links" : {
"curies" : {
"href" : "/api/releases/{rel}", "name" : "api",
"templated" : true
},
"self" : {
"href" : "/api"
},
"api:createWebsocket" : { "href" : "/api/ws"
},
"api:v1" : {
"href" : "/api/v1"
}
},
"tenantId" : 156,
"tenantName" : "Dave's Moose Hunting Supply"
}
Table of Contents
Sample GET Response Description
This relation returns a list of resources that an application client may wish to allow the end user to view and manage.
The content of this resource varies depending on the role and identity of the end user initiating the request.
TelcoAdmin users with Tenant Management permission will be provided with a link to explore tenant resources in the system
TelcoAdmin users with Tenant Scope and Call Control Management permission will
be provided with links to manage their event subscription sets and the presence status for users within their tenant
TenantAdmin users will be provided with links to explore the details of their tenant’s
data, their personal data, as well as links to manage their event subscription sets and view their own presence status
Non-admin users (Users and Locations) will be provided with links to explore details
of their own system usage.
GET
View V1 resources HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User |
GET | |
Telco User with Tenant Scope | GET |
TenantAdmin User | GET |
User | GET |
Location | GET |
Relation | Description | Visibility |
v1:tenants | Provides a list of tenants configured in the system. | Telco(TenantBasicOrAdvance Management) |
v1:systemAnnouncements | Provides a list of system announcement configured in the system. | Telco(TenantBasicOrAdvance Management) |
v1:defaultSystem Announcement | Provides the default system announcement setting details of the system. | Telco(TenantBasicOrAdvance Management) |
v1:customAnnouncementFiles | Lists all existing custom announcement files. | Telco(TenantBasicOrAdvance Management) |
v1:defaultAnnouncementFiles | Lists all existing default announcement files. | Telco(TenantBasicOrAdvance Management) |
v1:languages | Provide a list of Supported languages of the system. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:aaLanguages | Provide a list of Supported auto attendant languages of the system. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin |
v1:crPlatforms | Provide a list of CrPlatform of the system. | Telco(TenantBasicOrAdvance Management, SystemManagement) |
v1:priGroups | Provide a list of PRIGroup of the system. | Telco(SystemManagement) |
v1:routes | Provide a list of Route of the system. | Telco(SystemManagement) |
v1:dialPlans | Provide a list of DialPlan of the system. | Telco(SystemManagement) |
v1:enterprises | Provide a list of Enterprises of the system. | Telco(TenantBasicOrAdvance Management) |
v1:zones | Provide a list of Zone of the system. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement, Site BasicOrAdvanceManagement) |
v1:codecSets | Provides a list of codecSets. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
v1:defaultSystemCodecSet | Provide the default system CodecSet setting details of the system. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement, Site BasicOrAdvanceManagement) |
v1:brandDetails | Provide a list of BrandDetail of the system. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
v1:standardDhcpOptions | Provide a list of global standard DHCP options of the system. | Telco(SystemManagement) |
v1:customDhcpOptions | Provide a list of global custom DHCP options of the system. | Telco(SystemManagement) |
v1:tenantPhoneModels | List of Phone Models available for this tenant. | User |
Relation | Description | Visibility |
v1:macAddresses | Provides a list of MAC addresses. | Telco(TenantBasicOrAdvance Management) |
v1:serviceProviders | Provides a list of serviceProviders. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
v1:voicemailServers | Provides a list of voicemailServers. | Telco(ElementManagement) |
v1:carriers | Provides a list of carriers. | Telco(SystemManagement) |
v1:appServers | Provides a list of application servers. | Telco(ElementManagement, Tenant BasicOrAdvanceManagement) |
v1:gateways | Provides a list of gateways. | Telco(ElementManagement) |
v1:mediaServers | Provides a list of media servers. | Telco(ElementManagement) |
v1:conferenceServers | Provides a list of conference servers. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
v1:rtpProxyServers | Provides a list of RTP Proxy servers. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
v1:phoneAccessEntries | Provides a list of Phone Access Entries. | Telco(SystemManagement) |
v1:callpServers | Provides a list of Callp Servers. | Telco(ElementManagement, Tenant BasicOrAdvanceManagement) |
v1:licensing | Provides access to Silhouette licenses. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
v1:pinNotificationSettings | Manage PIN notification settings. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
v1:systemProperties | System properties management. | Telco(SystemManagement) |
v1:runningTasks | Provide a list of Running Tasks. | Telco(TenantBasicOrAdvance Management) |
Relation | Description | Visibility |
v1:vmLanguages | Provide a list of Supported Voicemail languages of the system. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin, User |
v1:activeCalls | Allows the client to retrieve a list of active calls for this subscriber. | ScopedTelco(CallControl), Tenant Admin, User |
v1:deviceStates | Allows the client to retrieve a list of device states. | ScopedTelco(TenantBasicOr AdvanceManagement), TenantBasic OrAdvanceManagement |
v1:eventSubscriptionSets | Enables a client application to register to receive Presence and Call Events for extensions within a tenant. | ScopedTelco(CallControl), Tenant Admin, User |
v1:extensions | Retrieves a list of configured extensions within the tenant. | ScopedTelco(CallControl), Tenant Admin, User |
v1:location | Provides details about the location’s configuration. This Link Relation is provided only when the requesting extension belongs to a location. | TenantAdmin, User |
v1:presenceStatusBy Extension | Allows a client application to retrieve the current Presence Status for the requesting user/location. For a Scoped TelcoAdmin request initiator, this template resource allows them to retrieve the Presence Status for an extension within the tenant. | ScopedTelco(CallControl), Tenant Admin, User |
v1:presenceStatusTenant Accounts | Allows a client application to retrieve the current Presence Status for all accounts in a tenant. For a Scoped TelcoAdmin request initiator, this template resource allows them to retrieve the Presence Status for all extensions within the tenant. | ScopedTelco(CallControl), Tenant Admin |
v1:presenceStatusTenantPark Locations | Allows a client application to retrieve the current Presence Status for park locations. For a Scoped TelcoAdmin request initiator, this template resource allows them to retrieve the Presence Status for all park locations within the tenant. | ScopedTelco(CallControl), Tenant Admin, User |
Relation | Description | Visibility |
v1:parkLocationStatus | Allows a client application to retrieve the current Status for the specified park location. | ScopedTelco(CallControl), Tenant Admin, User |
v1:sendMessageUsers | Allows a client application to send an emergency message to phones of specific users or locations. | ScopedTelco(CallControl), Tenant Admin |
v1:sendMessageSites | Allows a client application to send an emergency message to phones in specific sites. | ScopedTelco(CallControl), Tenant Admin |
v1:tenant | Provides details about the tenant business configuration. | ScopedTelco(CallControl), Tenant Admin |
v1:user | Provides details about the user’s personal configuration. This Link Relation is provided only when the requesting extension belongs to a TenantAdmin or non-admin user. | TenantAdmin, User |
v1:userPhones | Provides a list of the user/location’s logged-in phones and identifies their default Click-to-Call and Intercom devices. | TenantAdmin, User |
v1:externalContacts | List of ExternalContact configured by the current tenant. This link are not available for Telco Users. | TenantAdmin, User |
v1:uriDictionary | Provides a list of URI Templates which can be used to directly navigate to specific entity instances by applying correct entity identifiers to the URI. | Telco(all), ScopedTelco(CallControl), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 5603
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1"
},
"v1:aaLanguages" : {
"href" : "/api/v1/aalanguages{?filter}", "templated" : true
},
"v1:activeCalls" : { "href" : "/api/v1/calls"
},
"v1:appServers" : {
"href" : "/api/v1/appservers{?expand,filter}", "templated" : true
},
"v1:brandDetails" : {
"href" : "/api/v1/branddetails{?filter}", "templated" : true
},
"v1:callpServers" : {
"href" : "/api/v1/callpservers{?expand}", "templated" : true
},
"v1:carriers" : {
"href" : "/api/v1/carriers{?expand,filter}", "templated" : true
},
"v1:codecSets" : {
"href" : "/api/v1/codecsets{?expand,filter}", "templated" : true
},
"v1:conferenceServers" : {
"href" : "/api/v1/conferenceservers{?expand,filter}", "templated" : true
},
"v1:crPlatforms" : {
"href" : "/api/v1/crplatforms{?expand,filter}", "templated" : true
},
"v1:customAnnouncementFiles" : {
"href" : "/api/v1/customannouncementfiles/{langCode}{?filter}", "templated" : true
},
"v1:customDhcpOptions" : {
"href" : "/api/v1/customdhcpoptions{?filter}", "templated" : true
},
"v1:defaultAnnouncementFiles" : {
"href" : "/api/v1/defaultannouncementfiles/{langCode}{?filter}", "templated" : true
},
"v1:defaultSystemAnnouncement" : {
"href" : "/api/v1/defaultsystemannouncement{?expand}", "templated" : true
},
"v1:defaultSystemCodecSet" : {
"href" : "/api/v1/defaultcodecset{?expand}", "templated" : true
},
"v1:deviceStates" : {
"href" : "/api/v1/devicestates"
},
"v1:dialPlans" : {
"href" : "/api/v1/dialplans{?expand,filter}", "templated" : true
},
"v1:enterprises" : {
"href" : "/api/v1/enterprises{?expand,filter}", "templated" : true
},
"v1:eventSubscriptionSets" : {
"href" : "/api/v1/subscriptions/ws/{webSocketId}/subscriptionsets", "templated" : true
},
"v1:extensions" : {
"href" : "/api/v1/tenants/156/extensions{?expand,filter,extensionType,agent}", "templated" : true
},
"v1:externalContacts" : {
"href" : "/api/v1/tenants/156/externalcontacts{?expand,filter}", "templated" : true
},
"v1:gateways" : {
"href" : "/api/v1/gateways{?expand,filter}", "templated" : true
},
"v1:languages" : {
"href" : "/api/v1/languages{?filter}", "templated" : true
},
"v1:licensing" : {
"href" : "/api/v1/licensing"
},
"v1:macAddresses" : {
"href" : "/api/v1/macaddresses?macAddress={macAddress}", "templated" : true
},
"v1:mediaServers" : {
"href" : "/api/v1/mediaservers{?expand,filter}", "templated" : true
},
"v1:parkLocationStatus" : {
"href" : "/api/v1/presencestatus/parklocationstatus/{accountId}", "templated" : true
},
"v1:phoneAccessEntries" : {
"href" : "/api/v1/phoneaccessentries{?expand,filter}", "templated" : true
},
"v1:pinNotificationSettings" : {
"href" : "/api/v1/pinnotificationsettings"
},
"v1:presenceStatusByExtension" : {
"href" : "/api/v1/presencestatus/tenants/156/extensions/4332"
},
"v1:presenceStatusTenantAccounts" : {
"href" : "/api/v1/presencestatus/tenants/156/extensions"
},
"v1:presenceStatusTenantParkLocations" : {
"href" : "/api/v1/presencestatus/tenants/156/parklocations"
},
"v1:priGroups" : {
"href" : "/api/v1/prigroups{?expand,filter}", "templated" : true
},
"v1:routes" : {
"href" : "/api/v1/routes{?expand,filter}", "templated" : true
},
"v1:rtpProxyServers" : {
"href" : "/api/v1/rtpproxyservers{?expand,filter}", "templated" : true
},
"v1:runningTasks" : {
"href" : "/api/v1/runningtasks{?expand,filter}", "templated" : true
},
"v1:sendMessageSites" : {
"href" : "/api/v1/sendmessage/tenants/156/alertsites"
},
"v1:sendMessageUsers" : {
"href" : "/api/v1/sendmessage/tenants/156/alertusers"
},
"v1:serviceProviders" : {
"href" : "/api/v1/serviceproviders{?expand,filter}", "templated" : true
},
"v1:standardDhcpOptions" : {
"href" : "/api/v1/standarddhcpoptions{?expand,filter}", "templated" : true
},
"v1:systemAnnouncements" : {
"href" : "/api/v1/systemannouncements{?expand,filter}", "templated" : true
},
"v1:systemProperties" : {
"href" : "/api/v1/systemproperties"
},
"v1:tenant" : {
"href" : "/api/v1/tenants/156"
},
"v1:tenantPhoneModels" : {
"href" : "/api/v1/tenants/156/phonemodels{?expand,filter}", "templated" : true
},
"v1:tenants" : {
"href" : "/api/v1/tenants{?expand,filter}", "templated" : true
},
"v1:uriDictionary" : {
"href" : "/api/v1/uridictionary"
},
"v1:user" : {
"href" : "/api/v1/tenants/156/users/4332"
},
"v1:userPhones" : {
"href" : "/api/v1/tenants/156/users/4332/phones{?expand,filter}", "templated" : true
},
"v1:vmLanguages" : {
"href" : "/api/v1/vmlanguages{?filter}", "templated" : true
},
"v1:voicemailServers" : {
"href" : "/api/v1/voicemailservers"
},
"v1:zones" : {
"href" : "/api/v1/zones{?expand,filter}", "templated" : true
}
}
}
Table of Contents
This resource is the URI Template Dictionary of the silhouette API. It returns a list of URI Templates of frequently used links which can be used to access a single Entity Resource.
Each list of resources in the service publishes an itemTemplate link relation that provides a templated URI that the client can use in conjunction with a known identifier value to resolve the URI to a specific instance URL. This resource gathers those templates into a single place so that a client that is identifier-aware can cache the templates and resolve them as required, which may help to reduce the number of required round-trip queries.
The URI Template Dictionary only provides URI Templates links visible to Telco and TenantAdmin users.
GET
View URI Template Dictionary resources HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | View |
TenantAdmin | View |
This resource has no configurable properties.
Relation | Description | Visibility |
v1:call | A URI template for managing a specific Call. Clients that know the callId of the Call they’re seeking may use this URL to manage the resource instead of iterating over the list. Provided to requesters User or Location authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:deviceState | A URI template for retrieve state of a specific Device. Clients that know the device ID of the Device they’re seeking may use this URL to manage the resource instead of iterating over the list. Provided to requesters TelcoAdmin authority. | ScopedTelco(CallControl) |
v1:subscriptionSets | A URI template for managing a specific SubscriptionSet. Clients that know the UUID of the Subscription Set they’re seeking may use this URL to manage the resource instead of iterating over the list. Provided to requesters with User, Location, or Scoped TelcoAdmin authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:callEventAccount | A URI template for managing a specific Call Event Account of a SubscriptionSet. Clients that know the UUID of the SubscriptionSet and the Account ID they’re seeking may use this URL to manage the resource instead of iterating over the list. Provided to requesters with User, Location, or Scoped TelcoAdmin authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:presenceEventAccount | A URI template for managing a specific Presence Event Account of a SubscriptionSet. Clients that know the UUID of the SubscriptionSet and the Account ID they’re seeking may use this URL to manage the resource instead of iterating over the | ScopedTelco(CallControl), Tenant Admin, User |
Relation | Description | Visibility |
list. Provided to requesters with User, Location, or Scoped TelcoAdmin authority. | ||
v1:presenceStatusBy Extension | A URI template indicating how to retrieve the Presence Status for a specific extension. Clients that know the extension of the account they’re seeking may use this URL to retrieve the resource instead of iterating over the list. Provided to requesters with User, Location or Scoped TelcoAdmin authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:parkLocationStatus | A URI template indicating how to retrieve the Park Location Status for a specific park location. Clients that know the park location of the account they’re seeking may use this URL to retrieve the resource instead of iterating over the list. Provided to requesters with User, Location or Scoped TelcoAdmin authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:parkLocationEventAccount | A URI template for querying a specific Park Location Event Account. Clients that know the UUID of the Park Location Account ID they’re seeking may use this URL to query the resource instead of iterating over the list. Provided to requesters with User, Location, or Scoped TelcoAdmin authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:announcement | A URI template indicating how to retrieve a specific Announcement. Clients that know the announcement Id of the announcement they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin |
v1:priGroup | A URI template indicating how to retrieve a specific PRIGroup. Clients that know the priGroupId of the PRIGroup they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(SystemManagement, Element Management) |
Relation | Description | Visibility |
v1:route | A URI template indicating how to retrieve a specific Route. Clients that know the routeId of the Route they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(SystemManagement) |
v1:dialPlan | A URI template indicating how to retrieve a specific DialPlan. Clients that know the dialPlanId of the DialPlan they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(SystemManagement) |
v1:zone | A URI template indicating how to retrieve a specific Zone. Clients that know the zoneId of the Zone they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management, SystemManagement) |
v1:codecSet | A URI template indicating how to retrieve a specific CodecSet. Clients that know the codecId of the CodecSet they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SystemManagement) |
v1:gateway | A URI template indicating how to retrieve a specific Gateway. Clients that know the gatewayId of the Gateway they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with Tenant Admin or TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:crPlatform | A URI template indicating how to retrieve a specific CR Platform. Clients that know the crPlatformId of the CR Platform they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SystemManagement) |
Relation | Description | Visibility |
v1:brandDetail | A URI template indicating how to retrieve a specific BrandDetail. Clients that know the brandDetailId of the BrandDetail they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(SystemManagement) |
v1:carrier | A URI template indicating how to retrieve a specific Carrier. Clients that know the carrierId of the Carrier they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SystemManagement) |
v1:mediaServer | A URI template indicating how to retrieve a specific MediaServer. Clients that know the codecId of the MediaServer they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin |
v1:enterprise | A URI template indicating how to retrieve a specific Enterprise. Clients that know the enterpriseId of the Enterprise they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management) |
v1:conferenceServer | A URI template indicating how to retrieve a specific ConferenceServer. Clients that know the codecId of the ConferenceServer they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin |
v1:rtpProxyServer | A URI template indicating how to retrieve a specific ConferenceServer. Clients that know the codecId of the RtpProxyServer they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin |
Relation | Description | Visibility |
v1:tenant | A URI template indicating how to retrieve a specific Tenant. Clients that know the tenantId of the tenant they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:staticSite | A URI template indicating how to retrieve a specific Site. Clients that know the siteId of the (non-dynamic) site they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:dynamicSite | A URI template indicating how to retrieve a specific Dynamic Site. Clients that know the siteId of the Dynamic Site they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:did | A URI template indicating how to retrieve a specific DID. Clients that know the didId of the DID they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:businessHoursProfile | A URI template indicating how to retrieve a specific Business HoursProfile. Clients that know the businessHoursId of the Business Hours they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TenantAdmin and TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:callGroup | A URI template indicating how to retrieve a specific Call Group. Clients that know the callGroupId of the call group they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TenantAdmin and TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Relation | Description | Visibility |
v1:keyProfile | A URI template indicating how to retrieve a specific Key Profile. Clients that know the keyProfileId of the key profile they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TenantAdmin and TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:callPermissionProfile | A URI template indicating how to retrieve a specific Call Permission Profile. Clients that know the call PermissionProfileId of the call permission profile they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to TenantAdmin and TelcoAdmin requesters only. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:extension | A URI template indicating how to use a known extension value to find a specific Extension resource. Provided to requesters with Tenant Admin and TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:user | A URI template indicating how to retrieve a specific User resource. Clients that know the extension of the user they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with TenantAdmin and TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:location | A URI template indicating how to use a known subscriber extension to find a specific Location. Provided to requesters with TenantAdmin and TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:acd | A URI template indicating how to retrieve a specific ACD. Clients that know the acdId of the ACD they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with TenantAdmin and TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:autoAttendant | A URI template indicating how to retrieve a specific AutoAttendant. Clients that know the autoAttendant | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Relation | Description | Visibility |
Id of the AutoAttendant they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with TenantAdmin and TelcoAdmin authority. | ||
v1:phone | A URI template indicating how to retrieve a specific Phone. Clients that know the extension of the Phone they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with TenantAdmin or TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:externalContact | A URI template indicating how to retrieve a specific ExternalContact. Clients that know the externalContact Id of the ExternalContact they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with TenantAdmin or TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:callpServer | A URI template indicating how to retrieve a specific Callp Server. Clients that know the callpId of the Callp Server they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with Tenant Admin or TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:serviceProvider | A URI template indicating how to retrieve a specific Service Provider. Clients that know the serviceProvider Id of the Service Provider they are seeking can use this URL to retrieve the resource, instead of iterating over the list. Provided to requesters with TenantAdmin or TelcoAdmin authority. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:voicemailServer | A URI template indicating how to retrieve a specific Voicemail Server. Clients that know the voicemail ServerId of the Voicemail Server they are seeking can use this URL to retrieve the resource, instead of | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Relation | Description | Visibility |
iterating over the list. Provided to requesters with TenantAdmin or TelcoAdmin authority. |
This resource contains no expandable elements.
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 5142
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/uridictionary"
},
"v1:acd" : {
"href" : "/api/v1/tenants/{tenantId}/acds/{acdId}", "templated" : true
},
"v1:announcement" : {
"href" : "/api/v1/announcements/{announcementId}", "templated" : true
},
"v1:autoAttendant" : {
"href" : "/api/v1/tenants/{tenantId}/autoattendants/{autoAttendantId}", "templated" : true
},
"v1:brandDetail" : {
"href" : "/api/v1/branddetails/{brandDetailId}", "templated" : true
},
"v1:businessHoursProfile" : {
"href" : "/api/v1/tenants/{tenantId}/businesshours/{businessHourId}", "templated" : true
},
"v1:call" : {
"href" : "/api/v1/calls/{callObserverId}", "templated" : true
},
"v1:callEventAccount" : {
"href" : "/api/v1/subscriptions/ws/{webSocketId}/subscriptionsets/{subscriptionSetId}/
calleventaccounts/{accountId}", "templated" : true
},
"v1:callGroup" : {
"href" : "/api/v1/tenants/{tenantId}/callinggroups/{callGroupId}", "templated" : true
},
"v1:callPermissionProfile" : {
"href" : "/api/v1/tenants/{tenantId}/callpermissionprofiles/{callPermissionProfileId}", "templated" : true
},
"v1:callpServer" : {
"href" : "/api/v1/callpservers/{callpId}", "templated" : true
},
"v1:carrier" : {
"href" : "/api/v1/carriers/{carrierId}", "templated" : true
},
"v1:codecSet" : {
"href" : "/api/v1/codecsets/{codecSetId}", "templated" : true
},
"v1:conferenceServer" : {
"href" : "/api/v1/conferenceservers/{conferenceServerId}", "templated" : true
},
"v1:crPlatform" : {
"href" : "/api/v1/crplatforms/{crPlatformId}", "templated" : true
},
"v1:deviceState" : {
"href" : "/api/v1/devicestates/{deviceId}", "templated" : true
},
"v1:dialPlan" : {
"href" : "/api/v1/dialplans/{dialPlanId}", "templated" : true
},
"v1:did" : {
"href" : "/api/v1/tenants/{tenantId}/dids/{didId}", "templated" : true
},
"v1:dynamicSite" : {
"href" : "/api/v1/tenants/{tenantId}/dynamicsites/{siteId}", "templated" : true
},
"v1:enterprise" : {
"href" : "/api/v1/enterprises/{enterpriseId}", "templated" : true
},
"v1:extension" : {
"href" : "/api/v1/tenants/{tenantId}/extensions/{extension}", "templated" : true
},
"v1:externalContact" : {
"href" : "/api/v1/tenants/{tenantId}/externalcontacts/{externalContactId}", "templated" : true
},
"v1:gateway" : {
"href" : "/api/v1/gateways/{gatewayId}", "templated" : true
},
"v1:keyProfile" : {
"href" : "/api/v1/tenants/{tenantId}/keyprofiles/{keyProfileId}", "templated" : true
},
"v1:location" : {
"href" : "/api/v1/tenants/{tenantId}/locations/{extension}", "templated" : true
},
"v1:mediaServer" : {
"href" : "/api/v1/mediaservers/{mediaServerId}", "templated" : true
},
"v1:parkLocationEventAccount" : {
"href" : "/api/v1/subscriptions/ws/{webSocketId}/subscriptionsets/{subscriptionSetId}/ parklocationeventaccounts/{accountId}",
"templated" : true
},
"v1:parkLocationStatus" : {
"href" : "/api/v1/presencestatus/parklocationstatus/{accountId}", "templated" : true
},
"v1:phone" : {
"href" : "/api/v1/tenants/{tenantId}/phones/{phoneId}",
"templated" : true
},
"v1:presenceEventAccount" : {
"href" : "/api/v1/subscriptions/ws/{webSocketId}/subscriptionsets/{subscriptionSetId}/ presenceeventaccounts/{accountId}",
"templated" : true
},
"v1:presenceStatusByExtension" : {
"href" : "/api/v1/presencestatus/tenants/{tenantId}/extensions/{extension}", "templated" : true
},
"v1:priGroup" : {
"href" : "/api/v1/prigroups/{priGroupId}", "templated" : true
},
"v1:route" : {
"href" : "/api/v1/routes/{routeId}", "templated" : true
},
"v1:rtpProxyServer" : {
"href" : "/api/v1/rtpproxyservers/{rtpProxyServerId}", "templated" : true
},
"v1:serviceProvider" : {
"href" : "/api/v1/serviceproviders/{serviceProviderId}", "templated" : true
},
"v1:staticSite" : {
"href" : "/api/v1/tenants/{tenantId}/staticsites/{siteId}", "templated" : true
},
"v1:subscriptionSets" : {
"href" : "/api/v1/subscriptions/ws/{webSocketId}/subscriptionsets/{subscriptionSetId}", "templated" : true
},
"v1:tenant" : {
"href" : "/api/v1/tenants/{tenantId}", "templated" : true
},
"v1:user" : {
"href" : "/api/v1/tenants/{tenantId}/users/{extension}", "templated" : true
},
"v1:voicemailServer" : {
"href" : "/api/v1/voicemailservers/{voicemailServerId}", "templated" : true
},
"v1:zone" : {
"href" : "/api/v1/zones/{zoneId}", "templated" : true
}
}
}
Table of Contents
Modify List Request Description
This relation returns a list of enum values used by the API. Clients can use the items in the list to view possible values for enumerated properties used in the API.
GET
View User List HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
Telco User with Tenant Scope | GET |
TenantAdmin User | GET |
User | GET |
Location | GET |
The Enum list resource provides a list of Enum resources.
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Name | Description | Visibility | Expandable |
parkLocationRange | Values for configuring the Tenant’s Park Location Range setting. See Tenant AdminSettings resource. | all | n |
extensionType | Supported Extension types. See the Extension resource. | all | n |
directorySearchType | Values for the tenant Directory Search Type setting. See Tenant Details resource. | all | n |
subscriberClidType | The possible origins for setting the CLID for a User or Location. | all | n |
parameterType | Used in error messages that contain substitutable parameters, this enum indicates the type of each parameter. | all | n |
callparkLocation Algorithm | Values for the Tenant’s Callpark Location Algorithm setting. See Tenant Details resource. | all | n |
signallingProtocol | Supported values for a phone’s signalling protocol. | all | n |
Name | Description | Visibility | Expandable |
autoAttendantAction Type | Actions that can be assigned to keys within an auto attendant. | all | n |
callRequest | Supported values for making a request to handle a call. See Active Calls resource. | all | n |
callForwardTarget Type | Supported values for specifying the Call Forward (Immediate) Target. See User/Location Features resource for details. | all | n |
callTargetType | Supported values for configuring the Call Forward No Answer call target type. See the User/ Location Features or Call Group details resource for details. | all | n |
callGroupType | Supported values for Call Group types. See the Tenant CallGroups resource for details. | all | n |
ringBehaviourType | Possible values for the Ring Behaviour Type of broadcast and hunt call groups. See the Tenant Call Groups resource for details. | all | n |
huntGroupType | Possible values for the Hunt Group Type for hunt call groups. See the Tenant Call Groups resource for details. | all | n |
vvxBlfRingToneType | Possible values for configuring the BLF ring on a VVX phone. See the User/Location Polycom Ring Tones resource for details. | all | n |
Name | Description | Visibility | Expandable |
mitelRingToneType | Possible values for configuring the Ring Tones on a Mitel phone. See the User/Location Mitel Ringtones resource for details. | all | n |
deviceIdType | Supported values for making a request to handle a call. See Active Calls resource. | all | n |
callDestinationType | Supported values for configuring the SCR call destination type. See the SCR related target resources for details. | all | n |
clidMatchType | Supported values for configuring the SCR CLID condition match type. See the SCR related CLID condition resources for details. | all | n |
keyFeatureDataType | Supported values for key feature data type. See the KeyFeature resource for details. | all | n |
keyFeatureData Require | Supported values for key feature data require type. See the KeyFeature resource for details. | all | n |
pinNotification MethodType | Supported values PIN notification type. See the PinNotificationMethod resource for details. | all | n |
routeType | Supported values of route type. See the Route resource for details. | all | n |
classOfService | Supported values of class of service. See the DialPlan Entry resource for details. | all | n |
Name | Description | Visibility | Expandable |
numberOfDigitsType | Supported values of number of digits type. See the DialPlanEntry resource for details. | all | n |
phoneSiteAssignment Type | Supported values of class of phone site assignment type. See the PhoneToSite resource for details. | all | n |
sipPhoneNameDefault Type | User agent or custom. | all | n |
codecType | The voice encoding types available on the system. | all | n |
packetization IntervalType | The packetization intervals available on the system. This is the number of speech frames per packet. | all | n |
moreHelpLinkType | Possible values for the more help link type. | all | n |
voicemailBoxState Type | Possible values for the voicemail box state type. | all | n |
gatewayType | Possible values for the gateway type. | all | n |
mediaServerType | Possible values for the media server type. | all | n |
conferenceServerType | Possible values for the conference server type. | all | n |
minetSiteIPAssign Type | Possible values for the minet site IP assign type. | all | n |
supportLink VisibilityType | Possible values for the support link visibility type. | all | n |
Name | Description | Visibility | Expandable |
supportLinkType | Possible values for the support link type. | all | n |
telcoGroupPermission Type | Possible values for permissions for Telco Groups and Users. | all | n |
presenceStateRouting OverrideType | list of types available for Presence State Routing Override. | all | n |
dhcpOptionValueType | Possible values for DHCP option value types. | all | n |
alertPriority | Supported values for the priority of an alert message. See Send Message resource. | all | n |
phoneMessageAlert Type | The options for Phone Message Alert Type. | all | n |
runningTaskType | The options for Running Task Type. | all | n |
runningTaskState | The options for Running Task State. | all | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 6894
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/enums"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/enums/{enumName}", "templated" : true
} ]
},
"_embedded" : { "pinNotificationMethodType" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/enums/pinnotificationmethodtype"
}
}
} ],
"huntGroupType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/huntgrouptype"
}
}
} ],
"callTargetType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/calltargettype"
}
}
} ],
"deviceIdType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/deviceidtype"
}
}
} ],
"presenceStateRoutingOverrideType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/presencestateroutingoverridetype"
}
}
} ],
"callparkLocationAlgorithm" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/callparklocationalgorithm"
}
}
} ],
"callDestinationType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/calldestinationtype"
}
}
} ],
"alertPriority" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/alertpriority"
}
}
} ],
"codecType" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/enums/codectype"
}
}
} ],
"autoAttendantActionType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/autoattendantactiontype"
}
}
} ],
"gatewayType" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/enums/gatewaytype"
}
}
} ],
"subscriberClidType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/subscriberclidtype"
}
}
} ],
"conferenceServerType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/conferenceservertype"
}
}
} ],
"voicemailBoxStateType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/voicemailboxstatetype"
}
}
} ],
"runningTaskState" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/runningtaskstate"
}
}
} ],
"telcoGroupPermissionType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/telcogrouppermissiontype"
}
}
} ],
"callGroupType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/callgrouptype"
}
}
} ],
"clidMatchType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/clidmatchtype"
}
}
} ],
"packetizationIntervalType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/packetizationintervaltype"
}
}
} ],
"routeType" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/enums/routetype"
}
}
} ],
"callForwardTargetType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/callforwardtargettype"
}
}
} ],
"numberOfDigitsType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/numberofdigitstype"
}
}
} ],
"classOfService" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/classofservice"
}
}
} ],
"ringBehaviourType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/ringbehaviourtype"
}
}
} ],
"signallingProtocol" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/signallingprotocol"
}
}
} ],
"parameterType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/parametertype"
}
}
} ],
"keyFeatureDataRequire" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/keyfeaturedatarequire"
}
}
} ],
"supportLinkType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/supportlinktype"
}
}
} ],
"directorySearchType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/directorysearchtype"
}
}
} ],
"vvxBlfRingToneType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/vvxblfringtonetype"
}
}
} ],
"keyFeatureDataType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/keyfeaturedatatype"
}
}
} ],
"dhcpOptionValueType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/dhcpoptionvaluetype"
}
}
} ],
"phoneSiteAssignmentType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/phonesiteassignmenttype"
}
}
} ],
"mitelRingToneType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/mitelringtonetype"
}
}
} ],
"minetSiteIPAssignType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/minetsiteipassigntype"
}
}
} ],
"moreHelpLinkType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/morehelplinktype"
}
}
} ],
"parkLocationRange" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/parklocationrange"
}
}
} ],
"extensionType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/extensiontype"
}
}
} ],
"supportLinkVisibilityType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/supportlinkvisibilitytype"
}
}
} ],
"sipPhoneNameDefaultType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/sipphonenamedefaulttype"
}
}
} ],
"callRequest" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/enums/callrequest"
}
}
} ],
"phoneMessageAlertType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/phonemessagealerttype"
}
}
} ],
"mediaServerType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/mediaservertype"
}
}
} ],
"runningTaskType" : [ { "_links" : {
"self" : {
"href" : "/api/v1/enums/runningtasktype"
}
}
} ]
}
}
This is a server-managed list and does not support element creation.
Table of Contents
Sample GET Response Description
The Enum Resource provides a list of possible values for an enumerated type.
For each property in the API that uses an enumerated type, the list of possible values for the property can be looked up in the enum dictionary. Each value list follows a consistent format, providing the real value that is used in the API as well as a suggested label for the value.
GET
View Enum Details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
GET
Telco User with Tenant Scope
GET
TenantAdmin User
GET
User
GET
Location
GET
Path
Type
Description
Visibility
values[]
Array
Each element of the values array represents an enum value and a suggested label that clients can use to present to the end user.
all
values[].name
String
Name is the (enum) value that is used in the resource that is referencing the enum.
all
values[].default Label
String
The default label property provides a string that can be used for presenting to the user. Localization is not currently supported.
all
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 441
{
"_links" : {
"self" : {
"href" : "/api/v1/enums/extensiontype"
}
},
"values" : [ {
"name" : "userExt", "defaultLabel" : "userExt"
}, {
"name" : "locationExt", "defaultLabel" : "locationExt"
}, {
"name" : "acdExt", "defaultLabel" : "acdExt"
}, {
"name" : "groupExt", "defaultLabel" : "groupExt"
}, {
"name" : "autoAttendantExt", "defaultLabel" : "autoAttendantExt"
} ]
}
Event Management resources include:
Event Subscription Sets List Resource—returns a list of Subscriptions Sets associated with a specific WebSocket belonging to the requesting user.
SubscriptionSets Resource—used to register for and manage the delivery of events on the WebSocket.
CallEventSubscriptions—exists within a Subscription Set, and manages the accounts for which Call Events are issued.
Call Event Account Resource—identifies an Account for subscribing to Call Events.
EmergencyCallAlertEventSubscriptions—exists within a Subscription Set, and manages subscriptions for the Emergency Call Alert Events.
PresenceEventSubscriptions—exists within a Subscription Set, and manages the accounts for which Presence Events are issued.
Presence Event Account Resource—returns a list of the Accounts for which there are Presence Event Subscriptions on this Subscription Set.
ParkLocationEventSubscriptions—exists within a Subscription Set, and manages the Park Locations for which ParkLocation Events are issued.
Park Location Event Account Resource—returns a list of the Park Locations for which there are ParkLocation Event Subscriptions on this Subscription Set.
Event Subscription Sets List Resource
Table of Contents
This resource returns a list of Subscriptions Sets associated with a specific WebSocket that belong to the requesting user, and is used to create a new Subscription Set to deliver events over the indicated WebSocket.
Subscription Sets exist and must be created in the context of a WebSocket. When a new subscription set is created a UUID will be generated to identify it. Once the Subscription Set is created, the client must register for the events it wishes to receive as part of the set.
GET
View Subscription Set List HEAD
Get just the header response POST
Create a new Subscription Set
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope | GET, POST |
TenantAdmin Call Control User | GET, POST |
Non-admin Call Control User | GET, POST |
The Event Subscription Sets list returns a list of SubscriptionSets resources.
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Name | Description | Visibility | Expandable |
Each element of the subscriptionSets array represents a single subscriptionSet resource, and indicates the UUID and tenantId of the subscription Set. | ScopedTelco(CallControl), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 2085
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/subscriptionsets"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/subscriptionsets/
{subscriptionSetId}", "templated" : true
} ]
},
"_embedded" : { "subscriptionSets" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
},
"v1:callEventSubscriptions" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts"
} ],
"v1:emergencyCallAlertEventSubscriptions" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/alertevent/emergencycall"
} ],
"v1:parkLocationEventSubscriptions" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts"
} ],
"v1:parkLocationStatusBySubscriptionSet" : [ {
"href" : "/api/v1/presencestatus/parklocationstatus/
ws/300f5121-17e0-477e-915a-830121cdc5d7/subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
} ],
"v1:presenceEventSubscriptions" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts"
} ],
"v1:presenceStatusBySubscriptionSet" : [ {
"href" : "/api/v1/presencestatus/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
} ]
},
"subscriptionSetId" : "5817dfce-61a8-4c37-ab6d-d72ec78219e8", "tenantId" : 21375
} ]
}
}
Use a POST request to create a new SubscriptionSet.
No properties are required in the payload of the POST request.
POST /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/subscriptionsets HTTP/1.1 Content-Type: application/x-www-form-urlencoded; charset=ISO-8859-1
Host: localhost:34989
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1582
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
},
"v1:callEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts"
},
"v1:emergencyCallAlertEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/alertevent/emergencycall"
},
"v1:parkLocationEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts"
},
"v1:parkLocationStatusBySubscriptionSet" : {
"href" : "/api/v1/presencestatus/parklocationstatus/
ws/300f5121-17e0-477e-915a-830121cdc5d7/subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
},
"v1:presenceEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts"
},
"v1:presenceStatusBySubscriptionSet" : {
"href" : "/api/v1/presencestatus/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
}
},
"subscriptionSetId" : "5817dfce-61a8-4c37-ab6d-d72ec78219e8", "tenantId" : 21375
}
Table of Contents
Sample GET Response Description
Each Subscription Set resource is used to register for and manage the delivery of events on the WebSocket. It holds two collections of eventAccounts: one represents the subscribed accounts for call events, and one represents the subscribed accounts for presence events.
A Subscription Set is associated with the user who creates it, and also the tenant that the user is a member of. After creating the subscription set, the client must
explicitly register to receive the events that it is interested in by adding accounts to the appropriate list: the server does not automatically add any event subscriptions.
When creating event subscriptions within a set, all Accounts must be associated with the tenant associated with the subscription set. A TenantAdmin may subscribe to events for any Account (user) within the tenant, but a non-admin user may only subscribe to events related to his own extension.
GET
View Subscription Set details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope | GET, POST |
TenantAdmin Call Control User | GET, POST |
Non-admin Call Control User |
GET, POST |
Path | Type | Description | Visibility |
subscriptionSetId | String | The UUID that uniquely identifies this Subscription Set. | TenantAdmin, User |
tenantId | Number | The unique identifier of the Tenant for which subscriptions may be created within this SubscriptionSet. | TenantAdmin, User |
Relation | Description | Visibility |
v1:callEventSubscriptions | Use this link to query or modify the list of subscribed accounts for Call Events on this Subscription Set. | ScopedTelco(CallControl), Tenant Admin, User |
v1:emergencyCallAlertEvent Subscriptions | Use this link to query or modify the subscription of Emergency Call Alert Event on this Subscription Set. | ScopedTelco(CallControl), Tenant Admin |
v1:presenceEvent Subscriptions | Use this link to query or modify the list of subscribed accounts for Presence Events on this Subscription Set. | ScopedTelco(CallControl), Tenant Admin, User |
v1:presenceStatusBy SubscriptionSet | Use this link to query the current Presence Status of all accounts subscribed for Presence Events on this Subscription Set. | ScopedTelco(CallControl), Tenant Admin, User |
v1:parkLocationEvent Subscriptions | Use this link to query or modify the list of subscribed accounts for Park Location Events on this Subscription Set. | ScopedTelco(CallControl), Tenant Admin, User |
Relation | Description | Visibility |
v1:parkLocationStatusBy SubscriptionSet | Use this link to query the current Park Location Status of all accounts subscribed for Park Location Events on this Subscription Set. | ScopedTelco(CallControl), Tenant Admin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1582
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
},
"v1:callEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts"
},
"v1:emergencyCallAlertEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/alertevent/emergencycall"
},
"v1:parkLocationEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts"
},
"v1:parkLocationStatusBySubscriptionSet" : {
"href" : "/api/v1/presencestatus/parklocationstatus/
ws/300f5121-17e0-477e-915a-830121cdc5d7/subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
},
"v1:presenceEventSubscriptions" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts"
},
"v1:presenceStatusBySubscriptionSet" : {
"href" : "/api/v1/presencestatus/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
}
},
"subscriptionSetId" : "5817dfce-61a8-4c37-ab6d-d72ec78219e8", "tenantId" : 21375
}
Call Events Subscriptions List
Table of Contents
Add Element Request Description
This relation returns a list of the Accounts for which there are Call Event Subscriptions on this Subscription Set.
GET
View Call Event Subscriptions HEAD
Get just the header response PUT
Replace the list of subscribed accounts on the server with the list provided in the request.
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope | GET, PUT |
TenantAdmin Call Control User | GET, PUT |
Non-admin Call Control User | GET, PUT |
The Call Events Subscriptions list returns a list of Call Event Account resources.
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of valid extensions for the tenant which can be used for presence status subscription. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Name | Description | Visibility | Expandable |
Each Account representation in the event Account array reflects an extension for which events are generated. | TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 995
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/{tenantId}/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts/{accountId}",
"templated" : true
} ]
},
"_embedded" : { "eventAccount" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts/3235@21375"
}
},
"accountId" : "3235@21375"
} ]
}
}
Use a PUT request specifying an array of AccountIds to create or fully replace the current set of call event subscriptions. Providing an empty list will have the effect of deleting all call event subscriptions on this subscription set.
The following properties are processed as part of each element in the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
eventAccounts | Array | An array of Account Ids | TenantAdmin, User | Required. The value must be an array of valid Account Ids in format <ext>@ <tenantId>. Empty array can be used to remove all current subscribed account. |
scope | Null | used for Park Location events | TenantAdmin, User | Not Required for call events |
PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:34921 Content-Length: 58
{
"scope" : null,
"eventAccounts" : [ "3235@21375" ]
}
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 995
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/{tenantId}/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts/{accountId}",
"templated" : true
} ]
},
"_embedded" : { "eventAccount" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts/3235@21375"
}
},
"accountId" : "3235@21375"
} ]
}
}
This list does not directly support adding an element. A new element can be created in the list by using a PUT request to create a Call Event Account resource.
Table of Contents
Sample PUT Response Description
This resource identifies an Account for subscribing to Call Events. Issue a PUT request to this resource, specifying the Account in the URI, in order to start subscribing to call events for the account, or DELETE it to stop receiving call events.
Any account being subscribed to must belong to the same tenant that was used to create the subscription set. Permission to subscribe to events for a specific account depend upon the Authority of the requesting user: non-admin users may subscribe to call events only for their own extension, while other users may subscribe to call events for any extension within the tenant. Those with permission can subscribe to
multiple users at once using the format "ALL_USERS@<tenantId>". Similarly, multiple accounts can be subscribed to using the terms: ALL_CALL_GROUP_EXTENSIONS, ALL_AA_EXTENSIONS, and ALL_ACD_EXTENSIONS. For for all users and locations, all broadcast/hunt/rollover groups, all AAs and all ACD queues within a tenant, register for ALL.
PUT
Add or replace an existing Account in the Subscription set DELETE
Remove an Account from the Subscription set
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope
PUT, DELETE
TenantAdmin Call Control User
PUT, DELETE
Non-admin Call Control User
PUT, DELETE
Path
Type
Description
Visibility
accountId
String
The accountId identifies an account which is registered for Call Events within this Subscription Set.
TenantAdmin, User
The PUT request to this resource causes a new subscription to be added if there was no existing subscription for that account.
The PUT request does not require a payload.
PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts/3235@21375 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:34921
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 235
{
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts/3235@21375"
}
},
"accountId" : "3235@21375"
}
Emergency Call Alert Events Subscriptions
Table of Contents
Sample PUT Response Description
This relation returns the subscription status of Emergency Call Alert Event Subscription on this Subscription Set.
GET
View Emergency Call Alert Event Subscription HEAD
Get just the header response PUT
Update the status on the server with the provided value in the request.
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope
GET, PUT
TenantAdmin Call Control User
GET, PUT
The Emergency Call Alert Events Subscription returns the status of subscription.
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 223
{
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/alertevent/emergencycall"
}
},
"allSites" : false
}
Use a PUT request to specify the status of subscription for Emergency Call Alert Event subscription.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
allSites
Boolean
This will enable/
TenantAdmin
Required. The value
disable Emergency
must be true or false.
Call Alert Event
subscription for all
sites of tenant within
this Subscription Set.
PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/alertevent/emergencycall HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:37181 Content-Length: 23
{
"allSites" : true
}
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 222
{
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/alertevent/emergencycall"
}
},
"allSites" : true
}
Presence Events Subscriptions List
Table of Contents
Add Element Request Description
This relation returns a list of the Accounts for which there are Presence Event Subscriptions on this Subscription Set.
GET
View Presence Event Subscriptions HEAD
Get just the header response PUT
Replace the list of subscribed accounts on the server with the list provided in the request.
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope | GET, PUT |
TenantAdmin Call Control User | GET, PUT |
Non-admin Call Control User | GET, PUT |
The Presence Events Subscriptions list returns a list of Presence Event Account resources.
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of valid extensions for the tenant which can be used for presence status subscription. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Name | Description | Visibility | Expandable |
Each element in the event Account array reflects an account for which presence events are generated. | TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1139
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/{tenantId}/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/{accountId}",
"templated" : true
} ]
},
"_embedded" : { "eventAccount" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/3235@21375"
},
"v1:presenceStatusByExtension" : [ {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/3235"
} ]
},
"accountId" : "3235@21375"
} ]
}
}
Use a PUT request specifying an array of AccountIds to initialize or fully replace the current set of presence event subscriptions. Providing an empty list will have the effect of the deleting all presence event subscriptions on this list.
The following properties are processed as part of each element in the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
eventAccounts | Array | An array of Account Ids | TenantAdmin, User | Required. The value must be an array of valid Account Ids in format <ext>@ <tenantId>. Empty array can be used to remove all current subscribed account. |
scope | Null | used for Park Location events | TenantAdmin, User | Not Required for call events |
PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38547 Content-Length: 58
{
"scope" : null,
"eventAccounts" : [ "3235@21375" ]
}
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1139
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/{tenantId}/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/{accountId}",
"templated" : true
} ]
},
"_embedded" : { "eventAccount" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/3235@21375"
},
"v1:presenceStatusByExtension" : [ {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/3235"
} ]
},
"accountId" : "3235@21375"
} ]
}
}
This list does not directly support adding an element. A new element can be created in the list by using a PUT request to create a Presence Event Account resource.
Presence Event Account Resource
Table of Contents
This resource identifies an Account for subscribing to Presence Events. Issue a PUT request to this resource, specifying the Account in the URI, in order to start subscribing to presence events for the account, or DELETE it to stop receiving presence events.
Any account being subscribed to must belong to the same tenant that was used to create the subscription set. Permission to subscribe to events for a specific account depend upon the Authority of the requesting user: non-admin users may subscribe to presence events only for their own extension, while other users may subscribe to presence events for any extension within the tenant.
Those with permission can subscribe to multiple users at once using the format "ALL_USERS@<tenantId>". Similarly, multiple accounts can be subscribed to using the terms: ALL_CALL_GROUP_EXTENSIONS, ALL_AA_EXTENSIONS, and
ALL_ACD_EXTENSIONS. For for all users and locations, all broadcast/hunt/rollover groups, all AAs and all ACD queues within a tenant, register for ALL.
PUT
Add or replace an existing Account in the Subscription list DELETE
Remove an Account from the Subscription list
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope | PUT, DELETE |
TenantAdmin Call Control User | PUT, DELETE |
Non-admin Call Control User | PUT, DELETE |
Path | Type | Description | Visibility |
accountId | String | The accountId identifies an account which is registered for Presence Events within this Subscription Set. | TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 462
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/3235@21375"
},
"v1:presenceStatusByExtension" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375"
}
This resource has no configuration properties, so the PUT request simply serves to create or refresh the presence events subscription for the account.
The PUT request does not require a payload.
PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/3235@21375 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38547
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 462
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/3235@21375"
},
"v1:presenceStatusByExtension" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375"
}
Park Location Events Subscriptions List
Table of Contents
Add Element Request Description
This relation returns a list of the Park Location Accounts for which there are Park Location Event Subscriptions on this Subscription Set.
GET
View Park Location Event Subscriptions HEAD
Get just the header response PUT
Replace the list of subscribed accounts on the server with the list provided in the request.
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope | GET, PUT |
TenantAdmin Call Control User | GET, PUT |
Non-admin Call Control User | GET, PUT |
The Park Location Events Subscriptions list returns a list of Park Location Event Account resources.
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Name | Description | Visibility | Expandable |
The updated set of accounts for which park location events are generated. | TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 989
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts/{accountId}",
"templated" : true
} ]
},
"_embedded" : { "eventAccount" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts/PL1@21375"
},
"v1:parkLocationStatus" : [ {
"href" : "/api/v1/presencestatus/parklocationstatus/PL1@21375"
} ]
},
"accountId" : "PL1@21375"
} ]
}
}
Use a PUT request to specify the Park Locations that should be included in the events on this subscription set. The "scope" field is used to specify the intent of the request.
If scope = "all", then all valid park locations for the tenant will be included. If scope = "none", then any current park locations will be removed. If the scope = "all", then an array of Park Location AccountIds of interest must be included.
The following properties are processed as part of each element in the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
scope | String | used for Park | TenantAdmin, User | Required. The value |
Location events to | must be all, none, | |||
define whether the | or set. If the value | |||
subscription is for | is all, an event will | |||
all, none, or a subset | be reported any time | |||
of available park | a call is parked or | |||
locations | retrieved on this | |||
tenant. A value of | ||||
none removes all | ||||
park locations from | ||||
the subscription set. | ||||
A value of set is | ||||
used to subscribe | ||||
for specific park | ||||
locations as defined | ||||
in the eventAccounts | ||||
eventAccounts | Array | An array of Account | TenantAdmin, User | Required only if |
Ids | the scope = set. | |||
The value must be | ||||
an array of valid | ||||
Account Ids in format | ||||
<PLnumber>@ | ||||
<tenantId>. |
PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:35029 Content-Length: 58
{
"scope" : "set",
"eventAccounts" : [ "PL1@21375" ]
}
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 989
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts/{accountId}",
"templated" : true
} ]
},
"_embedded" : { "eventAccount" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts/PL1@21375"
},
"v1:parkLocationStatus" : [ {
"href" : "/api/v1/presencestatus/parklocationstatus/PL1@21375"
} ]
},
"accountId" : "PL1@21375"
} ]
}
}
This list does not directly support adding an element. A new element can be created in the list by using a PUT request to create a Park Location Event Account resource.
Park Location Event Account Resource
Table of Contents
Sample PUT Response Description
This resource identifies an Account for subscribing to Park Location Events. Issue a PUT request to this resource, specifying the Account in the URI, in order to start
subscribing to park location events for the account, or DELETE it to stop receiving park location events.
Any park location account being subscribed to must belong to the same tenant that was used to create the subscription set. A user can subscribe to any park locations associated with their tenant.
PUT
Add or replace an existing Account in the Subscription list DELETE
Remove an Account from the Subscription list
Permitted Authorities (as defined in API Guide)
Telco Call Control User with Tenant Scope
PUT, DELETE
TenantAdmin Call Control User
PUT, DELETE
Non-admin Call Control User
PUT, DELETE
Path
Type
Description
Visibility
accountId
String
The accountId identifies a park location account which is registered for Events within this Subscription Set.
TenantAdmin, User
This resource has no configuration properties, so the PUT request simply serves to create the park location event subscription for the account.
The PUT request does not require a payload.
PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts/PL1@21375
HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:35029
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 456
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts/PL1@21375"
},
"v1:parkLocationStatus" : {
"href" : "/api/v1/presencestatus/parklocationstatus/PL1@21375"
}
},
"accountId" : "PL1@21375"
}
Call Management resources include:
ActiveCalls Resource—can be used to get a list of current calls for the requesting user, to initiate new calls, and to retrieve parked calls.
Call Resource—can be used to answer, hang up, deflect, transfer, hold, resume and park an active call.
Table of Contents
The ActiveCalls list returns a list of current calls for the requesting user, and is used to make a new call or retrieve a parked call.
GET
View Call List HEAD
Get just the header response POST
Make a Call, Retrieve a parked call
Permitted Authorities (as defined in API Guide)
TenantAdmin Call Control User | GET, POST |
Non-admin Call Control User | GET, POST |
The ActiveCalls list resource provides a list of Call resources in summarized form.
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1options:deviceIdType | List of valid device Id Types. | all |
Name | Description | Visibility | Expandable |
Each element of the active Calls list represents a single active call and includes information about the parties involved in the call. | TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 816
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/calls"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/calls/{callObserverId}", "templated" : true
} ],
"v1options:deviceIdType" : [ {
"href" : "/api/v1/enums/deviceidtype"
} ]
},
"_embedded" : {
"call" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/calls/3501-0-1669924620258-3:4332@21375"
}
},
"callId" : "3501-0-1669924620258-3:4332@21375", "from" : "4332@21375",
"smdrCallId" : "3501-0-1669924620258-3-1",
"to" : "3235"
} ]
}
}
Use POST to initiate a call from the requesting user.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints | Default Value |
request | String | The desired action for this call: makeCall or retrieveParked Call. | TenantAdmin, User | Optional | "makeCall" |
from | String | The accountId requesting the call. | TenantAdmin, User | Required. Must be a valid account in format <ext>@ <tenantId>. | n/a |
to | String | The digits to dial to place the call, including any prefixes required by the dial plan. | TenantAdmin, User | Required for MakeCall. Not used for retrieve ParkedCall | n/a |
deviceId | String | The device which should be used for the call request. | TenantAdmin, User | Optional. If provided, must be the unique identifier of a device (phoneId) that the user is logged into, or a PSTN number, or the string literal "twinningDevice". Only device is supported for retrieve. | The user’s default Click-to-call device. |
Path | Type | Description | Permission | Constraints | Default Value |
deviceIdType | String | Indicates the type of device that is originating the call. | TenantAdmin, User | Optional. If provided, must reflect the value provided in the deviceId property. | device |
playPrompt | String | If the deviceType Id is external, indicates if a prompt should be played on the originating device before dialing the target. | TenantAdmin, User | Optional. If provided, must be true or false. | If not specified, the subscriber’s clickToCall ConfirmBefore Dial feature setting will be applied. |
featureData | String | Used for the Park Location Number in a Park Retrieve. | TenantAdmin, User | Optional. Required for Park Retrieve. Not used for MakeCall | n/a |
A successful POST returns the identifier of the newly-created Call resource.
Path | Type | Description | Visibility |
callId | String | The CallObserverId for the call. This is the ID of the call as it appears in the Call Event stream. | TenantAdmin, User |
smdrCallId | String | This is the smdr call id of the call and it appears in the Call Event stream. | TenantAdmin, User |
POST /api/v1/calls HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:43089
Content-Length: 148
{
"request" : "makeCall", "from" : "4332@21375", "to" : "3235",
"deviceIdType" : "device", "deviceId" : "4564", "playPrompt" : "false"
}
HTTP/1.1 201 Created
Location: /api/v1/calls/1234-1486070433518-136:4332@21375 Content-Type: application/hal+json
Content-Length: 212
{
"_links" : {
"self" : {
"href" : "/api/v1/calls/1234-1486070433518-136:4332@21375"
}
},
"callId" : "1234-1486070433518-136:4332@21375", "smdrCallId" : "1234-1486070433518-136:4332@21375"
}
Table of Contents
The Call resource describes the current state of an active call, and supports the ability to answer a ringing call, hangup an active call, hold, resume, transfer, deflect and park.
A call is referenced by its callId. Note that each party in a call has a unique callId.
GET
View call details HEAD
Get just the header response POST
Change the state of an existing call, e.g. answer or hangup.
Permitted Authorities (as defined in API Guide)
TenantAdmin Call Control User | GET, POST |
Non-admin Call Control User | GET, POST |
Path | Type | Description | Visibility |
callId | String | The call observer id that uniquely identifies this participant’s leg of the call. | TenantAdmin, User |
smdrCallId | String | The smdr call id that uniquely identifies smdr record of the call this participant’s involved. | TenantAdmin, User |
from | String | The number of the call originator. | TenantAdmin, User |
to | String | The number or accountId that the originator intended to call. | TenantAdmin, User |
callState | String | The current state of the call. | TenantAdmin, User |
startTime | String | The start time of the call, in ISO8601 format. | TenantAdmin, User |
answerTime | String | The time that the call was answered, in ISO8601 format. | TenantAdmin, User |
talkDuration | String | The current measured duration of the call, in ISO8601 format. | TenantAdmin, User |
digitsDialed | String | The number that was dialed by the call originator. | TenantAdmin, User |
redirected | Boolean | This property indicates whether the call reached its target directly, or whether it was directed to this target via another method. | TenantAdmin, User |
Path | Type | Description | Visibility |
transferred | Boolean | This property indicates whether the call reached its current target directly or whether it was transferred from another number. | TenantAdmin, User |
callParties | Array | The callParties property provides a list of the current participants in the call. Internal numbers are listed using their AccountId, external numbers are listed using their CLID. | TenantAdmin, User |
Relation | Description | Visibility |
v1options:callRequest | The POST request to modify a call requires a callRequest value. Options for this value can be obtained by following this link. | all |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 712
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/calls/3501-0-1669924617622-3:4332@21375"
},
"v1options:callRequest" : {
"href" : "/api/v1/enums/callrequest"
}
},
"answerTime" : "2022-12-01T14:57:38.630-05:00", "callId" : "3501-0-1669924617622-3:4332@21375",
"callParties" : [ { }, { } ], "callState" : "connected", "digitsDialed" : "3235", "from" : "4332@21375",
"redirected" : false,
"smdrCallId" : "3501-0-1669924617622-3-1", "startTime" : "2022-12-01T14:57:08.630-05:00",
"talkDuration" : "PT45S", "to" : "3235",
"transferred" : false
}
Use a POST request to modify the state of an existing call. An example of a hangup request is provided below.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints | Default Value |
callRequest | String | The desired action for this call: answer Call, hangup Call, deflect Call, holdCall, resumeHeldCall, transfer, parkCall. | n/a | Required. Possible values are specified in the CallRequest Type enum. | n/a |
myPartyId | String | The accountId requesting the call update. | n/a | Required for all requests with the exception of hangupCall. Must be a valid account in format <ext>@ <tenantId>. | n/a |
deviceId | String | The device which should be used for the call request. | n/a | Optional for Answer and ResumeHeld. Not checked for other requests. If provided, must be the unique identifier of a device that the user is logged into. | If not specified, the user’s default Click-to-Call phone will be used as the target device for the request, or the device already in use for this call. |
otherCallId | String | The callId of the second call to be used for the call request. | n/a | Required for transfer. Not checked for other requests. If provided, must be a callObserver | n/a |
Path | Type | Description | Permission | Constraints | Default Value |
Id referencing a different call involving the user | |||||
featureData | String | Data to be used for the call feature request. . | n/a | For call park, it can be used for the park location number. If not provided for call park, the system chooses the park location. | n/a |
The response to a hangupCall request returns a Call Resource object (see above). The reponse to any other Modify request will return an empty response.
Sample POST Request - Hangup Call
POST /api/v1/calls/3501-0-1669924617622-3%3A4332%4021375 HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:43817
Content-Length: 64
{
"callRequest" : "hangupCall", "myPartyId" : "4332@21375"
}
Sample POST Response - Hangup Call
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 626
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/calls/3501-0-1669924617622-3:4332@21375"
},
"v1options:callRequest" : {
"href" : "/api/v1/enums/callrequest"
}
},
"callId" : "3501-0-1669924617622-3:4332@21375",
"callParties" : [ { }, { } ], "dialingDeviceId" : "198",
"digitsDialed" : "3235",
"from" : "4332",
"redirected" : false,
"smdrCallId" : "1234-1486070433518-136", "startTime" : "2017-02-09T16:17:32.307-05:00", "to" : "3235",
"transferred" : false
}
Presence Status resources include:
PresenceStatusByExtension—the current Presence Status of an account with this extension.
PresenceStatusBySubscriptionSet—the current Presence Status of any accounts subscribed for presence events on this subscription set.
PresenceStatusTenantAccounts—the current Presence Status of all accounts in this tenant.
PresenceStatusTenantParkLocations—the current Presence Status of all park locations in this tenant.
PresenceStatusParkLocation—the current Presence Status of the specified park location in this tenant.
On startup or initial connection, the client can use the PresenceStatusBySubscriptionSet Resource to find the current Presence Status of all currently subscribed accounts. If an additional account is added to the subscription set after startup, the client can use the PresenceStatusByExtension Resource to retrieve the current status of that account. Use PresenceStatusByExtension or PresenceStatusTenantAccounts or PresenceStatusTenantParkLocations to query presence status anytime. A subscription set is not required.
PresenceStatusByExtension Resource
Table of Contents
Sample GET Response Description
This resource provides a mechanism to poll the silhouette API to interrogate the current presence status of an extension.
GET
View Presence Status HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
TelcoUser with Tenant Scope & Call Control permission
GET
TenantAdmin Call Control User
GET
Non-admin Call Control User
GET (self-only)
Path
Type
Description
Visibility
accountId
String
The AccountId for the the specified extension, as used for call management and event reporting through the API.
TenantAdmin, User
Path
Type
Description
Visibility
availability
String
Indicates the extension’s availability status: available or unavailable.
TenantAdmin, User
callStatus
String
Reflects whether the extension is currently involved in an active or pending call: idle or busy.
TenantAdmin, User
dndStatus
String
Indicates whether the DND feature is active for this extension: dndOn or dndOff
TenantAdmin, User
acdAvailability
String
Indicates whether the extension is an ACD Application and is currently signed in.
TenantAdmin, User
groupStatus
Object
Indicates whether the extension is currently receiving calls (i.e. Joined) the specified group
TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 287
{
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/3235"
}
},
"accountId" : "4332@21375", "acdAvailability" : "signedOutAcd", "availability" : "available", "callStatus" : "busy",
"dndStatus" : "dndOff", "groupStatus" : { }
}
PresenceStatusBySubscriptionSet Resource
Table of Contents
Sample GET Response Description
This resource provides a mechanism to poll the silhouette API to retrieve the Presence Status information for all accounts in a subscription set.
GET
View Presence Status for accounts in subscription set HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
TelcoUser with Tenant Scope & Call Control permission
GET
TenantAdmin Call Control User
GET
Non-admin Call Control User
GET
Name
Description
Visibility
Expandable
presenceStatus
Each presenceStatus element of the _embedded list contains the Presence Status of the account.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
n
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 883
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/presencestatus/ws/300f5121-17e0-477e-915a-830121cdc5d7/
subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/{extension}", "templated" : true
} ]
},
"_embedded" : { "presenceStatus" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375", "acdAvailability" : "signedOutAcd", "availability" : "unavailable", "callStatus" : "idle",
"dndStatus" : "dndOff", "groupStatus" : {
"6001" : "groupJoined",
"6041" : "groupLeft"
}
} ]
}
}
PresenceStatusTenantAccounts Resource
Table of Contents
Sample GET Response Description
This resource provides a mechanism to poll the silhouette API to retrieve the Presence Status information for all accounts in a Tenant.
GET
View Presence Status for accounts in the tenant HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
TelcoUser with Tenant Scope & Call Control permission
GET
TenantAdmin Call Control User
GET
The Presence Status Tenant Account list returns a list of presenceStatusByExtension resources.
Name
Description
Visibility
Expandable
presenceStatus
Each presenceStatus element of the _embedded list contains the Presence Status of the account.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin
n
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1082
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/{extension}", "templated" : true
} ]
},
"_embedded" : { "presenceStatus" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "acdAvailability" : "signedOutAcd", "availability" : "available", "callStatus" : "busy",
"dndStatus" : "dndOff", "groupStatus" : { }
}, {
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375", "acdAvailability" : "signedOutAcd", "availability" : "available", "callStatus" : "idle",
"dndStatus" : "dndOff", "groupStatus" : { }
} ]
}
}
PresenceStatusTenantParkLocations Resource
Table of Contents
Sample GET Response Description
This resource provides a mechanism to poll the silhouette API to retrieve the Presence Status information for all park locations in a Tenant.
GET
View Presence Status for park locations in the tenant HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
TelcoUser with Tenant Scope & Call Control permission
GET
TenantAdmin Call Control User
GET
Non-admin Call Control User
GET
Name
Description
Visibility
Expandable
parkStatus
Each presenceStatus element of the _embedded list contains the Presence Status of a park location.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
n
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 729
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/parklocations"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/presencestatus/tenants/21375/parklocations/{parkLocationNumber}", "templated" : true
} ]
},
"_embedded" : {
"parkStatus" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/parklocations/PL1"
}
},
"accountId" : "PL1@21375", "parkLocationNumber" : "1", "parkedPartyName" : "Smith", "parkedPartyNumber" : "5555555555", "status" : "busy"
} ]
}
}
PresenceStatusParkLocation Resource
Table of Contents
Sample GET Response Description
This resource provides a mechanism to poll the silhouette API to interrogate the current status of a park location.
GET
View Park Location Status HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
TelcoUser with Tenant Scope & Call Control permission
GET
TenantAdmin Call Control User
GET
Non-admin Call Control User
GET
Path
Type
Description
Visibility
accountId
String
The AccountId for the the specified park location, as used for call management and event reporting through the API.
TenantAdmin, User
Path
Type
Description
Visibility
parkLocationNumber
String
The park location number used for park and retrieve commands from the phone or API
TenantAdmin, User
status
String
Reflects whether the park location is currently in use for an active call: idle or busy.
TenantAdmin, User
parkedPartyNumber
String
The phone number of the party parked against this location. Only reported if status is busy
TenantAdmin, User
parkedPartyName
String
The name of the party parked against this location. Only reported if status is busy
TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 264
{
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/tenants/21375/parklocations/PL1"
}
},
"accountId" : "PL1@21375", "parkLocationNumber" : "1", "parkedPartyName" : "Smith", "parkedPartyNumber" : "5555555555", "status" : "busy"
}
ParkLocation Status Resources
ParkLocation Status resources include:
ParkLocationStatus—the current ParkLocation Status of a Park Location.
ParkLocationStatusBySubscriptionSet—the current ParkLocation Status of any Park Locations subscribed for ParkLocation events on this subscription set.
On startup or initial connection, the client can use the ParkLocationStatusBySubscriptionSet Resource to find the current ParkLocation Status of all currently subscribed Park Locations. If an additional Park Location is added to the subscription set after startup, the client can use the
ParkLocationStatus Resource to retrieve the current status of that Park Location. Use ParkLocationStatus to query the ParkLocation status anytime. A subscription set is not required.
Table of Contents
Sample GET Response Description
This resource provides a mechanism to poll the silhouette API to interrogate the current status of a park location.
GET
View Park Location Status HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
TelcoUser with Tenant Scope & Call Control permission
GET
TenantAdmin Call Control User
GET
Non-admin Call Control User
GET
Path
Type
Description
Visibility
accountId
String
The AccountId for the the specified park location, as used for call management and event reporting through the API.
TenantAdmin, User
Path
Type
Description
Visibility
parkLocationNumber
String
The park location number used for park and retrieve commands from the phone or API
TenantAdmin, User
status
String
Reflects whether the park location is currently in use for an active call: idle or busy.
TenantAdmin, User
parkedPartyNumber
String
The phone number of the party parked against this location. Only reported if status is busy
TenantAdmin, User
parkedPartyName
String
The name of the party parked against this location. Only reported if status is busy
TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 261
{
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/parklocationstatus/PL1@21375"
}
},
"accountId" : "PL1@21375", "parkLocationNumber" : "1", "parkedPartyName" : "Smith", "parkedPartyNumber" : "5555555555", "status" : "busy"
}
ParkLocationStatusBySubscriptionSet Resource
Table of Contents
Sample GET Response Description
This resource provides a mechanism to poll the silhouette API to retrieve the Status information for all park location accounts in a subscription set.
GET
View Park Location Status for accounts in subscription set HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
TelcoUser with Tenant Scope & Call Control permission
GET
TenantAdmin Call Control User
GET
Non-admin Call Control User
GET
Name
Description
Visibility
Expandable
parkStatus
Each presenceStatus element of the _embedded list contains the Presence Status of the account.
TenantAdmin, User
n
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 793
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/presencestatus/parklocationstatus/
ws/300f5121-17e0-477e-915a-830121cdc5d7/subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/presencestatus/parklocationstatus/{accountId}", "templated" : true
} ]
},
"_embedded" : {
"parkStatus" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/presencestatus/parklocationstatus/PL1@21375"
}
},
"accountId" : "PL1@21375", "parkLocationNumber" : "1", "parkedPartyName" : "Smith", "parkedPartyNumber" : "5555555555", "status" : "busy"
} ]
}
}
Provisioning resources include
MemberCallGroupMgmt List Resource
VoicemailLanguage List Resource
This list identifies only the major resources; each of these resources may have multiple related minor resources. For example, each user calling feature is a minor resource associated with a user, and is a distinct addressable entity.
AutoAttendantLanguage Resource
Table of Contents
Sample GET Response Description
The AutoAttendantLanguage resource provides information about a supported Auto Attendant Language.
GET
View AutoAttendantLanguage Details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
GET
TenantAdmin User
GET
Path
Type
Description
Visibility
langCode
String
The ISO-639-1 language code of the supported Auto Attendant Language.
Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin
description
String
The description of the supported Auto Attendant Language, usually is the language name.
Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 133
{
"_links" : {
"self" : {
"href" : "/api/v1/aalanguages/en"
}
},
"description" : "English", "langCode" : "en"
}
AutoAttendantLanguage List Resource
Table of Contents
This relation returns a list of supported AutoAttendantLanguage of the system.
GET
View list of AutoAttendantLanguages HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
The AutoAttendantLanguage list resource provides a list of AutoAttendantLanguage resources.
Parameter | Description | Constraints |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, |
Parameter | Description | Constraints |
and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the AutoAttendantLanguage list represents a single supported AutoAttendant Language of the system. | Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 594
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/aalanguages"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/aalanguages/{langCode}", "templated" : true
} ]
},
"count" : { "aaLanguage" : 1
},
"total" : { "aaLanguage" : 1
},
"_embedded" : {
"aaLanguage" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/aalanguages/en"
}
},
"description" : "English", "langCode" : "en"
} ]
}
}
Table of Contents
If Account Codes are enabled for this tenant, this relation describes their configuration.
This relation only exists for the tenant if explicitly enabled by the Service Provider. If Account Codes have not been enabled for this tenant, attempts to query this resource will return a 404 error response with a silhouette error code of FeatureNotEnabled.
GET
View Tenant Account Codes Settings HEAD
Get just the header response PUT
Modify Tenant Account Codes Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Path | Type | Description | Visibility |
accountCodesEnabled ByTenant | Boolean | Indicates whether the TenantAdmin has enabled account codes for their tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
accountCodesMin Length | Number | The minimum number of digits required for an Account Code for this tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
accountCodesMax Length | Number | The maximum number of digits allowed for an Account Code for this tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 199
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/accountcodes"
}
},
"accountCodesEnabledByTenant" : false, "accountCodesMaxLength" : 10,
"accountCodesMinLength" : 5
}
Use a PUT request with the following properties in the payload to modify the tenant’s account codes settings.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
accountCodes EnabledBy Tenant | Boolean | Indicates whether the TenantAdmin would enable account codes for their tenant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional | The value of current setting before update. When tenant creation, the value is false. |
accountCodes MinLength | Number | The minimum number of digits required for an Account Code for this tenant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, value should equal or greater than 1 and equal or less than accountCodes MaxLength. | The value of current setting before update. When tenant creation, the value is 1. |
accountCodes MaxLength | Number | The maximum number of digits allowed for an Account Code for this tenant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, value should equal or less than 20 and equal or greater than account CodesMinLength. | The value of current setting before update. When tenant creation, the value is 20. |
PUT /api/v1/tenants/21375/accountcodes HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:40873
Content-Length: 105
{
"accountCodesEnabledByTenant" : true, "accountCodesMinLength" : 5,
"accountCodesMaxLength" : 10
}
Table of Contents
The ACD resource provides information about a specific ACD Application. Deleting a ACD is supported.
GET
View ACD Details HEAD
Get just the header response PUT
Modify ACD Details DELETE
Remove the ACD
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
name | String | The name of the ACD. Read Only for Tenant Admin user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
extension | String | The extension to be used for the ACD. Read Only after created. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
acdId | Number | Identifier for the ACD. Read Only, system assigned. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:acdCallPermissionProfile | call permission profile management. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The CallPermissionProfile currently associated with the ACD. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 646
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/acds/136"
},
"v1:acdCallPermissionProfile" : {
"href" : "/api/v1/tenants/21375/acds/136/callpermissionprofile"
}
},
"acdId" : 136,
"extension" : "5001",
"name" : "Sales ACD", "_embedded" : {
"callPermissionProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116"
}
},
"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"
}
}
}
Use a PUT request to modify the properties of a ACD.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the ACD. Only Telco User can make change. | Telco(Tenant BasicOrAdvance Management) | Max 50 chars. |
PUT /api/v1/tenants/21375/acds/136 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:46873
Content-Length: 26
{
"name" : "Sales ACD"
}
Table of Contents
This relation returns a list of configured ACDs for the tenant.
GET
View list of ACDs HEAD
Get just the header response POST
Add new ACD
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET |
The ACD list resource provides a list of ACD resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of existing extensions of the tenant. This is useful to find the a not used extension if the client want specify one. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the ACD list represents a single ACD, and indicates the ACD extension and name. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 758
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/acds"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/acds/{acdId}", "templated" : true
} ]
},
"count" : {
"acd" : 1
},
"total" : {
"acd" : 1
},
"_embedded" : {
"acd" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/acds/136"
}
},
"acdId" : 136,
"extension" : "5001", "name" : "Sales ACD"
} ]
}
}
Use a POST request to add a new ACD.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the ACD. | Telco(Tenant BasicOrAdvance Management) | Required. Max 50 chars. | None |
extension | String | The extension to be used for the ACD. | Telco(Tenant BasicOrAdvance Management) | Optional. If specified, it must be a valid extension for a ACD and not be in use. | Next unused value in range.( Same range as User or Location) |
A successful POST returns a 201 (Created). A link to the newly added ACD can be found in the Location field in the response header.
POST /api/v1/tenants/21375/acds HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:46873
Content-Length: 50
{
"extension" : "5001", "name" : "Sales ACD"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/acds/34
ACDCallPermissionProfile Resource
Table of Contents
The ACDCallPermissionProfile resource provides information about the assigned call permission profile of the ACD.
GET
View ACD Call Permission Profile setting HEAD
Get just the header response PUT
Modify the ACD Call Permission Profile setting.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
callPermission ProfileId | Number | Identifier the call permission profile currently associated with the ACD. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:callPermissionProfiles | List of call permission profiles for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The CallPermissionProfile currently associated with the ACD. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 670
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/acds/136/callpermissionprofile"
},
"v1:callPermissionProfiles" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles{?expand,filter}", "templated" : true
}
},
"callPermissionProfileId" : 116, "_embedded" : {
"callPermissionProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116"
}
},
"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"
}
}
}
Use a PUT request to modify the ACD Call Permission Profile setting.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
call Permission ProfileId | Number | Identifier of the call permission profile going to associate with the ACD. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a valid call permission profile identifier of the tenant, could be the ' Unassigned' call permission profile. | n/a |
PUT /api/v1/tenants/21375/acds/136/callpermissionprofile HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:46873 Content-Length: 37
{
"callPermissionProfileId" : 116
}
Table of Contents
The Address resource provides the street address information about a site.
GET
View Site Address Details HEAD
Get just the header response PUT
Update Site Address Details
Permitted Authorities (as defined in API Guide)
Telco User | GET. PUT |
Path | Type | Description | Visibility |
address1 | String | Street address, first line | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
Path | Type | Description | Visibility |
address2 | String | Street address, second line | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
city | String | City | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
state | String | State/Province/Region | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
country | String | Country | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
postalCode | String | Postal/Zip Code | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
phoneNumber | String | Contact Phone number for site | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
faxNumber | String | Contact Fax number for site | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 321
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5/address"
}
},
"address1" : "1 Hines Road", "address2" : "Suite 310", "city" : "Kanata",
"country" : "Canada", "faxNumber" : "6132802030",
"phoneNumber" : "6132802000", "postalCode" : "K2M 3PC", "state" : "Ontario"
}
Use a PUT request to modify the properties of a address.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
address1 | String | Street address, first line | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
address2 | String | Street address, second line | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
city | String | City | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
state | String | State/Province/ Region | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
Path | Type | Description | Permission | Constraints | Default Value |
country | String | Country | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
postalCode | String | Postal/Zip Code | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
phoneNumber | String | Contact Phone number for site | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
faxNumber | String | Fax number for site | Telco(SiteBasic Management) | Optional. if not provided will keep current value unchanged. | If not provided, will keep current setting unchanged. |
PUT /api/v1/tenants/21375/staticsites/5/address HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:37381 Content-Length: 219
{
"address1" : "1 Hines Road", "address2" : "Suite 310", "city" : "Kanata",
"state" : "Ontario",
"country" : "Canada", "faxNumber" : "6132802030",
"phoneNumber" : "6132802000", "postalCode" : "K2M 3PC"
}
Same as "GET response"
Table of Contents
The AdminSettings resource contains the User/Location settings that are typically managed by an administrator.
Some properties of this resource are applicable only to User Resources, and are not included in the response when the subject of the query is a location.
GET
View user/location Admin Settings HEAD
Get just the header response PUT
Modify user/location Admin Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
active | Boolean | Indicates whether the user/location is active. An inactive user cannot use the phone system. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
adminUser | Boolean | Indicates whether the user has TenantAdmin privileges within the WebAdmin and the API. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
queueGroupAgent | Boolean | Indicates whether the user/ location is a Queue Group Agent. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
dialableFromAAByExt | Boolean | If true, the user/location can be dialed directly by extension from the Auto Attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
inAANameDirectory | Boolean | If true, the user/location’s name and extension are searchable in the Auto Attendant directory. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
lockedToPhone | Boolean | If true, the user/location is tied to a single phone and is not permitted to manually log themselves in or out of a phone. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
emergencyCallMessage Alert | Boolean | If true, the user/location will receive instant message alert when emergency call occurs in its tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Path | Type | Description | Visibility |
maxLoggedInDevices | Number | Some tenants support allowing a user to log into multiple phones concurrently. This property indicates the maximum number of phones that the user can log into. Locations do not support this feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
subscriberClidType | String | Identifies the origin of the user/location’s CLID: Site, Private(no CLID), or DID. Read Only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
failedLoginAttempts | Number | The number of failed WebAdmin login attempts since the last successful WebAdmin login for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
webLoginLocked | Boolean | If true, indicates that this user has been locked out of WebAdmin (after exceeding the maximum number of failed login attempts). | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
enterpriseUser | Boolean | If true, Indicates whether the user has Enterprise Admin privileges within the WebAdmin UI. | Telco(TenantBasicOr AdvanceManagement) |
Relation | Description | Visibility |
v1:clid | Can be used to view the user/ location’s CLID settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:dynamicSiteSettings | Follow this link to view the user’s Dynamic Site Settings. Note that this is not the same as viewing the user’s Dynamic Site. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:dids | Link to get a list of available DIDs of the tenant. | Telco(TenantBasicOrAdvance Management) |
Relation | Description | Visibility |
v1:zones | Link to get a list of available Zones of the system. | Telco(TenantBasicOrAdvance Management) |
v1:manageCLID | This relation is being replaced by the "v1:clid" relation, and will be removed in a future release. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:manageDynamicSite Settings | This relation is being replaced by the "v1:dynamicSiteSettings" relation, and will be removed in a future release. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:subscriberClid Type | List of possible values of subscriber CLID type for admin settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Describes the configuration the system uses when creating a new dynamic site for this user. The representation is present only if Dynamic Site Permission has been enabled for this user. Locations do not support this feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
clid | This representation describes the Calling Line Id information for this user/ location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1782
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/adminsettings"
},
"v1:clid" : {
"href" : "/api/v1/tenants/21375/users/4332/clid"
},
"v1:dids" : {
"href" : "/api/v1/tenants/21375/dids{?expand,filter,assigned}", "templated" : true
},
"v1:dynamicSiteSettings" : {
"href" : "/api/v1/tenants/21375/users/4332/dynamicsitesettings"
},
"v1:manageCLID" : {
"href" : "/api/v1/tenants/21375/users/4332/clid"
},
"v1:manageDynamicSiteSettings" : {
"href" : "/api/v1/tenants/21375/users/4332/dynamicsitesettings"
},
"v1:zones" : {
"href" : "/api/v1/zones{?expand,filter}", "templated" : true
},
"v1options:subscriberClidType" : {
"href" : "/api/v1/enums/subscriberclidtype"
}
},
"active" : true, "adminUser" : false,
"dialableFromAAByExt" : true, "emergencyCallMessageAlert" : false, "enterpriseUser" : false, "failedLoginAttempts" : 0, "inAANameDirectory" : true, "lockedToPhone" : false, "maxLoggedInDevices" : 2, "queueGroupAgent" : true, "subscriberClidType" : "DID", "webLoginLocked" : false, "_embedded" : {
"clid" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/clid"
}
}
},
"dynamicSiteSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/dynamicsitesettings"
}
},
"clid" : "6132802000",
"defaultZoneId" : 3,
"maxCallCount" : 4
}
}
}
Use a PUT request to modify user/location Admin Settings.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
active | Boolean | Indicates if the User or Location is active. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
dialableFromA AByExt | Boolean | Indicates if the User or Location’s extension is dialable from AutoAttendant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
inAAName Directory | Boolean | Indicates if the User or Location is listed in the AutoAttendant’s name directory. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
lockedToPhone | Boolean | Indicates if the User or Location is locked to phone(can not logout its phone). | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
emergencyCall MessageAlert | Boolean | Indicates if the User or Location will receive instant message alert when emergency call occurs. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | Default to false when user/ location is created. |
Path | Type | Description | Permission | Constraints | Default Value |
queueGroup Agent | Boolean | Indicates if the User or Location could be agent of Queue CallGroup. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
adminUser | Boolean | Indicates if the User is a Tenant Admin user. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
maxLoggedIn Devices | Number | Indicates the max number of logged in phones of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
webLogin Locked | Boolean | Indicates if the user web UI login is locked. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'true' or 'false'. | The value of current setting before update. |
failedLogin Attempts | Number | Indicates counted failed web UI login attempts of the User | Telco(Tenant BasicOrAdvance Management) | Optional. | The value of current setting before update. |
enterprise User | Boolean | Indicates if the User is a Enterprise Admin user. | Telco(Tenant BasicOrAdvance Management) | Optional. | The value of current setting before update. |
PUT /api/v1/tenants/21375/users/4332/adminsettings HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 312
{
"active" : true, "queueGroupAgent" : true, "lockedToPhone" : false, "inAANameDirectory" : true, "dialableFromAAByExt" : true,
"emergencyCallMessageAlert" : true, "adminUser" : false, "maxLoggedInDevices" : 2, "webLoginLocked" : false, "failedLoginAttempts" : 0, "enterpriseUser" : false
}
Table of Contents
Modify Request Description
The file containing the AutoAttendant prompt to be played in the afternoon.
GET
Download the AutoAttendant’s afternoon greeting audio file HEAD
Get just the header response PUT
Upload an audio to be used for the afternoon greeting DELETE
Remove the current afternoon greeting audio file
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT, DELETE
TenantAdmin User
GET
Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.
Use a PUT request to upload an audio file for the afternoon greeting. Only audio/wav format is supported, only 8 or 16 bit u-law codecs are supported. If success, will get a 200 OK response with no content.
Use a DELETE request to remove the existing audio file for the afternoon greeting.
AfternoonGreetingRecording Resource
Table of Contents
Sample POST Response Description
The AfternoonGreetingRecording resource provides support for recording afternoon greeting prompt of an AutoAttendant via phone.
HEAD
Get just the header response POST
Recording afternoon greeting prompt of an AutoAttendant via phone.
Permitted Authorities (as defined in API Guide)
TenantAdmin User
POST
Use a POST request to record afternoon greeting prompt of an AutoAttendant via phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path
Type
Description
Permission
Constraints
Default
Value
phone
String
Indicates
TenantAdmin
Optional
Extension of
Extension
extension of
current Tenant
phone to use for
Admin User who
the recording.
is authenticated
of this request.
A successful POST returns a 200 (OK). The phone of specified phoneExtension will ring, and user can record prompt for afternoon greeting prompt of an AutoAttendant by answering the call and following the instructions.
POST /api/v1/tenants/21375/autoattendants/186/greetingsettings/afternoonrecording HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:42629 Content-Length: 31
{
"phoneExtension" : "4332"
}
HTTP/1.1 200 OK
Table of Contents
The Announcement resource provides information about a Announcement, include System Announcement and Tenant Announcement.
GET
View Announcement Details HEAD
Get just the header response PUT
Modify hold announcement Details DELETE
Remove the hold announcement
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET |
Path | Type | Description | Visibility |
announcementId | Number | Identifier for the Announcement. | Telco(SystemManagement, TenantBasicOrAdvance Management), Tenant Admin |
name | String | The name of the Announcement. For tenant announcement, does not include tenant webloginUrl. | Telco(SystemManagement, TenantBasicOrAdvance Management), Tenant Admin |
fileName | String | The file name on disk for the Announcement. | Telco(SystemManagement) |
Relation | Description | Visibility |
v1:customAnnouncementFiles | Lists all existing custom announcement files. | Telco(SystemManagement) |
v1:defaultAnnouncementFiles | Lists all existing default announcement files. | Telco(SystemManagement) |
v1mediafile:custom AnnouncementFile | Custom announcement file for this announcement. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement), TenantAdmin |
v1mediafile:default AnnouncementFile | Default announcement file for this announcement. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1125
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1mediafile/rels/{rel}", "name" : "v1mediafile",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/announcements/18"
},
"v1:customAnnouncementFiles" : {
"href" : "/api/v1/customannouncementfiles/{langCode}{?filter}", "templated" : true
},
"v1:defaultAnnouncementFiles" : {
"href" : "/api/v1/defaultannouncementfiles/{langCode}{?filter}", "templated" : true
},
"v1mediafile:customAnnouncementFile" : {
"href" : "/api/v1/customannouncementfiles/{langCode}/companyGreeting.wav", "templated" : true
}
},
"announcementId" : 18,
"fileName" : "companyGreeting.wav", "name" : "Company Greeting", "_embedded" : {
"tenant" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375"
}
},
"deleting" : false, "tenantId" : 21375,
"tenantName" : "Dave's Moose Hunting Supply", "webLoginUrl" : "/mooseByDave"
}
}
}
Use a PUT request to modify the properties of Announcement.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the Announcement. Only Telco User can make change. | Telco(System Management) | Max 50 chars. Allow alphanumeric character including underscore and space. |
fileName | String | The fileName of the Announcement. Only Telco User can make change. | Telco(System Management) | Max 50 chars. This must be a file in the announcement file directory |
PUT /api/v1/announcements/18 HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:42499
Content-Length: 71
{
"name" : "Company Greeting", "fileName" : "companyGreeting.wav"
}
include the sample generated http-response snippet, or (if identical to GET response) reference GET response above Same as "GET response"
Table of Contents
The AnnouncementSetting resource provides information about the announcement setting of the User or Location.
GET
View User or Location Announcement Setting HEAD
Get just the header response PUT
Modify User or Location Announcement Setting.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
useDefault | Boolean | Indicates whether use the default announcement of this tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
announcementId | Number | ID of the announcement being set as announcement of this User or Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:systemAnnouncements | Acceptable announcement values from System Announcement. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:tenantAnnouncements | Acceptable announcement values from Tenant Announcement of this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The announcement detail which is currently used as the announcement of this User or Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 742
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/announcementsetting"
},
"v1:systemAnnouncements" : {
"href" : "/api/v1/systemannouncements{?expand,filter}", "templated" : true
},
"v1:tenantAnnouncements" : {
"href" : "/api/v1/tenants/21375/announcements{?expand,filter}", "templated" : true
}
},
"announcementId" : 2, "useDefault" : false, "_embedded" : {
"announcement" : { "_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
}
}
}
Use a PUT request to modify the User or Location Announcement Setting.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
useDefault | Boolean | Indicates if using default announcement of the tenant as announcement of the User | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional | false |
Path | Type | Description | Permission | Constraints | Default Value |
or Location. If this set to true, then the 'announcement Id' will be ignored if provided in request. | |||||
announcement Id | Number | Indicates using the specified announcement as the tenant default announcement. The value could be a ID of system announcement or tenant announcement of the same tenant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, must be a valid ID of system announcement or tenant announcement from same tenant. | n/a |
PUT /api/v1/tenants/21375/users/4332/announcementsetting HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 50
{
"useDefault" : false, "announcementId" : 2
}
Table of Contents
The AutoAttendant resource provides information about a specific Auto Attendant.
GET
View AutoAttendant Details HEAD
Get just the header response PUT
Update the AutoAttendant DELETE
Delete an AutoAttendant
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User |
GET | |
Location | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
name | String | The name of the Auto Attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
extension | String | The extension to be used for the AutoAttendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
autoAttendantId | Number | Identifier for the Auto Attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The greetings settings for the auto attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n |
Name | Description | Visibility | Expandable |
The menu associated with this level of the auto attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 976
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186"
}
},
"autoAttendantId" : 186,
"extension" : "7001",
"name" : "Support Auto Attendant", "_embedded" : {
"autoAttendantGreetingSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingsettings"
}
},
"afternoonGreeting" : { "recorded" : false,
"greetingText" : "Good afternoon"
},
"eveningGreeting" : { "recorded" : false,
"greetingText" : "Good evening"
},
"morningGreeting" : { "recorded" : false,
"greetingText" : "Good morning"
},
"timeOfDayGreetingEnabled" : false
},
"autoAttendantMenu" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187"
}
},
"menuId" : 187,
"name" : "OurAA"
}
}
}
Use a PUT request to modify the properties of an AutoAttendant.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the Auto Attendant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. |
extension | String | The extension for the auto attendant. Assigned by system if not provided. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
PUT /api/v1/tenants/21375/autoattendants/186 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:42629 Content-Length: 50
{
"extension" : "103", "name" : "Shotgun AA"
}
Table of Contents
This relation returns a list of configured AutoAttendants for the tenant.
GET
View list of AutoAttendants HEAD
Get just the header response POST
Add a new AutoAttendant
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The AutoAttendant list resource provides a list of AutoAttendant resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of existing extensions of the tenant. This is useful to find the a not used extension if the client want specify one. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the Auto Attendant list represents a single AutoAttendant, and indicates the AutoAttendant extension and name. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 851
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/autoattendants/{autoAttendantId}", "templated" : true
} ]
},
"count" : { "autoAttendant" : 1
},
"total" : { "autoAttendant" : 1
},
"_embedded" : { "autoAttendant" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186"
}
},
"autoAttendantId" : 186,
"extension" : "7001",
"name" : "Support Auto Attendant"
} ]
}
}
Use a POST request to add a new AutoAttendant.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the AutoAttendant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. | None |
extension | String | The extension for the auto attendant. Assigned by system if not provided. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
A successful POST returns a 201 (Created). A link to the newly added AutoAttendant can be found in the Location field in the response header.
POST /api/v1/tenants/21375/autoattendants HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:42629
Content-Length: 50
{
"extension" : "103", "name" : "Shotgun AA"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/autoattendants/14
Table of Contents
The AutoAttendantAction resource provides information about a specific Auto Attendant Action when press a menu key.
GET
View AutoAttendantAction Details HEAD
Get just the header response PUT
Update the AutoAttendantAction
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
key | String | The key on the phone associated with the action. T is used for the action if there is no user response. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
autoAttendantAction Type | String | The action type. See auto AttendantActionType for possible values. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
actionData | String | Data associated with the action, if any. This is only useful for AutoAttendant ActionType: AutoAttendant, ACD, CallGroup, User. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
promptWording | String | The wording of the prompt associated with the key, such as 'press 5 for sales'. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1options:autoAttendant ActionType | List of action types for a Auto AttendantAction. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:extensions | List of extension of the tenant which can be used as actionData for the AutoAttendantAction if applicable. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Optional, the sub menu associated with this action, only exist when the action type is subMenu . | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 932
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187/actions/5"
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
},
"v1options:autoAttendantActionType" : {
"href" : "/api/v1/enums/autoattendantactiontype"
}
},
"autoAttendantActionType" : "SubMenu", "key" : "1",
"promptWording" : "Sub Menu", "_embedded" : {
"autoAttendantMenu" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/autoattendantmenus/188"
}
},
"menuId" : 0,
"name" : "SubMenu"
}
}
}
Use a PUT request to modify the properties of an AutoAttendantAction.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
autoAttendant ActionType | String | The action. See auto AttendantActionType for possible values. For the no response action (key T), the only valid actions are Disconnect, CallGroup or User | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
actionData | String | Data associated with the action, if any. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
promptWording | String | The wording of the prompt associated with the key, such as 'press 5 for sales'. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
PUT /api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187/actions/5 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:42629 Content-Length: 110
{
"autoAttendantActionType" : "CallGroup", "actionData" : "603",
"promptWording" : "Press 4 for Sales"
}
AutoAttendantGreetingSettings Resource
Table of Contents
The AutoAttendantGreetingSettings resource provides information about the greetings for a menu within an AutoAttendant.
GET
View AutoAttendant greetings settings PUT
Update the AutoAttendant greetings settings HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, POST |
TenantAdmin User | GET, PUT, POST |
Path | Type | Description | Visibility |
afternoonGreeting. greetingText | String | The text of the afternoon AutoAttendant greeting. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
afternoonGreeting. recorded | Boolean | True if the afternoon greeting has been recorded. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
morningGreeting. greetingText | String | The text of the morning AutoAttendant greeting. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
morningGreeting. recorded | Boolean | True if the morning greeting has been recorded. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
eveningGreeting. greetingText | String | The text of the evening AutoAttendant greeting. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
eveningGreeting. recorded | Boolean | True if the evening greeting has been recorded. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
timeOfDayGreeting Enabled | Boolean | If true then these greeting prompts are played. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:morningGreetingRecording | Link where user can record morning greeting via phone by POST request. | TenantAdmin |
v1:afternoonGreeting Recording | Link where user can record afternoon greeting via phone by POST request. | TenantAdmin |
v1:eveningGreetingRecording | Link where user can record evening greeting via phone by POST request. | TenantAdmin |
Relation | Description | Visibility |
v1mediafile:morningGreeting File | Link to the audio file for the morning greeting. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1mediafile:afternoon GreetingFile | Link to the audio file for the afternoon greeting. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1mediafile:eveningGreeting File | Link to the audio file for the evening greeting. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1454
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1mediafile/rels/{rel}", "name" : "v1mediafile",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingsettings"
},
"v1:afternoonGreetingRecording" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingsettings/afternoonrecording"
},
"v1:eveningGreetingRecording" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingsettings/eveningrecording"
},
"v1:morningGreetingRecording" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingsettings/morningrecording"
},
"v1mediafile:afternoonGreetingFile" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingfiles/afternoon"
},
"v1mediafile:eveningGreetingFile" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingfiles/evening"
},
"v1mediafile:morningGreetingFile" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/greetingfiles/morning"
}
},
"afternoonGreeting" : { "recorded" : false,
"greetingText" : "Good afternoon"
},
"eveningGreeting" : { "recorded" : false,
"greetingText" : "Good evening"
},
"morningGreeting" : { "recorded" : false,
"greetingText" : "Good morning"
},
"timeOfDayGreetingEnabled" : false
}
Use a PUT request to modify the properties of Greeting Settings for an AutoAttendant.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
afternoon Greeting. greetingText | String | The text of the afternoon AutoAttendant greeting. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | None |
morning Greeting. greetingText | String | The text of the morning AutoAttendant greeting. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | |
evening Greeting. greetingText | String | The text of the evening AutoAttendant greeting. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | |
timeOfDay Greeting Enabled | Boolean | If true then these greeting prompts are played. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
PUT /api/v1/tenants/21375/autoattendants/186/greetingsettings HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:42629 Content-Length: 251
{
"timeOfDayGreetingEnabled" : false, "morningGreeting" : {
"greetingText" : "Morning Greeting"
},
"afternoonGreeting" : {
"greetingText" : "Afternoon Greeting"
},
"eveningGreeting" : {
"greetingText" : "Evening Greeting"
}
}
Table of Contents
The AutoAttendantMenu resource provides information about a single menu within an AutoAttendant.
GET
View AutoAttendantMenu Details HEAD
Get just the header response PUT
Update the AutoAttendantMenu
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
introductoryPrompt | String | The text introductory prompt for the Auto Attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
language | String | The language for prompts for this menu. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
menuId | Number | The identifier for the menu. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
menuPromptPlayTimes | Number | The number of times this menu it to be played to users before taking the default action. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
name | String | The name of this menu. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
promptRecorded | Boolean | True if the introductory prompt is recorded. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:aaLanguages | Provide a list of Supported auto attendant languages of the system which can be used as menu language. | Telco(TenantBasicOrAdvance Management, SystemManagement), TenantAdmin |
Relation | Description | Visibility |
v1:autoAttendantMenu Recording | Link where user can record menu prompt via phone by POST request. | TenantAdmin |
v1mediafile:autoAttendant MenuFile | The audio file for the current menu of hte AutoAttendant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Actions for each of the digit button on the phones, the * and # buttons and T which represents the action if there is not user response. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1341
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1mediafile/rels/{rel}", "name" : "v1mediafile",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187"
},
"v1:aaLanguages" : {
"href" : "/api/v1/aalanguages{?filter}", "templated" : true
},
"v1:autoAttendantMenuRecording" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187/menurecording"
},
"v1mediafile:autoAttendantMenuFile" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187/menufile"
}
},
"introductoryPrompt" : "Hello, hello, hello", "language" : "en",
"menuId" : 187,
"menuPromptPlayTimes" : 2, "name" : "OurAA", "promptRecorded" : false, "_embedded" : {
"autoAttendantAction" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187/actions/1"
}
},
"actionData" : "6001", "autoAttendantActionType" : "CallGroup", "key" : "1",
"promptWording" : "prompt"
}
}
}
Use a PUT request to modify the properties of an AutoAttendantMenu.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
introductory Prompt | String | The text introductory prompt for the Auto Attendant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
language | String | The language for prompts for this menu. Must be a valid and supported auto attendant language of the system. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
menuPromptPlay Times | Number | The number of times this menu it to be played to users before taking the default action. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
name | String | The name of this menu. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
PUT /api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187 HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:42629
Content-Length: 105
{
"name" : "AA Name", "introductoryPrompt" : "HI", "language" : "en", "menuPromptPlayTimes" : 3
}
Table of Contents
Modify Request Description
The AutoAttendantMenu File is the audio file for a single menu of an AutoAttendantMenu.
GET
Download the current AutoAttendantMenu audio file HEAD
Get just the header response PUT
Upload an audio file to be used for the AutoAttendantMenu DELETE
Remove the current AutoAttendantMenu audio file
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT, DELETE
TenantAdmin User
GET
Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.
Use a PUT request to upload a audio file for the AutoAttendant menu. Only audio/wav format is supported, only 8 or 16 bit u-law codecs are supported. If success, will get a 200 OK response with no content.
Use a DELETE request to remove the existing audio file for the AutoAttendantMenu.
AutoAttendantMenuRecording Resource
Table of Contents
Sample POST Response Description
The AutoAttendantMenuRecording resource provides support for recording prompt of an AutoAttendantMenu via phone.
HEAD
Get just the header response POST
Recording prompt of an AutoAttendantMenu via phone.
Permitted Authorities (as defined in API Guide)
TenantAdmin User
POST
Use a POST request to record prompt of an AutoAttendantMenu via phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path
Type
Description
Permission
Constraints
Default
Value
phone
String
Indicates
TenantAdmin
Optional
Extension of
Extension
extension of
current Tenant
phone to use for
Admin User who
the recording.
is authenticated
of this request.
A successful POST returns a 200 (OK). The phone of specified phoneExtension will ring, and user can record prompt for the auto attendant menu by answering the call and following the instructions.
POST /api/v1/tenants/21375/autoattendants/186/autoattendantmenus/187/menurecording HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:42629 Content-Length: 31
{
"phoneExtension" : "4332"
}
HTTP/1.1 200 OK
BusinessHoursDidMembers Resource
Table of Contents
Resources that are associated with the relationship between a Business Hours Profile and the DIDs that use it. The relationships can be managed.
GET
View the list of DIDs that using the business hour profile HEAD
Get just the header response POST
Add a new DID to the list using the business hour profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:dids | Link to the tenant’s DIDs. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
The list of the tenant’s DIDs and the business hours associated with each | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 796
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2/didmembers"
},
"v1:dids" : [ {
"href" : "/api/v1/tenants/21375/dids{?expand,filter,assigned}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/didbusinesshours/{didId}", "templated" : true
} ]
},
"count" : { "didBusinessHours" : 1
},
"total" : { "didBusinessHours" : 1
},
"_embedded" : { "didBusinessHours" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/didbusinesshours/3"
}
},
"businessHoursProfileId" : 2,
"didId" : 3
} ]
}
}
Use a POST request to add a new set of business hours.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileId | Number | The business hours profile identifier. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This is ignored | NA |
didId | Number | The identifier being added to the business hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be the identifier of an existing DID | None |
A successful POST returns a 201 (Created). A link to the newly added did member relationship can be found in the Location field in the response header.
POST /api/v1/tenants/21375/businesshours/2/didmembers HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:36915 Content-Length: 49
{
"businessHoursProfileId" : 2,
"didId" : 3
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/businesshours/2/didmembers
BusinessHoursSiteMembers Resource
Table of Contents
Resources that are associated with Business Hours Site Members include an embedded representation of the sites that use the Business Hour Profile. This includes the ability the manage the list.
GET
View the list of sites that using the business hour profile HEAD
Get just the header response POST
Add a new site to the list using the business hour profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:staticSites | Link to the tenant’s sites. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the list represents a relationship between a business hour profile and a static site. In | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
each case the business hours profile will be the same. |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 820
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2/sitemembers"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/sitebusinesshours/{siteId}", "templated" : true
} ],
"v1:staticSites" : [ {
"href" : "/api/v1/tenants/21375/staticsites{?expand,filter,siteTypeId}", "templated" : true
} ]
},
"count" : { "siteBusinessHours" : 1
},
"total" : { "siteBusinessHours" : 1
},
"_embedded" : { "siteBusinessHours" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/sitebusinesshours/5"
}
},
"businessHoursProfileId" : 2,
"siteId" : 5
} ]
}
}
Use a POST request to add a new set of business hours.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileId | Number | The business hours profile identifier. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This is ignored | NA |
siteId | Number | The identifier being added to the business hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be the identfier of an existing static site | None |
A successful POST returns a 201 (Created). A link to the newly added site member relationship can be found in the Location field in the response header.
POST /api/v1/tenants/21375/businesshours/2/sitemembers HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:36915 Content-Length: 50
{
"businessHoursProfileId" : 2,
"siteId" : 5
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/businesshours/2/sitemembers
BusinessHoursProfile Resource
Table of Contents
This resource shows the information for a single Business Hour Profile. Included are links to the list of sites and DIDs that use this profile.
GET
View a single Business Hour Profile for Tenant HEAD
Get just the header response PUT
Update a Business Hour Profile for the tenant DELETE
Delete a Business Hour Profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Path | Type | Description | Visibility |
businessHoursProfile Name | String | The name of the business hours set. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
businessHoursProfile Id | Number | The identifier for the new business hours. Read Only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
tenantDefault | Boolean | True for the default business hours for the tenant. Cannot be changed to false. Can be set to true in another business hour. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday | Object | The configuration for Mondays. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.open | Boolean | Indicates whether or not the business is open at all on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.openHoursFrom | String | Indicates the opening time on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.openHoursTo | String | The start time for lunch time call handling on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.lunchFrom | String | The end time for lunch time call handling on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.lunchTo | String | Indicates the opening time on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.specialFrom | String | The start time for special call handling on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Path | Type | Description | Visibility |
monday.specialTo | String | The end time for special call handling on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
tuesday | Object | The configuration for Tuesdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
wednesday | Object | The configuration for Wednesdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
thursday | Object | The configuration for Thursdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
friday | Object | The configuration for Fridays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
saturday | Object | The configuration for Saturdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
sunday | Object | The configuration for Sundays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:bhDidMembers | The DIDs that use this business hour. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:bhSiteMembers | The sites that use this business hour. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 2056
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
},
"v1:bhDidMembers" : {
"href" : "/api/v1/tenants/21375/businesshours/2/didmembers{?expand,filter}", "templated" : true
},
"v1:bhSiteMembers" : {
"href" : "/api/v1/tenants/21375/businesshours/2/sitemembers{?expand,filter}", "templated" : true
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours", "friday" : {
"lunchTo" : "13:00",
"lunchFrom" : "12:00",
"openHoursFrom" : "01:00",
"specialTo" : "17:00",
"specialFrom" : "16:00",
"openHoursTo" : "23:00", "open" : true
},
"monday" : {
"lunchTo" : "13:00",
"lunchFrom" : "12:00",
"openHoursFrom" : "01:00",
"specialTo" : "17:00",
"specialFrom" : "16:00",
"openHoursTo" : "23:00", "open" : true
},
"saturday" : { "lunchTo" : "13:00",
"lunchFrom" : "12:00",
"openHoursFrom" : "01:00",
"specialTo" : "17:00",
"specialFrom" : "16:00",
"openHoursTo" : "23:00", "open" : true
},
"sunday" : {
"lunchTo" : "13:00",
"lunchFrom" : "12:00",
"openHoursFrom" : "01:00",
"specialTo" : "17:00",
"specialFrom" : "16:00",
"openHoursTo" : "23:00", "open" : true
},
"tenantDefault" : false, "thursday" : {
"lunchTo" : "13:00",
"lunchFrom" : "12:00",
"openHoursFrom" : "01:00",
"specialTo" : "17:00",
"specialFrom" : "16:00",
"openHoursTo" : "23:00", "open" : true
},
"tuesday" : { "lunchTo" : "13:00",
"lunchFrom" : "12:00",
"openHoursFrom" : "01:00",
"specialTo" : "17:00",
"specialFrom" : "16:00",
"openHoursTo" : "23:00", "open" : true
},
"wednesday" : { "lunchTo" : "13:00",
"lunchFrom" : "12:00",
"openHoursFrom" : "01:00",
"specialTo" : "17:00",
"specialFrom" : "16:00",
"openHoursTo" : "23:00", "open" : true
}
}
Use a PUT request to modify the properties of a BusinessHoursProfile.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
businessHours ProfileName | String | The name of the business hours set. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. if not provided will keep current value unchanged, if provided, Max 50 chars. |
monday | Object | The configuration for Mondays. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
monday.open | Boolean | Indicates whether or not the business is open at all on this day | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False |
monday.openHours From | String | Indicates the start of opening time on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. |
monday.openHours To | String | Indicates the end of opening time on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of |
Path | Type | Description | Permission | Constraints |
minutes, must be greater than start time. | ||||
monday.lunchFrom | String | The start time for lunch time call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. |
monday.lunchTo | String | The end time for lunch time call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes, must be greater than start time. |
monday.special From | String | The start time for special call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. |
monday.specialTo | String | The end time for special call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes, must be greater than start time. |
tuesday | Object | The configuration for Tuesdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. |
wednesday | Object | The configuration for Wednesdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. |
thursday | Object | The configuration for Thursdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. |
Path | Type | Description | Permission | Constraints |
friday | Object | The configuration for Fridays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. |
saturday | Object | The configuration for Saturdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. |
sunday | Object | The configuration for Sundays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. |
PUT /api/v1/tenants/21375/businesshours/2 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:36915
Content-Length: 1505
{
"businessHoursProfileName" : "SummerHuntingHours", "monday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"tuesday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"wednesday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"thursday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"friday" : {
"open" : true,
"openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"saturday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"sunday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
}
}
BusinessHoursProfiles Resource
Table of Contents
This relation returns a list of configured BusinessHoursProfiles for the tenant.
GET
View Business Hours for Tenant HEAD
Get just the header response POST
Add a new set of business hours for the tenant
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The BusinessHoursProfile list resource provides a list of BusinessHoursProfile resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the list represents a single set of business hours for the tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 717
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/businesshours"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/businesshours/{businessHourId}", "templated" : true
} ]
},
"count" : { "businessHoursProfile" : 1
},
"total" : { "businessHoursProfile" : 1
},
"_embedded" : { "businessHoursProfile" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
} ]
}
}
Use a POST request to add a new BusinessHoursProfile.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileName | String | The name of the business hours set. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Max 50 chars. | None |
Path | Type | Description | Permission | Constraints | Default Value |
monday | Object | The configuration for Mondays. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | Open from 00:00 to 24:00, see detail in open, lunch, special hour settings. |
monday.open | Boolean | Indicates whether or not the business is open at all on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False. | true |
monday.open HoursFrom | String | Indicates the start of opening time on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. | 00:00 |
monday.open HoursTo | String | Indicates the end of opening time on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes, must be greater than start time. | 24:00 |
monday.lunch From | String | The start time for lunch time call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. | |
monday.lunch To | String | The end time for lunch time call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes, must be greater than start time. |
Path | Type | Description | Permission | Constraints | Default Value |
monday. specialFrom | String | The start time for special call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. | |
monday. specialTo | String | The end time for special call handling on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes, must be greater than start time. | |
tuesday | Object | The configuration for Tuesdays. See Mondays for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
wednesday | Object | The configuration for Wednesdays. See Mondays for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
thursday | Object | The configuration for Thursdays. See Mondays for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
friday | Object | The configuration for Fridays. See Mondays for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
saturday | Object | The configuration for Saturdays. See Mondays for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Not open on this day. |
sunday | Object | The configuration for Sundays. See Mondays for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Not open on this day. |
A successful POST returns a 201 (Created). A link to the newly added business hours can be found in the Location field in the response header.
POST /api/v1/tenants/21375/businesshours HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:36915
Content-Length: 1505
{
"businessHoursProfileName" : "SummerHuntingHours", "monday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"tuesday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"wednesday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"thursday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"friday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"saturday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
},
"sunday" : {
"open" : true, "openHoursFrom" : "07:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "13:00",
"specialTo" : "14:00"
}
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/businesshours/4
Table of Contents
Sample GET Response Description
This resource is being deprecated. It is being replaced by the CallForwardNoAnswer resource. Clients should build support for that resource rather than this one.
The Call Coverage resource indicates the type of Coverage configured for a User/ Location extension.
Call Coverage is also known as "Call Forward - No Answer". The configuration of this feature defines the number of rings that will happen before a incoming call is considered to be unanswered, and where unanswered calls will be directed.
GET
View Call Coverage feature state HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
GET
TenantAdmin
GET
User
GET (self only)
Location
GET (self only)
Path
Type
Description
Visibility
targetNumber
String
Indicates the target number when the user/location has configured Call Coverage. If the target is voicemail, the target number value is "vm".
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
numberOfRings
Number
Indicates the number of times the user/location’s phone rings before the call is forwarded to the Call Coverage target.
This property is present only if Call Coverage has been configured (i.e. is not 'None').
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 152
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/coverage"
}
},
"numberOfRings" : 5,
"targetNumber" : "3235"
}
Table of Contents
The Call Forwarding resource indicates whether the User/Location has configured and activated Call Forwarding.
Call Forwarding is also known as "Call Forward - Always". It causes incoming calls to be redirected to the fowarding target without ringing the user’s extension. The configuration of this feature defines where calls will be directed.
If the Call Forwarding target is another User or Location, an embedded representation of the extension will be included in the query response.
GET
View Call Forwarding feature state HEAD
Get just the header response PUT
Modify Call Forwarding feature state
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
User | GET, PUT (self only) |
Location | GET, PUT (self only) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Relation | Description | Visibility |
v1:extensions | Provides a list of available extensions which can be used for the Call Forward Target Number value. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1options:callForwardTarget Type | Provides a list of the options available for the Call Forward Target Type value. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Path | Type | Description | Visibility |
active | Boolean | Indicates whether Call Forwarding is currently active for this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
callForwardTarget Type | String | Specifies the Call Forwarding type, as not all targets have explicit number associated with them, for example, Prompt, Coverage. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
targetNumber | String | Indicates the Call Forwarding target for calls to this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
When the callForward TargetType is 'coworker', this object represents the extension to which calls are being forwarded. This embedded representation is not provided when the callForwardTargetType is other than 'coworker'. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 968
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/callforward"
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
},
"v1options:callForwardTargetType" : {
"href" : "/api/v1/enums/callforwardtargettype"
}
},
"active" : true, "callForwardTargetType" : "coworker", "targetNumber" : "3235",
"_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375", "enabled" : true, "extension" : "3235",
"extensionType" : "locationExt", "name" : "Kitchen"
}
}
}
Use a PUT request to modify the properties of Call Forwarding feature state.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
active | Boolean | Indicates whether the Call Forward feature is currently active for this user/location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. |
callForward TargetType | String | Indicates the type for the targetNumber for this user/location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | For possible values see the callForward TargetType link relation. |
targetNumber | String | Only used when call ForwardTargetType set to autoattendant, coworker, external or prompt. The value is the number or extension to which calls will be forwarded for this user/location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Numeric |
PUT /api/v1/tenants/21375/users/4332/callforward HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 88
{
"active" : true, "targetNumber" : "3235",
"callForwardTargetType" : "coworker"
}
Table of Contents
The CallForwardNoAnswer resource describes how an unanswered call to a specific extension is to be handled. This feature can be configured for User, Location and Call Group extensions where the Call Group Type supports it.
Configuration properties include the target type the call should be forwarded to (another extension, an extension’s voicemail, or an external number), the target number, and the number of rings the system should wait for the call to be answered before forwarding it.
In the case of User and Location extensions, this resource replaces the deprecated callCoverage resource. Clients should use this resource in place of that one.
GET
View Call Forward No Answer configuration details HEAD
Get just the header response PUT
Modify the feature details. This operation is supported only on CallGroup extensions.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Non-Admin User | GET, PUT (self only) |
Location | GET, PUT (self only) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
callTargetType | String | The target type of User or Call Group’s Call Forward No Answer (call coverage) feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
callTarget | String | The target to which unanswered calls will be forwarded. If the call TargetType is Subscriber VM, the callTarget value it the voicemail account extension. For CallGroups, if the callTargetType is Call GroupVM, no callTarget value. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
numberOfRings | Number | The number of rings | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1options:callTargetType | List of valid values for the target type of the Call Forward No Answer (Call Coverage) feature. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Optional, details of the extension that the target is associated with when the callTarget is an extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 713
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callfwdnoanswers/6001"
},
"v1options:callTargetType" : {
"href" : "/api/v1/enums/calltargettype"
}
},
"callTarget" : "4332", "callTargetType" : "SubscriberVM", "numberOfRings" : 4,
"_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
}
}
}
Use a PUT request to modify the CallForwardNoAnswer configuration for an extension.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
callTarget Type | String | The target type for the user’s or group’s Call Forward No Answer feature. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Must be one of the types listed in callTargetType options link. Call GroupVM type is not supported for Users. For Users, if SubscriberVM is specified then the callTarget is ignored. For CallGroup, if CallGroupVM is specified then the callTarget is ignored, and if SubscriberV M is specified, the callTarget is required.An error is generated if the type specified is not compatible with the call Target. | "None" |
callTarget | String | The external number or extension to which unanswered calls are to be routed. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required if the callTargetType is Subscriber Extension, AutoAttendant Extension or OtherNumber. If provided, it must be a valid | An empty string. |
Path | Type | Description | Permission | Constraints | Default Value |
extension for the defined call TargetType. For CallGroups, if the callTargetType is Subscriber VM, this value indicates the extension that owns the voicemail box, and if the call TargetType is CallGroupVM, no callTarget value required. | |||||
numberOfRings | Number | The number of rings to allow before the call is deemed "unaswered". | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required if the callTargetType is not None. An integer between 1 and 20. | 0 |
PUT /api/v1/tenants/21375/callfwdnoanswers/6001 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45761 Content-Length: 87
{
"callTarget" : "4332", "callTargetType" : "SubscriberVM", "numberOfRings" : 4
}
Table of Contents
The CallGroup resource provides information about a specific group, including links to the group’s coverage and members. Of note the configuration of queuing information associated with groups is currently read only.
Deleting a group is supported. Deleting a group will fail if there are any members in the group. Of course "Call Group Members" can be removed from groups.
GET
View Call Group Details HEAD
Get just the header response PUT
Modify call Group Details DELETE
Remove the Call Group
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
name | String | The name of the callgroup. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
extension | String | The extension to be used for the call group. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
callGroupType | String | The type of the call group. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
ringBehaviour | String | For a broadcast or hunt group, this property indicates whether calls should ring all phones, or only phones not in use. If queuing is enabled on the group, this field will be set to RingPhonesNotInUse. It does not apply to other call group types and will not be included in the response. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
huntGroupSettings. huntGroupType | class java.lang.String | Required for Hunt Groups. Not applicable for other group types. For possible values see huntGroupType. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Path | Type | Description | Visibility |
huntGroupSettings. memberAnswerTimeout | int | The number of rings to wait before timing out a hunt group member. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
membersLocked | Boolean | If true then members of the group cannot log out of the group. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
allowGroupCallsTo TwinningTargets | Boolean | If true then members of the group can have calls ring their twinned devices. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
queueEnabled | Boolean | Only available when system have Queue Agent license and tenant have queue and agent allocations. If true then queuing is enabled for this group. Queue and Agent support must be enabled for the tenant. Queuing can be configured for broadcast, hunt and rollover groups and only if the call behavior is to ring phones not in use. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
voicemailEnabled | Boolean | Only available when tenant have call group voicemail allocations. If true then voicemail is enabled for this group. Voicemail can be configured for broadcast, hunt and rollover groups. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
callGroupId | Number | Identifier for the group being updated. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1options:ringBehaviourType | List of valid call group ring behaviour types that can be set for groups. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:callGroupType | List of valid call group types. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Relation | Description | Visibility |
v1options:huntGroupType | List of valid sub types for hunt groups. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callGroupMemberMgmt | List members of the group. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:queueSettings | Group parameters associated with queues for the group. This link is only included in the response if the system have Queue Agent license, tenant must has the queue agent allocation, call group type must be broadcast, hunt or rollover and queue Enabled is true. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callGroupPresenceState Routing | Call Group Presence State Routing configuration. This is available for Broadcast, Hunt, and Rollover group types. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callGroupVoicemail Settings | Call Group vociemail settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callGroupVoicemailPin Reset | Link location where accept POST request for setting new voicemail PIN. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callGroupPin | Link location where accept POST request for setting new Call Group PIN. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callGroupPermission Profile | Link location where accept POST request for setting new Call Group Permission Profile. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The setting for queuing associated with the group. This resource is only included in the response if the system have Queue Agent license, tenant must has the queue agent allocation, call group type must be broadcast, hunt or rollover and queueEnabled is true. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Describes how unanswered calls to the group are handled. Note that Pickup and Page Groups do not support this feature, so this resource will not be included in the representation. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
voicemailBox | The allocated voicemail box of this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
The allocated permission Profile of this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 2731
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3"
},
"v1:callGroupMemberMgmt" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/members{?expand,filter}", "templated" : true
},
"v1:callGroupPermissionProfile" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/callpermissionprofile"
},
"v1:callGroupPin" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/pin"
},
"v1:callGroupPresenceStateRouting" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/presencestaterouting"
},
"v1:callGroupVoicemailPinReset" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/voicemailpinreset"
},
"v1:callGroupVoicemailSettings" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/voicemailsettings"
},
"v1:queueSettings" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/queue"
},
"v1options:callGroupType" : {
"href" : "/api/v1/enums/callgrouptype"
},
"v1options:ringBehaviourType" : {
"href" : "/api/v1/enums/ringbehaviourtype"
}
},
"allowGroupCallsToTwinningTargets" : false, "callGroupId" : 3,
"callGroupType" : "BroadcastGroup", "extension" : "6001", "membersLocked" : false,
"name" : "Moose Call Horn Sales Team", "queueEnabled" : true,
"ringBehaviour" : "RingPhonesNotInUse", "voicemailEnabled" : true,
"_embedded" : { "callForwardNoAnswer" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callfwdnoanswers/6001"
}
},
"callTarget" : "4332", "callTargetType" : "SubscriberVM", "numberOfRings" : 4
},
"queueSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/queue"
}
},
"announcementDurationMins" : 10,
"positionAnnouncementInterval" : 30, "positionEnabled" : false,
"rings" : 2
},
"callPermissionProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/0"
}
},
"callPermissionProfileId" : 0, "name" : "Call Permission - Sales"
},
"voicemailBox" : { "_links" : {
"self" : {
"href" : "/api/v1/voicemailservers/101/voicemailboxes/23"
}
},
"releaseDate" : "12/1/22, 2:46 p.m.", "voicemailBoxAccount" : "243805000496001",
"voicemailBoxId" : 23, "voicemailBoxState" : "Released"
}
}
}
Use a PUT request to modify the properties of a call group.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the call group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Max 50 chars. |
ringBehaviour | String | Must be a valid call group ring behaviour. Only used for broadcast and hunt groups, it will be ignored for all other group types. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | For possible values see the ring BehaviourType link relation. If queuing is enabled on the group, this field only allowed to be set to RingPhonesNotIn Use. |
huntGroup Settings.hunt GroupType | String | Only valid for hunt groups which can be Linear or Circular. For all other group types it will be ignored if provided. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | For possible values see the huntGroup Type link relation. |
huntGroup Settings.member AnswerTimeout | Number | The number of rings to wait before timing out a hunt group member and moving on to the next. Only applies to hunt groups. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a positive number |
membersLocked | Boolean | If true then members of the group cannot log out of the group. Not applicable for page groups. This field can only be | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False |
Path | Type | Description | Permission | Constraints |
set to true if there are members in the group. | ||||
allowGroupCalls ToTwinning Targets | Boolean | If true then members of the group can have calls ring their twinned devices. Not applicable for page and pickup groups. This field can only be set to true if there are members in the group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False |
queueEnabled | Boolean | Indicate if the Queuing is enabled for this Call Group. When change from true to false, all current queue settings will be reset and lost. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False. When set to true, all members of this call group must be agent, must not reach the queue group allocation limit of this tenant, otherwise, will fail. |
voicemailEnabled | Boolean | Indicate if the Voicemail is enabled for this Call Group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False. When set to true, must not reach the call group voicemail allocation limit of this tenant, otherwise, will fail. |
PUT /api/v1/tenants/21375/callinggroups/3 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:39407
Content-Length: 304
{
"name" : "Moose Call Horn Sales Team", "ringBehaviour" : "RingPhonesNotInUse", "huntGroupSettings" : {
"huntGroupType" : "Linear", "memberAnswerTimeout" : 10
},
"membersLocked" : true, "allowGroupCallsToTwinningTargets" : true, "queueEnabled" : true,
"voicemailEnabled" : true
}
Table of Contents
This relation returns a list of configured call groups for the tenant.
GET
View list of call groups HEAD
Get just the header response POST
Add new call group
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The Call Group list resource provides a list of CallGroup resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of existing extensions of the tenant. This is useful to find the a not used extension if the client want specify one. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:ringBehaviourType | List of valid call behaviours for ringing group members devices. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:callGroupType | List of valid call group types that can be set for groups. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:huntGroupType | List of valid sub types for hunt groups. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the call group list represents a single call group, and indicates the call group extension and type. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1316
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/callinggroups/{callGroupId}", "templated" : true
} ],
"v1options:callGroupType" : [ {
"href" : "/api/v1/enums/callgrouptype"
} ],
"v1options:huntGroupType" : [ {
"href" : "/api/v1/enums/huntgrouptype"
} ],
"v1options:ringBehaviourType" : [ {
"href" : "/api/v1/enums/ringbehaviourtype"
} ]
},
"count" : { "callGroup" : 1
},
"total" : { "callGroup" : 1
},
"_embedded" : {
"callGroup" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3"
}
},
"callGroupId" : 3,
"callGroupType" : "BroadcastGroup",
"extension" : "6001",
"name" : "Moose Call Horn Sales Team", "queueEnabled" : true, "voicemailEnabled" : true
} ]
}
}
Use a POST request to add a new call group.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the call group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Max 50 chars. | None |
extension | String | The extension to be used for the call group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | If specified, it must be a valid extension for a group and not be in use. | Next unused value in range. |
callGroupType | String | The call group type. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. For possible values see callGroup Type. | None |
ringBehaviour | String | The desired ring behaviour for the group: ring all phones, or only ring phones not in use. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Only applies to broadcast and hunt groups, and will be ignored for all other call group types. If queuing is enabled on the group, this field will be set to Ring PhonesNotIn | RingPhonesNotIn Use |
Path | Type | Description | Permission | Constraints | Default Value |
Use. For possible values see ring BehaviourType. | |||||
huntGroup Settings.hunt GroupType | String | The hunt group sub-type. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required for Hunt Groups. Not applicable for other group types. For possible values see huntGroup Type. | Linear |
huntGroup Settings. memberAnswer Timeout | Number | The number of rings to wait before timing out a hunt group member. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a positive number | 1 |
membersLocked | Boolean | If true then members of the group cannot log out of the group. While this field is present when adding a new group, it can only be set if there are members in the group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | false |
allowGroup CallsTo Twinning Targets | Boolean | If true then members of the group can have calls ring their twinned devices. While this field is present when adding a new group, it can only be set if there are members in the group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | false |
queueEnabled | Boolean | Indicate if the Queuing is enabled for this Call Group. When change from true to false, all current | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False. When set to true, all members of this call group must be agent, must not reach the queue group allocation limit | false |
Path | Type | Description | Permission | Constraints | Default Value |
queue settings will be reset and lost. | of this tenant, otherwise, will fail. | ||||
voicemail Enabled | Boolean | Indicate if the Voicemail is enabled for this Call Group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False. When set to true, must not reach the call group voicemail allocation limit of this tenant, otherwise, will fail. | false |
A successful POST returns a 201 (Created). A link to the newly added group can be found in the Location field in the response header.
POST /api/v1/tenants/21375/callinggroups HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:39407
Content-Length: 362
{
"callGroupType" : "HuntGroup",
"name" : "Moose Call Horn Sales Team", "extension" : "6001",
"ringBehaviour" : "RingPhonesNotInUse", "huntGroupSettings" : {
"huntGroupType" : "Linear", "memberAnswerTimeout" : 10
},
"membersLocked" : true, "allowGroupCallsToTwinningTargets" : true, "queueEnabled" : false,
"voicemailEnabled" : true
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/callinggroups/4
Table of Contents
The CallGroupMember resource provides information about a specific member of a group. This includes whether the user/location is logged into the group and their extension.
GET
View Call Group Member Details HEAD
Get just the header response PUT
Modify the details about the member of the Call Group DELETE
Remove the member from the Call Group
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET, PUT (only their own data) |
Location | GET, PUT (only their own data) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
loggedIn | Boolean | True if the user/location is currently logged into the group. This is inapplicable to Page Group. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
extension | String | The extension of the user/ location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
twinningEnabled | Boolean | True if the user’s/location’s twinned device is to be called for group calls. This is inapplicable to Page Group or Pickup Group. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The call group | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The extension | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 935
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/members/4332"
}
},
"extension" : "4332", "loggedIn" : true, "twinningEnabled" : true, "_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
},
"callGroup" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3"
}
},
"callGroupId" : 3,
"callGroupType" : "BroadcastGroup", "extension" : "6001",
"name" : "Moose Call Horn Sales Team", "voicemailEnabled" : true
}
}
}
Use a PUT request to modify the properties of a Call Group Member.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
loggedIn | Boolean | True if the user/location is currently logged into the group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | True |
twinning Enabled | Boolean | True if the user’s/ location’s twinned device is to be rung for calls to this group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. This value can only be set to true if the call group supports group twinning, and the user/location has the twinning feature. It cannot be set to true for locations. | False |
PUT /api/v1/tenants/21375/callinggroups/3/members HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39407 Content-Length: 51
{
"loggedIn" : true, "twinningEnabled" : true
}
CallGroup CallPermissionProfile Resource
Table of Contents
The CallGroup CallPermissionProfile resource provides information about the assigned call permission profile of the CallGroup.
GET
View Call Group Call Permission Profile setting HEAD
Get just the header response PUT
Modify the Call Group Call Permission Profile setting.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
callPermission ProfileId | Number | Identifier the call permission profile currently associated with the CallGroup. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:callPermissionProfiles | List of call permission profiles for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The CallPermissionProfile currently associated with the CallGroup. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 671
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/callpermissionprofile"
},
"v1:callPermissionProfiles" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles{?expand,filter}", "templated" : true
}
},
"callPermissionProfileId" : 0, "_embedded" : {
"callPermissionProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/0"
}
},
"callPermissionProfileId" : 0, "name" : "Call Permission - Sales"
}
}
}
Use a PUT request to modify the Call Group Call Permission Profile setting.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
call Permission ProfileId | Number | Identifier of the call permission profile going to associate with the Call Group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a valid call permission profile identifier of the tenant, could be the ' Unassigned' call permission profile. | n/a |
PUT /api/v1/tenants/21375/callinggroups/3/callpermissionprofile HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39407 Content-Length: 35
{
"callPermissionProfileId" : 0
}
Table of Contents
Sample POST Response Description
The Call Group PIN resource provides the ability to set a new PIN for Call Group.
HEAD
Get just the header response POST
Set Call Group’s PIN
Permitted Authorities (as defined in API Guide)
Telco User
POST
TenantAdmin
POST
Use a POST request with the following properties in the payload to set new PIN.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
pin
String
The New PIN being set as Call Group PIN.
Telco(Tenant BasicOrAdvance Management), TenantAdmin
Required, must be a valid PIN based on system PIN policies.
POST /api/v1/tenants/21375/callinggroups/3/pin HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:37061 Content-Length: 20
{
"pin" : "3546"
}
HTTP/1.1 200 OK
Call Group Presence State Routing Resource
Table of Contents
The Call Group Presence State Routing resource provides information about the Presence State Routing configuration of the supporting group types: Broadcast, Hunt, and Rollover.
GET
View Call Group Presence State Routing detail HEAD
Get just the header response PUT
Modify Call Group Presence State Routing
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Path | Type | Description | Visibility |
awayHoursNumber | String | The Number that the call group routes to during Away Hours. The call is routed to call group members if the number is empty. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
inOfficeHoursNumber | String | The Number that the call group routes to during In Office Hours. The call is routed to call group members if the number is empty. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
lunchHoursNumber | String | The Number that the call group routes to during Lunch Hours. The call is routed to call group members if the number is empty. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
vacationNumber | String | The Number that the call group routes to when Vacation routing override is selected. The call is routed to call group members if the number is empty. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
routingOverrideType | String | The override type is used for presence state routing. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
timezone | String | The time zone is used for presence state routing. Readonly for now. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday | Object | The configuration for Mondays. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.inOffice | Boolean | Indicates whether In Office at all on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Path | Type | Description | Visibility |
monday.inOfficeHours From | String | The start time of In Office hours on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.inOfficeHours To | String | The end time of In Office hours on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.lunchFrom | String | The start time of Lunch hours on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
monday.lunchTo | String | The end time of Lunch hours on this day. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
tuesday | Object | The configuration for Tuesdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
wednesday | Object | The configuration for Wednesdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
thursday | Object | The configuration for Thursdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
friday | Object | The configuration for Fridays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
saturday | Object | The configuration for Saturdays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
sunday | Object | The configuration for Sundays. See Mondays for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1options:presenceState RoutingOverrideType | List of valid Routing Override types that can be set for Presence State Routing. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1613
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/presencestaterouting"
},
"v1options:presenceStateRoutingOverrideType" : {
"href" : "/api/v1/enums/presencestateroutingoverridetype"
}
},
"awayHoursNumber" : "", "friday" : {
"lunchTo" : "", "inOffice" : true, "lunchFrom" : "",
"inOfficeHoursTo" : "24:00",
"inOfficeHoursFrom" : "00:00"
},
"inOfficeHoursNumber" : "", "lunchHoursNumber" : "", "monday" : {
"lunchTo" : "", "inOffice" : true, "lunchFrom" : "",
"inOfficeHoursTo" : "24:00",
"inOfficeHoursFrom" : "00:00"
},
"routingOverrideType" : "None", "saturday" : {
"lunchTo" : "", "inOffice" : true, "lunchFrom" : "",
"inOfficeHoursTo" : "24:00",
"inOfficeHoursFrom" : "00:00"
},
"sunday" : { "lunchTo" : "", "inOffice" : true, "lunchFrom" : "",
"inOfficeHoursTo" : "24:00",
"inOfficeHoursFrom" : "00:00"
},
"thursday" : { "lunchTo" : "", "inOffice" : true, "lunchFrom" : "",
"inOfficeHoursTo" : "24:00",
"inOfficeHoursFrom" : "00:00"
},
"timezone" : "America/New_York",
"tuesday" : { "lunchTo" : "", "inOffice" : true, "lunchFrom" : "",
"inOfficeHoursTo" : "24:00",
"inOfficeHoursFrom" : "00:00"
},
"vacationNumber" : "", "wednesday" : {
"lunchTo" : "", "inOffice" : true, "lunchFrom" : "",
"inOfficeHoursTo" : "24:00",
"inOfficeHoursFrom" : "00:00"
}
}
Use a PUT request to modify Presence State Routing of Call Group.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
awayHours Number | String | The Number that the call group routes to during Away Hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. The call is routed to call group members if the number is empty. | If not provided, will keep current setting unchanged. |
inOfficeHours Number | String | The Number that the call group routes to during In Office Hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. The call is routed to call group members if the number is empty. | If not provided, will keep current setting unchanged. |
lunchHours Number | String | The Number that the call group routes to during Lunch Hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. The call is routed to call group members if the number is empty. | If not provided, will keep current setting unchanged. |
Path | Type | Description | Permission | Constraints | Default Value |
vacation Number | String | The Number that the call group routes to when Vacation routing override is selected. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. The call is routed to call group members if the number is empty. | If not provided, will keep current setting unchanged. |
routing OverrideType | String | The override type is used for presence state routing. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | If not provided, will keep current setting unchanged. |
monday | Object | The configuration for Mondays. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | If not provided, will keep current setting unchanged. |
monday.in Office | Boolean | Indicates whether In Office at all on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | If not provided, will keep current setting unchanged. |
monday.in OfficeHours From | String | The start time of In Office hours on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. | If not provided, will keep current setting unchanged. |
monday.in OfficeHoursTo | String | The end time of In Office hours on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. | If not provided, will keep current setting unchanged. |
monday.lunch From | String | The start time of Lunch hours on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. | If not provided, will keep current setting unchanged. |
Path | Type | Description | Permission | Constraints | Default Value |
monday.lunch To | String | The end time of Lunch hours on this day. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, the format should be HH:MM where HH is value of hours and MM is value of minutes. | If not provided, will keep current setting unchanged. |
tuesday | Object | The configuration for Tuesdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
wednesday | Object | The configuration for Wednesdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
thursday | Object | The configuration for Thursdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
friday | Object | The configuration for Fridays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
saturday | Object | The configuration for Saturdays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
sunday | Object | The configuration for Sundays. See Mondays for details | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as Monday. | Same as Monday. |
PUT /api/v1/tenants/21375/callinggroups/3/presencestaterouting HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:37217 Content-Length: 1318
{
"monday" : { "inOffice" : true,
"inOfficeHoursFrom" : "07:00",
"inOfficeHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00"
},
"tuesday" : { "inOffice" : true,
"inOfficeHoursFrom" : "07:00",
"inOfficeHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00"
},
"wednesday" : { "inOffice" : true,
"inOfficeHoursFrom" : "07:00",
"inOfficeHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00"
},
"thursday" : { "inOffice" : true,
"inOfficeHoursFrom" : "07:00",
"inOfficeHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00"
},
"friday" : { "inOffice" : true,
"inOfficeHoursFrom" : "07:00",
"inOfficeHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00"
},
"saturday" : { "inOffice" : true,
"inOfficeHoursFrom" : "07:00",
"inOfficeHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00"
},
"sunday" : { "inOffice" : true,
"inOfficeHoursFrom" : "07:00",
"inOfficeHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00"
},
"inOfficeHoursNumber" : "2000",
"lunchHoursNumber" : "1000",
"awayHoursNumber" : "6132345678",
"vacationNumber" : "6135557777", "routingOverrideType" : "Vacation"
}
Call Group Voicemail PIN Reset Resource
Table of Contents
Sample POST Response Description
The Call Group Voicemail PIN Reset resource provides the ability to set a new PIN for Call Group’s voicemail.
HEAD
Get just the header response POST
Set Call Group’s voicemail PIN
Permitted Authorities (as defined in API Guide)
Telco User
POST
TenantAdmin
POST
Use a POST request with the following properties in the payload to set new voicemail PIN.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
newPIN
String
The New PIN being set as voicemail PIN.
Telco(Tenant BasicOrAdvance Management), TenantAdmin
Required, must be a valid PIN based on voicemail system PIN policies.
POST /api/v1/tenants/21375/callinggroups/3/voicemailpinreset HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:33359 Content-Length: 23
{
"newPIN" : "3621"
}
HTTP/1.1 200 OK
Call Group Voicemail Settings Resource
Table of Contents
The Call Group Voicemail Settings resource provides information about the voicemail settings of the Call Group.
GET
View Call Group Voicemail Settings detail HEAD
Get just the header response PUT
Modify Call Group Voicemail Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Path | Type | Description | Visibility |
useMWI | Boolean | Indicates whether the call group uses MWI for voicemail. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
notificationEmails | String | One or multiple email addresses where to send notification, separated by semi-colon. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
copyToEmails | String | One of multiple email addresses where to send a copy of the voicemail, separated by semi-colon. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
deleteAfterCopy | Boolean | Indicates whether delete the voicemail after sent out a copy to specified email address. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
dial0Enabled | Boolean | Indicates whether the dial0 option is enabled for voicemail. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
dial0Extension | String | When dial0 option enabled, the target extension when 0 is dialed, could be user or location extension, call group extension or auto attendant extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
timeStampTimeZone | String | TimeZone for the time stamp in notification or copy emails. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
vmLanguage | String | Prefer language for voicemail prompts. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:vmLanguages | Link to get a list of available Voicemail Languages in system. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 601
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/voicemailsettings"
},
"v1:vmLanguages" : {
"href" : "/api/v1/vmlanguages{?filter}", "templated" : true
}
},
"copyToEmails" : "[email protected]", "deleteAfterCopy" : false,
"dial0Enabled" : true, "dial0Extension" : "7001",
"notificationEmails" : "[email protected]; [email protected]", "timeStampTimeZone" : "US/Eastern",
"useMWI" : true, "vmLanguage" : "en"
}
Use a PUT request to modify voicemail settings of Call Group.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
useMWI | Boolean | Indicates whether the call group uses MWI for voicemail. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be True or False. | If not provided, will keep the current setting. |
notification Emails | String | One or more email addresses to send | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be a valid email address; if more than one, | If not provided, will keep the current setting. |
Path | Type | Description | Permission | Constraints | Default Value |
notification to. Maximum 3 emails. | addresses must separated by semi-colons. | ||||
copyToEmails | String | One of multiple email addresses where to send a copy of the voicemail. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be a valid email address; if more than one, addresses must separated by semi-colons. | If not provided, will keep the current setting. |
deleteAfter Copy | Boolean | Indicates whether to delete the voicemail after a copy is sent out to specified the email address(es). If copyToEmails is empty, it is reset to True. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be True or False. | If not provided, will keep the current setting. |
dial0Enabled | Boolean | Indicates whether the dial0 option is enabled for voicemail. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be True or False. | If not provided, will keep the current setting. |
dial0 Extension | String | The target extension when 0 is dialed, could be user or location extension, call group extension or auto attendant extension. If dial0Enabled is false, this value is ignored. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be valid user or location extension, call group extension or auto attendant extension of this tenant. | If not provided, will keep the current setting. |
timeStampTime Zone | String | TimeZone for the time stamp in notification or copy emails. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be an valid time zone name. | If not provided, will keep the current setting. |
vmLanguage | String | Preferred language for voicemail prompts. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided, must be an valid Voicemail | If not provided, will keep the current setting. |
Path | Type | Description | Permission | Constraints | Default Value |
Language code available in system. |
PUT /api/v1/tenants/21375/callinggroups/3/voicemailsettings HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:37289 Content-Length: 275
{
"useMWI" : true,
"notificationEmails" : "[email protected]; [email protected]", "copyToEmails" : "[email protected]",
"deleteAfterCopy" : true, "dial0Enabled" : true, "dial0Extension" : "7001", "timeStampTimeZone" : "US/Eastern", "vmLanguage" : "en"
}
CallGroupMemberMgmt List Resource
Table of Contents
PUT Request Description
This relation returns a list of member of a specific call group. These members can be users or locations.
The list of members is ordered. The client can manage the order of the list by either POSTing individual new members in the correct order (new members are added to the end of the list), or by using a PUT request to replace the entire list with a new one.
Most CallGroups can have a maximum of 100 members. Pickup Groups are limited to a maximum of 50 members across all groups of that type.
GET
View list of call group members HEAD
Get just the header response POST
Add a new member to the end of the call group PUT
Replace the call group with a new list
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, POST |
TenantAdmin User | GET, PUT, POST |
The CallGroupMember list resource provides a list of CallGroupMember resources for the specified CallGroup.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of all extensions for the tenant that are in use. It is a template that allows filtering so that, for example, only user extensions can be seen. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
A list of members of the call group. Each element indicates the member’s logged in and personal group twinning status. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 970
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/members"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/callinggroups/3/members/{extension}", "templated" : true
} ]
},
"count" : { "callGroupMember" : 1
},
"total" : { "callGroupMember" : 1
},
"_embedded" : { "callGroupMember" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/members/4332"
}
},
"extension" : "4332", "loggedIn" : true, "twinningEnabled" : true
} ]
}
}
Use a POST request to add or move a CallGroupMember to the end of the call group membership list. If the extension is already a group member, it will be moved to the bottom of the list. If the extension is not already a member, it will be added to the bottom of the list.
POST Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
loggedIn | Boolean | Indicates if logged into the group for this member. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. |
twinningEnabled | Boolean | Indicates if twinning is enabled for this member. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. |
extension | String | The extension of the user/location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This must be a valid extension. |
POST Response Properties
A successful POST returns a successful response with an empty payload. If the extension was added to the list, the response is a 201 Created and the Location header indicates the URI of the new member. If the extension was moved to the bottom of the list, the response is a 200 OK.
Sample POST Request
POST /api/v1/tenants/21375/callinggroups/3/members HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39407 Content-Length: 75
{
"loggedIn" : true, "extension" : "4111", "twinningEnabled" : true
}
Sample POST Response
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/callinggroups/3/members/4111 Content-Length: 0
Use a PUT request to replace the existing member list with a new list of members. This request also supports setting the member’s loggedIn and twinningEnabled statuses at the same time.
PUT Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
callGroup Member[]. loggedIn | Boolean | True if the user/location is currently logged into the group. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | True |
callGroup Member[]. extension | String | The extension of the user/location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This must be a valid extension. | None |
callGroup Member[]. twinning Enabled | Boolean | If True then the user’s/location’s twinned device will ring for group calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | False |
PUT Response Properties
The response to a successful PUT request is the new resource representation, as defined in the GET Response.
Sample PUT Request
PUT /api/v1/tenants/21375/callinggroups/3/members HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39407 Content-Length: 113
{
"callGroupMember" : [ { "loggedIn" : true, "extension" : "4332", "twinningEnabled" : true
} ]
}
Sample PUT Response
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 970
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/members"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/callinggroups/3/members/{extension}", "templated" : true
} ]
},
"count" : { "callGroupMember" : 1
},
"total" : { "callGroupMember" : 1
},
"_embedded" : { "callGroupMember" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/members/4332"
}
},
"extension" : "4332", "loggedIn" : true, "twinningEnabled" : true
} ]
}
}
CallPermissionProfile Resource
Table of Contents
The CallPermissionProfile resource provides information about a specific Call Permission Profile.
Deleting a CallPermissionProfile is supported.
GET
View CallPermissionProfile Details HEAD
Get just the header response PUT
Modify CallPermissionProfile Details DELETE
Remove the CallPermissionProfile
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET |
Location | GET |
Path | Type | Description | Visibility |
name | String | The name of the Call PermissionProfile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
callPermission ProfileId | Number | Identifier for the Call PermissionProfile. Read Only, system assigned. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
international | Object | International Call Permission of the Call PermissionProfile. Include setting for Open, Lunch, Close and Special hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
international.allow OpenHour | Boolean | Permission for open hours of International Call Permission of the Call PermissionProfile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
international.allow CloseHour | Boolean | Permission for close hours of International Call Permission of the Call PermissionProfile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
international.allow LunchHour | Boolean | Permission for lunch hours of International Call Permission of the Call PermissionProfile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
international.allow SpecialHour | Boolean | Permission for special hours of International Call Permission of the Call PermissionProfile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
local | Object | Local Call Permission of the CallPermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
longDistance | Object | Long Distance Call Permission of the Call PermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
operatorAssisted | Object | Operator Assisted Call Permission of the Call PermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
regional | Object | Regional Call Permission of the CallPermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
tollFree | Object | Toll Free Call Permission of the CallPermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
tollPremium | Object | Toll Premium Call Permission of the Call PermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
redirectInboundTo External | Object | Redirect Inbound To External Call Permission of the CallPermissionProfile. Include setting for Open, | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
Lunch, Close and Special hours. See International Call Permission for details. | |||
selectLongDistance Provider | Object | Select Long Distance Provider Call Permission of the CallPermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
selectRegional Provider | Object | Select Regional Provider Call Permission of the Call PermissionProfile. Include setting for Open, Lunch, Close and Special hours. See International Call Permission for details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:callPermissionProfile Members | List members of the call permission profile. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1920
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116"
},
"v1:callPermissionProfileMembers" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members{?expand,filter}", "templated" : true
}
},
"callPermissionProfileId" : 116, "international" : {
"allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"local" : { "allowLunchHour" : true, "allowCloseHour" : false,
"allowSpecialHour" : false, "allowOpenHour" : true
},
"longDistance" : { "allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"name" : "Call Permission - Sales", "operatorAssisted" : {
"allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"redirectInboundToExternal" : { "allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"regional" : { "allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"selectLongDistanceProvider" : { "allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"selectRegionalProvider" : { "allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"tollFree" : { "allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
},
"tollPremium" : { "allowLunchHour" : true, "allowCloseHour" : false, "allowSpecialHour" : false, "allowOpenHour" : true
}
}
Use a PUT request to modify the properties of a CallPermissionProfile.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the Call PermissionProfile. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Max 50 chars. |
international | Object | The permission setting of international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. |
international. allowOpenHour | Boolean | The permission setting for open hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. |
international. allowCloseHour | Boolean | The permission setting for close hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. |
international. allowLunchHour | Boolean | The permission setting for lunch hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. |
international. allowSpecialHour | Boolean | The permission setting for special hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. |
local | Object | The permission setting of local calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
longDistance | Object | The permission setting of long distance calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
operatorAssisted | Object | The permission setting of operator assisted calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
Path | Type | Description | Permission | Constraints |
regional | Object | The permission setting of regional calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
tollFree | Object | The permission setting of toll free calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
tollPremium | Object | The permission setting of toll premium calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
redirectInbound ToExternal | Object | The permission setting of redirect inbound calls to external. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
selectRegional Provider | Object | The permission setting of select regional provider for calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
selectLong DistanceProvider | Object | The permission setting of select long distance provider for calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. |
PUT /api/v1/tenants/21375/callpermissionprofiles/116 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39923 Content-Length: 1486
{
"name" : "Call Permission - Sales", "international" : {
"allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"local" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true,
"allowSpecialHour" : true
},
"longDistance" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"operatorAssisted" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"regional" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"tollFree" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"tollPremium" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"redirectInboundToExternal" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"selectLongDistanceProvider" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"selectRegionalProvider" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
}
}
CallPermissionProfile List Resource
Table of Contents
This relation returns a list of configured CallPermissionProfiles for the tenant.
GET
View list of CallPermissionProfiles HEAD
Get just the header response POST
Add new CallPermissionProfile
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The CallPermissionProfile list resource provides a list of CallPermissionProfile resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the CallPermissionProfile list represents a single CallPermissionProfile, and indicates the Call PermissionProfile identifier, name and permissions. The 'Unassigned' call permission is not included in the list. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
The 'Unassigned' Call PermissionProfile is created with the tenant, can not be deleted, name can not be changed, members can not be managed. While the permission setting can be managed. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1083
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/{callPermissionProfileId}", "templated" : true
} ]
},
"count" : { "callPermissionProfile" : 1,
"callPermissionProfileForUnassigned" : 1
},
"total" : { "callPermissionProfile" : 1,
"callPermissionProfileForUnassigned" : 1
},
"_embedded" : { "callPermissionProfileForUnassigned" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/110"
}
},
"callPermissionProfileId" : 110, "name" : "Unassigned"
} ],
"callPermissionProfile" : [ { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116"
}
},
"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"
} ]
}
}
Use a POST request to add a new CallPermissionProfile.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the CallPermission Profile. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Max 50 chars. | None |
international | Object | The permission setting of international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. | If not specified, will be not allowed for Open, Lunch, Close and Special hours. |
international. allowOpenHour | Boolean | The permission setting for open hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. | false |
international. allowClose Hour | Boolean | The permission setting for close hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. | false |
international. allowLunch Hour | Boolean | The permission setting for lunch hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. | false |
international. allowSpecial Hour | Boolean | The permission setting for special hours for international calls. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. True or False. | false |
Path | Type | Description | Permission | Constraints | Default Value |
local | Object | The permission setting of local calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
longDistance | Object | The permission setting of long distance calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
operator Assisted | Object | The permission setting of operator assisted calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
regional | Object | The permission setting of regional calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
tollFree | Object | The permission setting of toll free calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
tollPremium | Object | The permission setting of toll premium calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
redirect InboundTo External | Object | The permission setting of redirect inbound calls to external. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
Path | Type | Description | Permission | Constraints | Default Value |
select Regional Provider | Object | The permission setting of select regional provider for calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
selectLong Distance Provider | Object | The permission setting of select long distance provider for calls. See international calls setting for details. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Same as permission setting of international calls. | Same as permission setting of international calls. |
A successful POST returns a 201 (Created). A link to the newly added CallPermissionProfile can be found in the Location field in the response header.
POST /api/v1/tenants/21375/callpermissionprofiles HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39923 Content-Length: 1486
{
"name" : "Call Permission - Sales", "international" : {
"allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"local" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true,
"allowSpecialHour" : true
},
"longDistance" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"operatorAssisted" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"regional" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"tollFree" : {
"allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"tollPremium" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"redirectInboundToExternal" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"selectLongDistanceProvider" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
},
"selectRegionalProvider" : { "allowOpenHour" : true, "allowCloseHour" : true, "allowLunchHour" : true, "allowSpecialHour" : true
}
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/callpermissionprofiles/34
CallPermissionProfileMember Resource
Table of Contents
The CallPermissionProfileMember resource provides information about a specific member of a call permission profile.
GET
View Call Permission Profile Member Details HEAD
Get just the header response PUT
Add/Modify a member of the Call Permission Profile DELETE
Remove the member from the Call Permission Profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, DELETE |
TenantAdmin User | GET, DELETE |
Member of the "Unassigned" Call Permission Profile cannot be managed, thus PUT and DELETE is not supported.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
extension | String | The extension of the Call PermissionProfileMember. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Extension of the Call PermissionProfileMember, could be a User or Location or ACD extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 582
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members/4332"
}
},
"extension" : "4332", "_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
}
}
}
CallPermissionProfileMember List Resource
Table of Contents
PUT Request Description
This relation returns a list of member of a specific call permission profile. These members can be extension of users, locations or ACD.
The client can manage the order of the list by using a PUT request to replace the entire list with a new list.
GET
View list of call permission profile members HEAD
Get just the header response PUT
Replace current call permission profile members with a new list POST
Add a new call permission profile member to the list
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, POST |
TenantAdmin User | GET, PUT, POST |
Members of the "Unassigned" Call Permission Profile cannot be managed, thus PUT is not supported.
The CallPermissionProfileMember list resource provides a list of CallPermissionProfileMember resources for the specified CallPermissionProfile.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of existing extensions of the tenant. This is useful to get a list of User, Location, ACD extensions which can be used for manage call permission profile members. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the Call PermissionProfileMember list represents a Call PermissionProfileMember. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1052
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members/{extension}", "templated" : true
} ]
},
"count" : { "callPermissionProfileMember" : 2
},
"total" : { "callPermissionProfileMember" : 2
},
"_embedded" : { "callPermissionProfileMember" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members/4332"
}
},
"extension" : "4332"
}, {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members/5001"
}
},
"extension" : "5001"
} ]
}
}
Use a POST request to add a CallPermissionProfileMember to the membership list. If the extension is already a group member, it will be kept in the list. If the extension is not already a member, it will be added to the list.
POST Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
extension | String | The extension of the CallPermissionProfile Member. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Must be a valid extension of User, Location or ACD. |
POST Response Properties
A successful POST returns a successful response with an empty payload. If the extension was added to the list, the response is a 201 Created and the Location header indicates the URI of the new member. If the extension was moved to the bottom of the list, the response is a 200 OK.
Sample POST Request
POST /api/v1/tenants/21375/callpermissionprofiles/116/members HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39923 Content-Length: 26
{
"extension" : "4332"
}
Sample POST Response
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/callpermissionprofiles/116/members/4332
Use a PUT request to replace the existing member list with a new list of members.
PUT Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
call Permission Profile Member[]. extension | String | The extension of the User or Location or ACD. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This must be a valid extension. | None |
PUT Response Properties
The response to a successful PUT request is the new resource representation, as defined in the GET Response.
Sample PUT Request
PUT /api/v1/tenants/21375/callpermissionprofiles/116/members HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39923 Content-Length: 104
{
"callPermissionProfileMember" : [ { "extension" : "4332"
}, {
"extension" : "5001"
} ]
}
Sample PUT Response
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1052
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members/{extension}",
"templated" : true
} ]
},
"count" : { "callPermissionProfileMember" : 2
},
"total" : { "callPermissionProfileMember" : 2
},
"_embedded" : { "callPermissionProfileMember" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members/4332"
}
},
"extension" : "4332"
}, {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116/members/5001"
}
},
"extension" : "5001"
} ]
}
}
Table of Contents
The CallWaitingTone resource indicates whether the User/Location has activated the Call Waiting Tone feature.
When active, this feature causes the the speaker to hear a tone when they are on the phone and another incoming call is received.
GET
View Call Waiting Tone feature state HEAD
Get just the header response PUT
Modify Call Waiting Tone feature state
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
User | GET, PUT (self only) |
Location | GET, PUT (self only) |
Path | Type | Description | Visibility |
active | Boolean | Indicates whether the Call Waiting Tone feature is Active for this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 117
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/cwt"
}
},
"active" : false
}
Use a PUT request to modify the properties of Call Waiting Tone.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
active | Boolean | Indicates whether Call Waiting Tone is currently active for this user/location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. |
PUT /api/v1/tenants/21375/users/4332/cwt HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463
Content-Length: 21
{
"active" : true
}
ClickToCallConfirmBeforeDial Resource
Table of Contents
Sample PUT Response Description
The ClickToCallConfirmBeforeDial resource contains the User’s Default ClickToCallConfirmBeforeDial setting.
GET
View user Default ClickToCallConfirmBeforeDial setting HEAD
Get just the header response PUT
Modify user ClickToCallConfirmBeforeDial setting
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT
TenantAdmin
GET, PUT
User
GET, PUT
Path
Type
Description
Visibility
active
Boolean
Indicates if the Confirm Before Dial check box is checked by default in the click to call popup.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 142
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/clicktocallconfirmbeforedial"
}
},
"active" : false
}
Use a PUT request with the following properties in the payload to modify the user’s ClickToCallConfirmBeforeDial setting.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
active
Boolean
Default Click to Call Confirm Before Dial setting, possible values are: true or false.
Telco(Tenant BasicOrAdvance Management), TenantAdmin, User
Mandatory
PUT /api/v1/tenants/21375/users/4332/clicktocallconfirmbeforedial HTTP/1.1 Content-Type: application/json; charset=UTF-8
Content-Length: 21
{
"active" : true
}
Table of Contents
The CLID resource provides a link to view the User/Location’s Calling Line ID Settings for outgoing calls.
The CLID for a User/Location may be inherited from the Site that their phone is on, it may be configured to a specific DID, or it may be set to Private. If it is a DID, the associated DID representation is embedded in this representation.
GET
View Calling Line ID settings HEAD
Get just the header response PUT
Modify Calling Line ID settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
subscriberClidType | String | Indicates how the user/location’s CLID is determined: either PRIVATE, inherited from phone Site, or statically assigned a specific DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
didId | Number | Indicates the ID of the DID which is used as CLID, only present when the 'subscriberClidType' value is 'DID'. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:dids | Retrieves a list of DIDs associated with this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:subscriberClid Type | Provides a list of the options available for the CLID assignment. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Represents the assigned DID when the user/ location’s SubscriberClid | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
Type is DID. Only present when the SubscriberClid Type is DID. |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 808
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/clid"
},
"v1:dids" : {
"href" : "/api/v1/tenants/21375/dids{?expand,filter,assigned}", "templated" : true
},
"v1options:subscriberClidType" : {
"href" : "/api/v1/enums/subscriberclidtype"
}
},
"didId" : 3, "subscriberClidType" : "DID", "_embedded" : {
"did" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dids/3"
}
},
"assigned" : false, "didId" : 3,
"phoneNumber" : "6132802000"
}
}
}
Use a PUT request to modify the properties of Calling Line ID settings.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
subscriberClid Type | String | Indicates CLID type of the User or Location. If this is not set to 'DID', then the 'didId' will be ignored if provided in request. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, possible values are 'Site', 'Private' and 'DID'. |
didId | Number | Indicates using the specified DID as CLID of the User or Location. If provided, the value must be ID of a valid DID of the same tenant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required only if the 'subscriberClidType' set to 'DID'. |
PUT /api/v1/tenants/21375/users/4332/clid HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463
Content-Length: 49
{
"subscriberClidType" : "DID", "didId" : 3
}
Table of Contents
The CLID Condition resource provides detail information about a CLID Condition.
GET
View CLID Condition Details HEAD
Get just the header response PUT
Modify a CLID Condition Details DELETE
Remove the CLID Condition
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET, PUT, DELETE (only their own data) |
Location | GET, PUT, DELETE (only their own data) |
Path | Type | Description | Visibility |
condId | Number | The identifier of CLID Condition. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
label | String | The label of CLID Condition. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
matchingType | String | The matching type of CLID Condition. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
digitPattern | String | The digit pattern is used for the CLID matching. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:extensions | List of extensions for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1options:clidMatchType | The available options for CLID matchingType. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 672
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions/1001"
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
},
"v1options:clidMatchType" : {
"href" : "/api/v1/enums/clidmatchtype"
}
},
"condId" : 1001,
"digitPattern" : "100", "label" : "Ext100", "matchingType" : "Extension"
}
Use a PUT request to modify the properties of a CLID Condition.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
label | String | The label of new CLID Condition. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars. |
matchingType | String | The matching type for the CLID Condition. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. |
digitPattern | String | The digit pattern is used for CLID matching. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. |
PUT /api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions/1001 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38297 Content-Length: 93
{
"label" : "StartsWith-1800", "matchingType" : "StartsWith", "digitPattern" : "1800"
}
Table of Contents
This relation returns a list of CLID Conditions configured for the specified SCR Rule.
GET
View CLID Condition List HEAD
Get just the header response PUT
Replace the existing list with a new list content POST
Add a CLID Condition in the list
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, POST |
Tenant-scoped Telco User | GET, PUT, POST |
TenantAdmin User | GET, PUT, POST |
Non-admin User | GET, PUT, POST (only their own data) |
Location | GET, PUT, POST (only their own data) |
The CLID Condition list resource provides a list of CLID Condition resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1options:clidMatchType | The available options for CLID matchingType. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the list represents a single CLID Condition. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 982
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions/{condId}", "templated" : true
} ],
"v1options:clidMatchType" : [ {
"href" : "/api/v1/enums/clidmatchtype"
} ]
},
"count" : { "clidCondition" : 1
},
"total" : { "clidCondition" : 1
},
"_embedded" : { "clidCondition" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions/1001"
}
},
"condId" : 1001,
"digitPattern" : "100", "label" : "Ext100", "matchingType" : "Extension"
} ]
}
}
Use a POST request to add a new CLID Condition.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
label | String | The label of new CLID Condition. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars. | None |
matchingType | String | The matching type of the CLID Condition. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. | None. |
digitPattern | String | The digit pattern is used for matching a CLID. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. | None. |
A successful POST returns a 201 (Created). A link to the newly added CLID Condition can be found in the Location field in the response header.
POST /api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38297 Content-Length: 93
{
"label" : "StartsWith-1800", "matchingType" : "StartsWith",
"digitPattern" : "1800"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions/4
This CLID Condition list resource supports the use of PUT to replace the list. This request also supports adding/removing condition(s) at the same time.
PUT Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
clid Condition[]. condId | Number | Identifier of a CLID Condition. If it doesn’t present, a new CLID Condition is added into the list. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional.It must be a valid CLID Condition ID if presents | None |
clid Condition[]. label | String | The label of CLID condition. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Reqquired. Max 50 chars. | None |
clid Condition[]. matchingType | String | The matching type for the CLID Condition. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Requried. | None |
clid Condition[]. digitPattern | String | The digit pattern is used for the CLID matching. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required | None |
PUT Response Properties
The response to a successful PUT request is the new resource representation, as defined in the GET Response.
Sample PUT Request
PUT /api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38297 Content-Length: 144
{
"clidCondition" : [ { "condId" : 1001, "label" : "New label",
"matchingType" : "StartsWith", "digitPattern" : "1888"
} ]
}
Sample PUT Response
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 987
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions/{condId}", "templated" : true
} ],
"v1options:clidMatchType" : [ {
"href" : "/api/v1/enums/clidmatchtype"
} ]
},
"count" : { "clidCondition" : 1
},
"total" : { "clidCondition" : 1
},
"_embedded" : { "clidCondition" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions/1001"
}
},
"condId" : 1001,
"digitPattern" : "1888", "label" : "New label", "matchingType" : "StartsWith"
} ]
}
}
Table of Contents
Modify Request Description
CustomAnnouncement Files can replace default announcement for tenants. These files can be uploaded and downloaded via this resource. Once uploaded they can be associated with tenants via Tenant Announcement List Resource.
GET
Download announcement audio file HEAD
Get just the header response PUT
Upload announcement audio file DELETE
Remove announcement audio file
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT, DELETE
TenantAdmin User
GET
Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.
Use a PUT request to upload a audio file for Custom Announcement. If the specified file currently not exist, will be added; if the specified file currently exist, it will be replaced by the uploading one. Only audio/wav format is supported, only 8 or 16 bit u-law codecs are supported. If success, will get a 200 OK response with no content.
Use a DELETE request to remove the existing audio file for Custom Announcement.
Table of Contents
Resource Details Description
The DefaultAnnouncement File is the default announcement audio file.
GET
Download the current announcement audio file HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
GET
TenantAdmin User
GET
Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.
DefaultBusinessHoursProfile Resource
Table of Contents
The DefaultBusinessHoursProfile resource describes the BusinessHoursProfile resource which has been configured as the tenant’s default.
The tenant may designate a specific Business Hours Profile to be their default. Once a profile is chosen to be the default, new resource associated with Time-of-Day functions, such as incoming call routing or outgoing call permissions, will be associated with this profile unless explcitly overridden.
The management of the default and all other aspects of Business Hours are manageable via API.
GET
View the default Business Hours Profile for the tenant HEAD
Get just the header response PUT
Change the Business Hour Profile default
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
businessHoursProfile Id | Number | Identifier for the default business hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
businessHoursProfile Name | String | The name of the business hours set. Read Only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:businessHoursProfiles | Link to list of available business HoursProfile for the Tenant which can be set to default. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Current default business hours for the tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 710
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/defaultbusinesshours"
},
"v1:businessHoursProfiles" : {
"href" : "/api/v1/tenants/21375/businesshours{?expand,filter}", "templated" : true
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours", "_embedded" : {
"businessHoursProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
}
}
}
Use a PUT request to add a new set of business hours.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileId | Number | The identifier for the new business hours. Do not set. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Will be ignored if provided. Assigned by the system. | None |
A successful PUT returns a 200 (OK) and the new default Business Hours.
PUT /api/v1/tenants/21375/defaultbusinesshours HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40873 Content-Length: 34
{
"businessHoursProfileId" : 2
}
Default System Announcement Resource
Table of Contents
The DefaultSystemAnnouncement resource describes current setting of a Announcement which is being set as the system’s default announcement. The default announcement of a system must be a System Announcement, not a Tenant Announcement.
GET
View Default System Announcement Settings HEAD
Get just the header response PUT
Modify Default System Announcement Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
announcementId | Number | Identifier for the Announcement which is currently set as Default System Announcement. | Telco(SystemManagement, TenantBasicOrAdvance Management) |
Relation | Description | Visibility |
v1:systemAnnouncements | Acceptable announcement values from System Announcement which can be set as Default System Announcement. | Telco(SystemManagement, Tenant BasicOrAdvanceManagement) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The announcement which is currently set as Default System Announcement. | Telco(SystemManagement, TenantBasicOrAdvance Management), Tenant Admin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 564
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/defaultsystemannouncement"
},
"v1:systemAnnouncements" : {
"href" : "/api/v1/systemannouncements{?expand,filter}", "templated" : true
}
},
"announcementId" : 2, "_embedded" : {
"announcement" : { "_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
}
}
}
Use a PUT request to modify the setting of DefaultSystemAnnouncement.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
announcementId | Number | The ID of the | Telco(System | Must be a |
announcement set | Management) | valid system | ||
as default. Only | announcement ID. | |||
Telco User can make | ||||
change. |
PUT /api/v1/defaultsystemannouncement HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:34865
Content-Length: 26
{
"announcementId" : 2
}
Table of Contents
Each DID (aka Incoming Call Routing) resource provides the tenant’s routing configuration for a specific phone number.
GET
View DID routing details HEAD
Get just the header response PUT
Modify DID Details DELETE
Remove the DID
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
phoneNumber | String | The DID phone number. | Telco, TenantAdmin |
didId | Number | The unique identifier for this DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
incomingName | String | A user-assigned identifier that can be applied to the DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
assigned | Boolean | True if Incoming Call Routing or Emergency Override routing has been configured for this DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
businessHoursFrom TenantDefault | Boolean | True if the Business Hours Profile associated with this DID is automatically inherited from the tenant’s default Business Hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
timezone | String | The timezone associated with the DID. 'DEFAULT' means using tenant default timezone. In conjunction with the Business Hours Profile, this affects the time calls switch from one routing to another. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
openHoursExtension | String | The extension that the DID routes to during Open Hours (as defined in the associated Business Hours Profile). | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Path | Type | Description | Visibility |
closedHoursExtension | String | The extension that the DID routes to during Closed Hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
lunchHoursExtension | String | The extension that the DID routes to during Lunch Hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
specialHours Extension | String | The extension that the DID routes to during Special (or 'Other') Hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:didBusinessHoursMgmt | Use this link to change the business hours associated with this Did. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The extension that the DID routes to during Open Hours. This section is only present if the extension is a User or Location extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The extension that the DID routes to during Closed Hours. This section is only present if the extension is a User or Location extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The extension that the DID routes to during Lunch Hours. This section is only present if the extension is a User or Location extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
The extension that the DID routes to during Special Hours. This section is only present if the extension is a User or Location extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Defines the Emergency Override configuration for the DID, and indicates whether it is active. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Identifies the Business HoursProfile associated with the DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 2466
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/dids/3"
},
"v1:didBusinessHoursMgmt" : {
"href" : "/api/v1/tenants/21375/dids/3/businesshourmgmt"
}
},
"assigned" : false, "businessHoursFromTenantDefault" : false, "closedHoursExtension" : "4332",
"didId" : 3,
"incomingName" : "Main Number", "lunchHoursExtension" : "4332",
"openHoursExtension" : "4332",
"phoneNumber" : "6132802000",
"specialHoursExtension" : "4332", "timezone" : "America/New_York", "_embedded" : {
"businessHoursProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
},
"emergencyOverride" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dids/3/emergencyoverride"
}
},
"active" : true,
"name" : "Emergency Number", "number" : "16132802000"
},
"lunchHoursExtension" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
},
"specialHoursExtension" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
},
"closedHoursExtension" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
},
"openHoursExtension" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
}
}
}
Use a PUT request to modify the properties of a DID.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
phoneNumber | String | The phone number of the DID. Only Telco User can make change. | Telco(Tenant Advance Management) | Must be a valid phone number and must be unique across the system. |
timezone | String | The timezone of the DID. Only Telco User can make change. | Telco(TenantBasic Management) | Must be a valid timezone name, or 'DEFAULT' means using tenant default timezone. |
incomingName | String | The name of the DID. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Max 50 Chars. |
openHours Extension | String | The extension will be routed to when DID get called during open hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, must be a valid extension of User, Location, CallGroup, AutoAttendant or ACD, and cannot be a disabled extension. |
lunchHours Extension | String | The extension will be routed to when DID get called during lunch hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, must be a valid extension of User, Location, CallGroup, AutoAttendant or ACD, and cannot be a disabled extension. |
closedHours Extension | String | The extension will be routed to when DID get called during closed hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, must be a valid extension of User, Location, CallGroup, AutoAttendant or ACD, and cannot be a disabled extension. |
Path | Type | Description | Permission | Constraints |
specialHours Extension | String | The extension will be routed to when DID get called during special hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if provided, must be a valid extension of User, Location, CallGroup, AutoAttendant or ACD, and cannot be a disabled extension. |
PUT /api/v1/tenants/21375/dids/3 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:34413
Content-Length: 285
{
"phoneNumber" : "6132802000", "incomingName" : "Main Number", "timezone" : "America/New_York", "businessHoursFromTenantDefault" : false, "openHoursExtension" : "4332",
"lunchHoursExtension" : "4332",
"closedHoursExtension" : "4332",
"specialHoursExtension" : "4332"
}
Table of Contents
Sample POST Response Description
This relation returns a list of Direct Inward Dial (DID) numbers assigned to the enterprise.
An assigned DID is one that has incoming call routing configured.
The list may be filtered to return only Assigned or Unassigned DIDs using the ? assigned=<true/false> query parameter in the GET request.
assigned means the DID is currently used in following ways:
Used as StaticSite or DynamicSite’s CLID
Used as User or Location’s CLID
Routed to an Extension
GET
View DID list HEAD
Get just the header response POST
Add new DID
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET |
The DID list resource provides a list of DID resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
assigned | Use this parameter to request a list of either assigned or unassigned DIDs: 'true' for assigned, or 'false' for unassigned. This parameter have higher priority than filter parameter. | Optional. 'true' or 'false'. |
routedTo | Use this parameter to request a list of DIDs which all openHoursExtension, lunchHoursExtension, closeHours Extension and otherHoursExtension routed to the specified extension; if provided the assigned parameter will be ignored. This parameter have higher priority than filter parameter. | Optional. The value should be a routable extension. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the dids list represents a single did, providing the phone number and indicating whether the DID has configured routing. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | y |
This sample request demonstrates the usage of the optional ?assigned query parameter to filter the response to include only those DIDs which are assigned.
GET /api/v1/tenants/21375/dids?assigned=true HTTP/1.1 Host: localhost:34413
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 626
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/dids?assigned=true"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/dids/{didId}", "templated" : true
} ]
},
"count" : {
"did" : 1
},
"total" : {
"did" : 1
},
"_embedded" : {
"did" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dids/3"
}
},
"assigned" : true, "didId" : 3,
"phoneNumber" : "6132802000"
} ]
}
}
Use a POST request to add a new DID.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
phoneNumber | String | The phone | Telco(Tenant | Required. Must | None |
number of the | BasicAnd | be valid phone | |||
DID. | Advance | number and must | |||
Management) | be unique across | ||||
the system. | |||||
timezone | String | The timezone of | Telco(Tenant | Required. Must | None |
the DID. | BasicAnd | be valid timezone | |||
Advance | name or 'DEF | ||||
Management) | AULT'(will use | ||||
tenant default | |||||
timezone). |
Path | Type | Description | Permission | Constraints | Default Value |
incomingName | String | The name of the DID. | Telco(Tenant BasicAnd Advance Management) | Required. Max 50 chars | None |
A successful POST returns a 201 (Created). A link to the newly added DID can be found in the Location field in the response header.
POST /api/v1/tenants/21375/dids HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:34413
Content-Length: 147
{
"phoneNumber" : "6132802000", "incomingName" : "Main Number", "timezone" : "America/New_York", "businessHoursFromTenantDefault" : false
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/dids/41
Table of Contents
This resource allows the relationship between the DID and its Business Hour Profile to be managed.
GET
View a the relationship between the DID and its Business Hour Profile. HEAD
Get just the header response PUT
Update the Business Hour Profile associated with the DID. That is the profile can be changed to another existing profile.
DELETE
Removes the Business Hour Profile associated with the DID. Following the delete, the tenant’s default Business Hour Profile will be used for the DID.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User |
GET, PUT, DELETE |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
businessHoursProfile Id | Number | Identifier of the business hours profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
didId | Number | Identifier for the DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:businessHoursProfiles | Link to list of available business HoursProfile for the Tenant which can be assigned to the DID. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Information about the DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
Information about the business hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 873
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/didbusinesshours/3"
},
"v1:businessHoursProfiles" : {
"href" : "/api/v1/tenants/21375/businesshours{?expand,filter}", "templated" : true
}
},
"businessHoursProfileId" : 2,
"didId" : 3,
"_embedded" : { "businessHoursProfile" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
},
"did" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dids/3"
}
},
"assigned" : false, "didId" : 3,
"phoneNumber" : "6132802000"
}
}
}
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileId | Number | The identifier for the new business hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be the identifier of an existing business hour profile. | The value of current setting before update. When tenant DID creation, the value is None |
A successful PUT returns a 200 (OK) and the updated Did Business Hour Profile relationship.
PUT /api/v1/tenants/21375/didbusinesshours/3 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40873 Content-Length: 34
{
"businessHoursProfileId" : 2
}
DidBusinessHoursMgmt Resource
Table of Contents
This resource shows the Business Hour Profile associated with the DID.
GET
View a single Business Hour Profile for Tenant HEAD
Get just the header response POST
Add an existing Business Hour Profile to the DID. The DID must currently be using the default profile.
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:businessHoursProfiles | Link to list of available business HoursProfile for the Tenant which can be assigned to the DID. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
The business hours for the DID. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 778
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}",
"name" : "v1", "templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/dids/3/businesshourmgmt"
},
"v1:businessHoursProfiles" : [ {
"href" : "/api/v1/tenants/21375/businesshours{?expand,filter}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/didbusinesshours/3"
} ]
},
"count" : { "didBusinessHours" : 1
},
"total" : { "didBusinessHours" : 1
},
"_embedded" : { "didBusinessHours" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/didbusinesshours/3"
}
},
"businessHoursProfileId" : 2,
"didId" : 3
} ]
}
}
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileId | Number | The business hours profile identifier. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Profile must exist and the DID must not have an assigned business hours. | None |
A successful POST returns a 201 (created) and the added Business Hour Profile
POST /api/v1/tenants/21375/dids/3/businesshourmgmt HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:34413 Content-Length: 34
{
"businessHoursProfileId" : 2
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/didbusinesshours/3
Table of Contents
Sample PUT Response Description
The DND resource indicates whether the User/Location has activated the Do Not Disturb feature.
GET
View DND feature state HEAD
Get just the header response PUT
Modify DND feature state
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT
TenantAdmin
GET, PUT
User
GET, PUT (self only)
Location
GET, PUT (self only)
Path
Type
Description
Visibility
active
Boolean
Indicates whether the Do Not Disturb feature is active for this user/location.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 117
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/dnd"
}
},
"active" : false
}
Use a PUT request to modify the properties of a call group.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
active
Boolean
Indicates whether the Do Not Disturb feature is currently active for this user/ location.
Telco(Tenant BasicOrAdvance Management), TenantAdmin, User
True or False.
PUT /api/v1/tenants/21375/users/4332/dnd HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463
Content-Length: 21
{
"active" : true
}
Table of Contents
Each DynamicSite resource describes an existing User Dynamic Site. Dynamic Site resources are transiently created by individual users as required, and deleted after a period of inactivity.
This resource should not be confused with the User’s Dynamic Site Settings resource, which specifies the preferences that the system should use when creating a new Dynamic Site for the User.
GET
View Dynamic Site Details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
User | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
ipAddress | String | IP Address of the Dynamic Site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin, User |
callingLineIdNumber | String | The CLID used for outgoing calls initiated from this Dynamic Site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
siteId | Number | The unique identifier for this Dynamic Site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin, User |
siteName | String | The name of the Dynamic Site, auto-generated by the system to reflect the identity of the user who owns the site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin, User |
maxCallCount | Number | The maximum number of simultaneous calls that the user can establish from this Dynamic Site. | Telco, TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Representation of the user that created the Dynamic Site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | y | |
Describes the Business Hours used for this site. Each site is associated with Business Hours. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | y | |
zone | Describes the zone associated with this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1047
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dynamicsites/44"
}
},
"callingLineIdNumber" : "6132802000",
"ipAddress" : "10.150.155.1",
"maxCallCount" : 0,
"siteId" : 44,
"siteName" : "DS4332: Dynamic Site for user 4332", "_embedded" : {
"businessHoursProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
},
"zone" : {
"_links" : {
"self" : {
"href" : "/api/v1/zones/3"
}
},
"timezone" : "Canada/Eastern", "zoneId" : 3,
"zoneName" : "Standard Zone"
},
"user" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332"
}
},
"accountId" : "4332@21375", "deleting" : false,
"extension" : "4332",
"firstName" : "Dave",
"lastName" : "Smith", "subscriberId" : 156
}
}
}
Table of Contents
Modify List Request Description
This relation returns a list of existing Dynamic Sites in the tenant. The elements of the list will be added and removed as Dynamic Sites are created by users and subsequently expire.
GET
View Dynamic Site List HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
The DynamicSite list resource provides a list of Dynamic Site resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the dynamicSite array represents a single user dynamic site resource, and provides the site’s name. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 660
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/dynamicsites"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/dynamicsites/{siteId}", "templated" : true
} ]
},
"count" : { "dynamicSite" : 1
},
"total" : { "dynamicSite" : 1
},
"_embedded" : {
"dynamicSite" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dynamicsites/44"
}
},
"siteId" : 44,
"siteName" : "DS4332: Dynamic Site for user 4332"
} ]
}
}
This list does not support element creation.
Table of Contents
The DynamicSiteSettings resource provides the ability to manage the User’s Dynamic Site Settings.
The purpose of this resource is to represent the default settings that the system will use when creating a new Dynamic Site for this user. This resource does not indicate whether the User currently has a Dynamic Site, nor does it reflect the configuration that an existing Dynamic Site might have.
If Dynamic Site permission has not been enabled for this user, querying this resource will return a 404 Error Response with an application error code of FeatureNotEnabled. PUT request can be used to enable and configure the Dynamic Site Settings.
DELETE is supported for disabling and remove dynamic site settings.
GET
View Dynamic Site Settings HEAD
Get just the header response PUT
Enable and configure Dynamic Site Settings DELETE
Disable and remove Dynamic Site Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
clid | String | The CLID (Calling Line Id) used for calls made from the user’s Dynamic Site phone. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
maxCallCount | Number | The maximum number of concurrent calls this user is permitted to have on their Dynamic Site. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
defaultZoneId | Number | The ID of the default Zone will be used when creating the dynamic site. | Telco(TenantBasicOr AdvanceManagement) |
Relation | Description | Visibility |
v1:dids | Link to get a list of available DIDs of the tenant. | Telco(TenantBasicOrAdvance Management) |
Relation | Description | Visibility |
v1:zones | Link to get a list of available Zones of the system. | Telco(TenantBasicOrAdvance Management) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
If the user currently has an active Dynamic Site, the relation is included in the Dynamic Site settings query payload. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
defaultZone | The default zone used for calls from the user’s Dynamic Site. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 968
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/dynamicsitesettings"
},
"v1:dids" : {
"href" : "/api/v1/tenants/21375/dids{?expand,filter,assigned}", "templated" : true
},
"v1:zones" : {
"href" : "/api/v1/zones{?expand,filter}", "templated" : true
}
},
"clid" : "6132802000",
"defaultZoneId" : 3,
"maxCallCount" : 4, "_embedded" : {
"dynamicSite" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dynamicsites/44"
}
},
"siteId" : 44,
"siteName" : "DS4332: Dynamic Site for user 4332"
},
"defaultZone" : { "_links" : {
"self" : {
"href" : "/api/v1/zones/3"
}
},
"timezone" : "Canada/Eastern", "zoneId" : 3,
"zoneName" : "Standard Zone"
}
}
}
Use a PUT request to enable and modify user dynamic site settings.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
clid | String | The CLID (Calling | Telco(Tenant | Required when |
Line Id) used for calls | BasicOrAdvance | initialize(enable) | ||
made from the user’s | Management) | the dynamic site | ||
Dynamic Site phone. | settings, Optional | |||
when modifying | ||||
exist settings. When | ||||
provided, must be a | ||||
valid DID number. | ||||
maxCallCount | Number | The maximum | Telco(Tenant | Required when |
number of concurrent | BasicOrAdvance | initialize(enable) | ||
calls this user is | Management) | the dynamic site | ||
permitted to have on | settings, Optional | |||
their Dynamic Site. | when modifying | |||
exist settings. When | ||||
provided, must be a | ||||
number greater than | ||||
0. | ||||
defaultZoneId | Number | The ID of the default | Telco(Tenant | Required when |
Zone will be used | BasicOrAdvance | initialize(enable) | ||
when creating the | Management) | the dynamic site | ||
dynamic site. | settings, Optional | |||
when modifying | ||||
exist settings. When | ||||
provided, must be | ||||
a valid zoneId of a | ||||
Zone in system. |
PUT /api/v1/tenants/21375/users/4332/dynamicsitesettings HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:45463
Content-Length: 72
{
"clid" : "6132802000",
"maxCallCount" : 0,
"defaultZoneId" : 3
}
Same as "GET response"
Table of Contents
Sample PUT Response Description
The E164 Calls Display resource contains the User’s E.164 Calls Display Setting.
GET
View user Default E164CallsDisplay setting HEAD
Get just the header response PUT
Modify user E164CallsDisplay setting
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT
TenantAdmin
GET, PUT
User
GET, PUT
Path
Type
Description
Visibility
active
Boolean
Indicates if E.164 Calls Display is enabled for the subscriber.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 130
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/e164callsdisplay"
}
},
"active" : false
}
Use a PUT request with the following properties in the payload to modify the user’s E164CallsDisplay setting.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
active
Boolean
Default E.164 Calls Display setting, possible values are: true or false.
Telco(Tenant BasicOrAdvance Management), TenantAdmin, User
Mandatory
PUT /api/v1/tenants/21375/users/4332/e164callsdisplay HTTP/1.1 Content-Type: application/json; charset=UTF-8
Content-Length: 21
{
"active" : true
}
Table of Contents
The EmergencyOverride Resource describes the telephone number that calls to the DID are sent to when the override is activated.
GET
View Emergency Override configuration for the DID HEAD
Get just the header response PUT
Modify Emergency Override configuration for the DID
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Path | Type | Description | Visibility |
active | Boolean | Indicates whether the Emergency Override routing for this DID is active. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
number | String | The target number for the Emergency Override routing. May be an internal or external number. Must contain only digits, *, # or | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
name | String | A user-provided name for the override target number. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 185
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dids/3/emergencyoverride"
}
},
"active" : true,
"name" : "Emergency Number", "number" : "16132802000"
}
Use a PUT request to modify the properties of Emergency Override configuration for the DID.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
active | Boolean | If true will enable the emergency override of the DID. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, true or false. | n/a, if not provided will not change current setting value. |
number | String | The number or extension will be routed to when DID get called when emergency override enabled. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional when active=false, mandatory when active=true; when provided, must be a valid extension of User, Location, CallGroup, Auto Attendant, ACD or a valid dialable number. | n/a, if not provided will not change current setting value. |
name | String | If number is set to a dialable number not a extension, a name could be provided for the number. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, Max 50 Char. | n/a, if not provided will not change current setting value. |
PUT /api/v1/tenants/21375/dids/3/emergencyoverride HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:34413 Content-Length: 80
{
"active" : true,
"number" : "16132802000",
"name" : "Emergency Number"
}
Table of Contents
Modify Request Description
The file containing the AutoAttendant prompt to be played in the evening.
GET
Download the AutoAttendant’s evening greeting audio file HEAD
Get just the header response PUT
Upload an audio to be used for the evening greeting DELETE
Remove the current evening greeting audio file
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT, DELETE
TenantAdmin User
GET
Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.
Use a PUT request to upload an audio file for the evening greeting. Only audio/wav format is supported, only 8 or 16 bit u-law codecs are supported. If success, will get a 200 OK response with no content.
Use a DELETE request to remove the existing audio file for the evening greeting.
EveningGreetingRecording Resource
Table of Contents
Sample POST Response Description
The EveningGreetingRecording resource provides support for recording evening greeting prompt of an AutoAttendant via phone.
HEAD
Get just the header response POST
Recording evening greeting prompt of an AutoAttendant via phone.
Permitted Authorities (as defined in API Guide)
TenantAdmin User
POST
Use a POST request to record evening greeting prompt of an AutoAttendant via phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path
Type
Description
Permission
Constraints
Default
Value
phone
String
Indicates
TenantAdmin
Optional
Extension of
Extension
extension of
current Tenant
phone to use for
Admin User who
the recording.
is authenticated
of this request.
A successful POST returns a 200 (OK). The phone of specified phoneExtension will ring, and user can record prompt for evening greeting prompt of an AutoAttendant by answering the call and following the instructions.
POST /api/v1/tenants/21375/autoattendants/186/greetingsettings/eveningrecording HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:42629 Content-Length: 31
{
"phoneExtension" : "4332"
}
HTTP/1.1 200 OK
Table of Contents
The extension resource indicates the extension type, the naming property of the underlying resource (User, Location, etc), and the accountId for the extension which can be used in subsequent requests to manage calls or subscriptions using the API.
GET
View Extension Details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
User | GET |
Location | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
accountId | String | The Extension’s Account Identifier, required for subscribing to events and managing calls through the API. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
enabled | Boolean | Indicates whether the extension is currently Enabled (Active). Calls to Disabled (Inactive) extensions will fail. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
extension | String | The extension. Extensions are necessarily unique within a tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
extensionType | String | This property indicates the underlying type of the extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
name | String | The (Display) Name associated with the extension. For a user, this is in the format "last, first"; for all others it is their name value | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:user | If the extension’s underlying type is a user, this link is provided to point to the User resource. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Relation | Description | Visibility |
v1:location | If the extension’s underlying type is a location, this link is provided to point to the Location resource. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:acd | If the extension’s underlying type is a ACD, this link is provided to point to the ACD resource. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:callGroup | If the extension’s underlying type is a call group, this link is provided to point to the CallGroup resource. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:autoAttendant | If the extension’s underlying type is a auto attendant, this link is provided to point to the AutoAttendant resource. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1options:extensionType | List of valid values for the extension type. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Present only if the underlying resource is a User. Provides basic information about the user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Present only if the underlying resource is a Location. Provides basic information about the location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Present only if the underlying resource is a ACD. Provides basic information about the ACD. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
Present only if the underlying resource is a CallGroup. Provides basic information about the call group. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Present only if the underlying resource is a AutoAttendant. Provides basic information about the auto attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 933
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
},
"v1:user" : {
"href" : "/api/v1/tenants/21375/users/4332"
},
"v1options:extensionType" : {
"href" : "/api/v1/enums/extensiontype"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave", "_embedded" : {
"user" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332"
}
},
"accountId" : "4332@21375", "deleting" : false, "extension" : "4332",
"firstName" : "Dave",
"lastName" : "Smith", "subscriberId" : 156
}
}
}
Table of Contents
Modify List Request Description
This relation returns a list of consumed extensions in the tenant, grouped by extension type. This resource is designed to include only publicly-visible properties of an extension, making it suitable as a resource which is capable of providing pick-lists of extension targets or a corporate directory service.
The response representation is divided into arrays of extensions by type.
Each element in each list includes a property that indicates whether the extension is enabled or disabled. Calls to disabled extensions will be routed to treatment (rather than to the extension) so the caller will hear a fast-busy signal. Accordingly, clients should prevent their end user from choosing disabled extensions as a call target.
At this time, it reports only User and Location and Call Group extensions but as support is added generally to the API for other extension types, the Extensions List will be augmented to include those types as well.
GET
View Extension List HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User |
GET | |
User | GET |
Location | GET |
The Extensions list resource provides a list of Extension resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
agent | When true, the response returns a list of extensions containing only Users and Locations that are also Call Group Agents. When false, only Users and Locations that are not Call Group Agents are returned. When not provided, Call Group extensions are included if extensionType is not provided or is equal to groupExt. | Optional. True or false. |
extensionType | Can be used to filter the query response to include only extensions of the specified types: userExt, locationExt, acdExt, groupExt or autoAttendantExt. Use comma(',') as delimiter when more than one types specified. When not provided, the response includes all types of extensions. | Optional. See the list of supported extension types at the v1options:extensionType link. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1options:extensionType | Provides a list of supported extension types. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
agent | When true, the response returns a list of extensions containing only Users and Locations that are also Call Group Agents. When false, only Users and Locations that are not Call Group Agents are returned. When not provided, Call Group extensions are included if extensionType is not provided or is equal to groupExt. | Optional. True or false. |
extensionType | Can be used to filter the query response to include only extensions of the specified types: userExt, locationExt, acdExt, groupExt or autoAttendantExt. Use comma(',') as delimiter when more than one types specified. When not provided, the response includes all types of extensions. | Optional. See the list of supported extension types at the v1options:extensionType link. |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
locationExt | Each element of the locationExt array represents a Location Extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
userExt | Each element of the userExt array represents a User Extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
acdExt | Each element of the acdExt array represents a ACD Extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
groupExt | Each element of the groupExt array represents a Call Group Extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
autoAttendantExt | Each element of the autoAttendantExt array represents a Auto Attendant Extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 2320
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/extensions"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/extensions/{extension}", "templated" : true
} ],
"v1options:extensionType" : [ {
"href" : "/api/v1/enums/extensiontype"
} ]
},
"count" : { "locationExt" : 1,
"acdExt" : 1,
"autoAttendantExt" : 1,
"userExt" : 1,
"groupExt" : 1
},
"total" : { "locationExt" : 1,
"acdExt" : 1,
"autoAttendantExt" : 1,
"userExt" : 1,
"groupExt" : 1
},
"_embedded" : {
"locationExt" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375", "enabled" : true, "extension" : "3235",
"extensionType" : "locationExt", "name" : "Kitchen"
} ],
"userExt" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
} ],
"groupExt" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/6001"
}
},
"accountId" : "6001@21375", "enabled" : true, "extension" : "6001",
"extensionType" : "groupExt",
"name" : "Moose Call Horn Sales Team"
} ],
"acdExt" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/5001"
}
},
"accountId" : "5001@21375", "enabled" : true, "extension" : "5001", "extensionType" : "acdExt",
"name" : "Sales ACD"
} ],
"autoAttendantExt" : [ { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/7001"
}
},
"accountId" : "7001@21375", "enabled" : true, "extension" : "7001",
"extensionType" : "autoAttendantExt", "name" : "Support Auto Attendant"
} ]
}
}
This resource does not support element creation.
Table of Contents
The ExternalContact resource provides information about a specific External Contact(Company Speed Dial).
GET
View ExternalContact Details HEAD
Get just the header response PUT
Modify ExternalContact Details DELETE
Remove the ExternalContact
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET |
Location | GET |
Path | Type | Description | Visibility |
name | String | The name of the External Contact. Read Only for non TenantAdmin user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
phoneNumber | String | The phone number of the ExternalContact. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
String | The email of the External Contact. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | |
externalContactId | Number | Identifier for the External Contact. Read Only, system assigned. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 229
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/externalcontacts/24"
}
},
"email" : "[email protected]", "externalContactId" : 24,
"name" : "Office Supply", "phoneNumber" : "18002226666"
}
Use a PUT request to modify the properties of an ExternalContact.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the ExternalContact. Only Telco User and TenantAdmin User can make change. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Max 50 chars. |
phoneNumber | String | The phone number of the ExternalContact. Only Telco User and TenantAdmin User can make change. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a valid dialable number. |
String | The eamil of the ExternalContact. Only Telco User and TenantAdmin User can make change. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a valid email address. |
PUT /api/v1/tenants/21375/externalcontacts/24 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:44647 Content-Length: 101
{
"name" : "Office Supply", "phoneNumber" : "18002226666", "email" : "[email protected]"
}
ExternalContact List Resource
Table of Contents
This relation returns a list of configured ExternalContacts for the tenant.
GET
View list of ExternalContacts HEAD
Get just the header response POST
Add new ExternalContact
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
Non-admin User | GET |
Location |
GET |
The ExternalContact list resource provides a list of ExternalContact resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
externalContact | Each element of the ExternalContact list represents a single ExternalContact, and indicates the External Contact externalContactId and name. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 681
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/externalcontacts"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/externalcontacts/{externalContactId}", "templated" : true
} ]
},
"count" : { "externalContact" : 1
},
"total" : { "externalContact" : 1
},
"_embedded" : { "externalContact" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/externalcontacts/24"
}
},
"externalContactId" : 24, "name" : "Office Supply"
} ]
}
}
Use a POST request to add a new ExternalContact.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the ExternalContact. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Max 40 chars. | None |
phoneNumber | String | The phone number of the ExternalContact. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Must be a dialable phone number. Length must be between 7 and 20 digits. | None |
String | The email of the ExternalContact. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If specified, it must be a valid email address. | None |
A successful POST returns a 201 (Created). A link to the newly added ExternalContact can be found in the Location field in the response header.
POST /api/v1/tenants/21375/externalcontacts HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:44647 Content-Length: 101
{
"name" : "Office Supply", "phoneNumber" : "18002226666", "email" : "[email protected]"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/externalcontacts/24
Table of Contents
The Features resource contains a summary of the state of the User/Location’s service and calling features.
Features which must be explicitly enabled on a per-user basis (such as Outgoing Call Privacy or Twinning) are present in the _embedded section of the response only when they have been enabled for the user/location. Link relations to these permissionable features are also provided; if the feature has not been enabled then the response to a query on that resource will return an HTTP response of 404 with an application error code of "FeatureNotEnabled".
GET
View Features HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin | GET |
User | GET (self only) |
Location |
GET (self only) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Relation | Description | Visibility |
v1:outgoingCallPrivacy | Provides the ability to view the status of the user/location’s Outgoing Call Privacy feature. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:twinning | Provides the ability to view the status of the user/location’s Twinning feature. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:manageOutgoingCall Privacy | This relation is being replaced by the "v1:outgoingCallPrivacy" relation, and will be removed in a future release. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:manageTwinning | This relation is being replaced by the "v1:twinning" relation, and will be removed in a future release. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:scrRules | Selective call routing rules management. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Name | Description | Visibility | Expandable |
This resource describes how unanswered calls to the user/location are to be handled. It replaces the call Coverage resource. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
Name | Description | Visibility | Expandable |
This resource is being replaced by the callForward NoAnswer resource, and will be removed in a future release. New development should prefer that resource over this one. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
Describes the user/ location’s Call Coverage service. | |||
Indicates whether this feature is currently active for this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n | |
Indicates whether the Outgoing Call Privacy feature is currently active for this user/location. This representation is only present in the query response when Outgoing Call Privacy is enabled for the user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n | |
Indicates whether the Do Not Disturb feature is currently active for this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n | |
Indicates whether the Call Waiting Tone feature is currently active for this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n | |
Describes the user/ location’s current Call Forwarding feature state: whether it is active and if so indicates the Forwarding target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
Describes the user’s current Twinning feature state: whether it is active, and if so indicates the Twinning target. This representation is only | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
Name | Description | Visibility | Expandable |
present in the query response when Twinning is enabled for the user. | |||
Describes the user’s current login ACD state: whether it is active, and if so indicates the user signed in ACD. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n | |
Indicates whether the Click ToCallConfirmBeforeDial feature is currently active for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n | |
Indicates if E.164 Calls Display is enabled. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 3101
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/features"
},
"v1:manageOutgoingCallPrivacy" : {
"href" : "/api/v1/tenants/21375/users/4332/callprivacy"
},
"v1:manageTwinning" : {
"href" : "/api/v1/tenants/21375/users/4332/twinning"
},
"v1:outgoingCallPrivacy" : {
"href" : "/api/v1/tenants/21375/users/4332/callprivacy"
},
"v1:scrRules" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules{?expand,filter}", "templated" : true
},
"v1:twinning" : {
"href" : "/api/v1/tenants/21375/users/4332/twinning"
}
},
"_embedded" : {
"twinning" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/twinning"
}
},
"active" : true, "groupTwinningActive" : false, "maxSimultaneousCalls" : 2,
"targetNumber" : "6135554343"
},
"e164CallsDisplay" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/e164callsdisplay"
}
},
"active" : false
},
"handsfreeAnswerback" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/handsfree"
}
},
"active" : false
},
"callForwarding" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/callforward"
}
},
"active" : true, "callForwardTargetType" : "coworker", "targetNumber" : "3235"
},
"loginACD" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/loginacd"
}
},
"active" : false
},
"callForwardNoAnswer" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callfwdnoanswers/4332"
}
},
"callTarget" : "4332", "callTargetType" : "SubscriberVM", "numberOfRings" : 5
},
"callPrivacy" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/callprivacy"
}
},
"active" : true
},
"callWaitingTone" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/cwt"
}
},
"active" : false
},
"dnd" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/dnd"
}
},
"active" : false
},
"callCoverage" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/coverage"
}
},
"numberOfRings" : 5,
"targetNumber" : "3235"
},
"clickToCallConfirmBeforeDial" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/clicktocallconfirmbeforedial"
}
},
"active" : false
}
}
}
Table of Contents
Description Description
The FeatureSettings Embedded is either an UserFeatureSettings resource or a LocationFeatureSettings resource based on its subscriber type.
LocationFeatureSettings Resource
Table of Contents
The LocationFeatureSettings resource contains the Location call feature settings that are typically enabled/disabled by an administrator.
GET
View location Feature Settings HEAD
Get just the header response PUT
Modify location Feature Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
Path | Type | Description | Visibility |
allowOutgoingCall Privacy | Boolean | Indicates whether the subscriber is allowed to configure Outgoing Call Privacy. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
autoEmergencyCall | Boolean | Indicates whether the subscriber is selected for Automatic Off-Hook Emergency Call. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
selectiveCallRouting | Boolean | Indicates whether the subscriber is allowed to configure Selective Call Routing. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
enableVoiceMail | Boolean | Indicates whether the voice mail is enabled for the subscriber. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
autoRingdownNumber | String | Indicates whether the location is configured with Automatic Ringdown number. This is only available to a Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 280
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235/featuresettings"
}
},
"allowOutgoingCallPrivacy" : true, "autoEmergencyCall" : true, "autoRingdownNumber" : "9876543210", "enableVoiceMail" : true, "selectiveCallRouting" : true
}
Use a PUT request to modify the properties of LocationFeatureSettings.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
allowOutgoing CallPrivacy | Boolean | Indicates whether the subscriber is allowed to configure Outgoing Call Privacy. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
autoEmergency Call | Boolean | Indicates whether the subscriber is enabled to Automatic Off-Hook Emergency Call. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
selectiveCall Routing | Boolean | Indicates whether the subscriber is allowed to configure Selective Call Routing. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
enableVoice Mail | Boolean | Indicates whether voice mail is enabled for the subscriber. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
autoRingdown Number | String | This is used for configuring Automatic Ringdown number for Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Automatic Ringdown is inactive when number is an empty string. | If not provided, will keep current setting unchanged. |
PUT /api/v1/tenants/21375/locations/3235/featuresettings HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:35441 Content-Length: 169
{
"allowOutgoingCallPrivacy" : true, "enableVoiceMail" : true, "selectiveCallRouting" : true, "autoEmergencyCall" : true, "autoRingdownNumber" : "5556667777"
}
Table of Contents
The UserFeatureSettings resource contains the User call feature settings that are typically enabled/disabled by an administrator.
GET
View user Feature Settings HEAD
Get just the header response PUT
Modify user Feature Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
Path | Type | Description | Visibility |
enableCallRecording | Boolean | Indicates whether the subscriber’s call recording is enabled. If true, outbound call will be routed through a CR platform. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
allowOutgoingCall Privacy | Boolean | Indicates whether the subscriber is allowed to configure Outgoing Call Privacy. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
autoEmergencyCall | Boolean | Indicates whether the subscriber is selected for Automatic Off-Hook Emergency Call. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
selectiveCallRouting | Boolean | Indicates whether the subscriber is allowed to configure Selective Call Routing. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
enableVoiceMail | Boolean | Indicates whether the voice mail is enabled for the subscriber. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
twinning | Boolean | Indicates whether the user is allowed to configure Twinning. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 291
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/featuresettings"
}
},
"allowOutgoingCallPrivacy" : true, "autoEmergencyCall" : true, "enableCallRecording" : false, "enableVoiceMail" : true, "selectiveCallRouting" : true, "twinning" : true
}
Use a PUT request to modify the properties of UserFeatureSettings.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
enableCall Recording | Boolean | Indicates whether the subscriber’s outbound call is routed through a call recording platform. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
allowOutgoing CallPrivacy | Boolean | Indicates whether the subscriber is allowed to configure Outgoing Call Privacy. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
autoEmergency Call | Boolean | Indicates whether the subscriber is enabled to Automatic Off-Hook Emergency Call. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
selectiveCall Routing | Boolean | Indicates whether the subscriber is allowed to configure Selective Call Routing. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
Path | Type | Description | Permission | Constraints | Default Value |
enableVoice Mail | Boolean | Indicates whether voice mail is enabled for the subscriber. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
twinning | Boolean | Indicates whether the user is allowed to configure Twinning. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, True or False. | If not provided, will keep current setting unchanged. |
PUT /api/v1/tenants/21375/users/4332/featuresettings HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 183
{
"allowOutgoingCallPrivacy" : true, "enableVoiceMail" : true, "selectiveCallRouting" : true, "autoEmergencyCall" : true, "twinning" : true, "enableCallRecording" : true
}
Table of Contents
The Final Target resource provides information about the Final Target of a SCR Rule.
GET
View Final Target Details HEAD
Get just the header response PUT
Modify Final Target of a SCR Rule
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Non-admin User | GET, PUT (only their own data) |
Location | GET, PUT (only their own data) |
Path | Type | Description | Visibility |
destType | String | The Call Destination Type of Final Target. The type of CallGroupExtension is not supported for now. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
targetValue | String | The value of Final Target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:extensions | List of extensions for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1options:callDestination Type | List of Call Destination Types available for Final Target. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 630
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1002/finaltarget"
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
},
"v1options:callDestinationType" : {
"href" : "/api/v1/enums/calldestinationtype"
}
},
"destType" : "CallCoverage", "targetValue" : ""
}
Use a PUT request to modify the properties of Final Target.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
destType | String | The Call Destination Type of Final Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. The type of CallGroup Extension is not supported for now. | None |
targetValue | String | The value of Final Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | The meaning of this value is dependant on the Call Destination Type. It can be null when the type is set to CallCoverage or VoiceMail. | None. |
PUT /api/v1/tenants/21375/users/4332/scrrules/1002/finaltarget HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40639 Content-Length: 56
{
"destType" : "Number", "targetValue" : "7654321"
}
Table of Contents
The Handsfree Answerback resource indicates whether the User/Location has activated the Handsfree Answerback feature.
GET
View Handsfree Answerback feature state HEAD
Get just the header response PUT
Modify Handsfree Answerback feature state
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
User | GET, PUT (self only) |
Location | GET, PUT (self only) |
Path | Type | Description | Visibility |
active | Boolean | Indicates whether the Handsfree Answerback feature is Active for this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 123
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/handsfree"
}
},
"active" : false
}
Use a PUT request to modify the properties of HandsFree AnswerBack feature state.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
active | Boolean | Indicates whether the Handsfree Answerback feature is currently active for this user/location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. |
PUT /api/v1/tenants/21375/users/4332/handsfree HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 21
{
"active" : true
}
Table of Contents
This resource shows the information for a single Holiday Hour Profile.
GET
View a single Holiday Hour Profile for Tenant HEAD
Get just the header response PUT
Update a Holiday Hour Profile for the tenant DELETE
Delete a Holiday Hour Profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Path | Type | Description | Visibility |
holidayHoursProfile Id | Number | The identifier of the holiday hours profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
holidayHoursProfile Name | String | The name of the holiday hours profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
startDate | String | The start date of the holiday. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
endDate | String | The end date of the holiday. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
open | Boolean | This is a open flag of the holiday. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
openHoursFrom | String | This is the start time of operating hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
openHoursTo | String | This is the end time of operating hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
lunchFrom | String | This is the start time of lunch hour. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
lunchTo | String | This is the end time of lunch hour. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
specialFrom | String | This is the start time of special hour. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Path | Type | Description | Visibility |
specialTo | String | This is the end time of special hour. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:holidayDidRoutings | The Holiday DIDs Routings defined for this holiday hours profile. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 654
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/holidayhours/3"
},
"v1:holidayDidRoutings" : {
"href" : "/api/v1/tenants/21375/holidayhours/3/didroutings{?expand,filter}", "templated" : true
}
},
"endDate" : "12-31",
"holidayHoursProfileId" : 3, "holidayHoursProfileName" : "2019 Family Days", "lunchFrom" : "12:00",
"lunchTo" : "13:00", "open" : false, "openHoursFrom" : "00:00",
"openHoursTo" : "24:00",
"specialFrom" : "09:30",
"specialTo" : "10:00",
"startDate" : "12-25"
}
Use a PUT request to modify the properties of a HolidayHoursProfile.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
holidayHours ProfileName | String | The name of the holiday hours profile. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. If not provided will keep current value unchanged. If provided, it must be unique in a tenannt and its maximum length is 50. |
startDate | String | The start date of the holiday. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. A date string has the format of 'MM-dd'. |
endDate | String | The end date of the holiday. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. A date string has the format of 'MM-dd'. |
open | Boolean | This is a open flag of the holiday. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. The valid value is 'true' or 'false'. |
openHoursFrom | String | This is the start time of operating hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required if open flag is set to true. A hour and minute string has the format of 'HH:mm'. |
openHoursTo | String | This is the end time of operating hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required if open flag is set to true. A hour and minute string has the format of 'HH:mm'. |
lunchFrom | String | This is the start time of lunch hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. |
lunchTo | String | This is the end time of lunch hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. |
Path | Type | Description | Permission | Constraints |
specialFrom | String | This is the start time of special hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. |
specialTo | String | This is the end time of special hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. |
PUT /api/v1/tenants/21375/holidayhours/3 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:46351
Content-Length: 273
{
"holidayHoursProfileName" : "2019 Family Day", "startDate" : "12-25",
"endDate" : "12-31",
"openHoursFrom" : "08:00",
"openHoursTo" : "18:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "10:00",
"specialTo" : "10:15", "open" : false
}
HolidayHoursProfiles Resource
Table of Contents
This relation returns a list of configured HolidayHoursProfiles for the tenant.
GET
View Holiday Hours for Tenant HEAD
Get just the header response POST
Add a new set of holiday hours for the tenant
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The HolidayHoursProfile list resource provides a list of HolidayHoursProfile resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the list represents a single set of holiday hours for the tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 702
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/holidayhours"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/holidayhours/{holidayHoursId}", "templated" : true
} ]
},
"count" : { "holidayHoursProfile" : 1
},
"total" : { "holidayHoursProfile" : 1
},
"_embedded" : { "holidayHoursProfile" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/holidayhours/3"
}
},
"holidayHoursProfileId" : 3, "holidayHoursProfileName" : "2019 Family Days"
} ]
}
}
Use a POST request to add a new HolidayHoursProfile.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
holidayHours ProfileName | String | The name of the holiday hours profile. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Max 50 chars. It must be unique in the tenant. | None |
Path | Type | Description | Permission | Constraints | Default Value |
startDate | String | The start date of the holiday. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. A date string has the format of 'MM-dd'. | None |
endDate | String | The end date of the holiday. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. A date string has the format of 'MM-dd'. | None |
open | Boolean | This is a open flag of the holiday. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. The valid value is 'true' or 'false'. | None |
openHoursFrom | String | This is the start time of operating hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required if open flag is set to true. A hour and minute string has the format of 'HH:mm'. | None |
openHoursTo | String | This is the end time of operating hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required if open flag is set to true. A hour and minute string has the format of 'HH:mm'. | None |
lunchFrom | String | This is the start time of lunch hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. | None |
lunchTo | String | This is the end time of lunch hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. | None |
specialFrom | String | This is the start time of special hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. | None |
Path | Type | Description | Permission | Constraints | Default Value |
specialTo | String | This is the end time of special hour. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. A hour and minute string has the format of 'HH:mm'. | None |
A successful POST returns a 201 (Created). A link to the newly added holiday hours can be found in the Location field in the response header.
POST /api/v1/tenants/21375/holidayhours HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:46351
Content-Length: 273
{
"holidayHoursProfileName" : "2019 Family Day", "startDate" : "12-25",
"endDate" : "12-31",
"openHoursFrom" : "00:00",
"openHoursTo" : "24:00",
"lunchFrom" : "12:00",
"lunchTo" : "13:00",
"specialFrom" : "09:30",
"specialTo" : "10:00", "open" : false
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/holidayhours/3
Table of Contents
This resource shows the information for a single Holiday DID Routing.
GET
View a single Holiday DID Routing HEAD
Get just the header response PUT
Update a Holiday DID Routing DELETE
Delete a Holiday DID Routing entry
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Path | Type | Description | Visibility |
holidayDidRoutingId | Number | The identifier of the Holiday DID Routing. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
incomingNumber | String | The DID of the holiday DID routing. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
openHoursExtension | String | The destination extension for the Open hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
lunchHoursExtension | String | The destination extension for the Lunch hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
closedHoursExtension | String | The destination extension for the Closed hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
specialHours Extension | String | The destination extension for the Special hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:extensions | The extensions have been configured for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 563
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/holidayhours/3/didroutings/5"
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}",
"templated" : true
}
},
"closedHoursExtension" : "1234",
"holidayDidRoutingId" : 5,
"incomingNumber" : "6137654321",
"lunchHoursExtension" : "7000",
"openHoursExtension" : "1000",
"specialHoursExtension" : "5555"
}
Use a PUT request to modify the properties of a HolidayDidRouting.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
incomingNumber | String | The DID of the holiday DID routing. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Once created, it cannot be modified. |
openHours Extension | String | The destination extension for the Open hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. |
lunchHours Extension | String | The destination extension for the Lunch hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. |
closedHours Extension | String | The destination extension for the Closed hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. |
specialHours Extension | String | The destination extension for the Special hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. |
PUT /api/v1/tenants/21375/holidayhours/3/didroutings/5 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45697 Content-Length: 175
{
"incomingNumber" : "6137654321",
"openHoursExtension" : "1000",
"lunchHoursExtension" : "1234",
"closedHoursExtension" : "7000",
"specialHoursExtension" : "5555"
}
Table of Contents
This relation returns a list of configured HolidayDidRoutings for the Holiday Hours Profile.
GET
View Holiday DID routings for a Holiday Hours Profile HEAD
Get just the header response POST
Add a new holiday DID routing for the Holiday Hours Profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The HolidayDidRoutings list resource provides a list of HolidayDidRouting resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | The extensions have been configured for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the list represents a single set of holiday DID routing for the holiday hours profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 873
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/holidayhours/3/didroutings"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/holidayhours/3/didroutings/{holidayDidRoutingId}", "templated" : true
} ]
},
"count" : { "holidayDidRouting" : 1
},
"total" : { "holidayDidRouting" : 1
},
"_embedded" : { "holidayDidRouting" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/holidayhours/3/didroutings/5"
}
},
"holidayDidRoutingId" : 5,
"incomingNumber" : "6137654321"
} ]
}
}
Use a POST request to add a new HolidayHoursProfile.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
incoming Number | String | The DID of the holiday DID routing. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. The DID must exist in the tenant. Once created, it cannot be modified. | None |
openHours Extension | String | The destination extension for the Open hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. | None |
lunchHours Extension | String | The destination extension for the Lunch hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. | None |
closedHours Extension | String | The destination extension for the Closed hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. | None |
specialHours Extension | String | The destination extension for the Special hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If it’s provided, the extension must exist in the tenant. | None |
A successful POST returns a 201 (Created). A link to the newly added holiday DID routing can be found in the Location field in the response header.
POST /api/v1/tenants/21375/holidayhours/3/didroutings HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45697 Content-Length: 175
{
"incomingNumber" : "6137654321",
"openHoursExtension" : "1000",
"lunchHoursExtension" : "1234",
"closedHoursExtension" : "7000",
"specialHoursExtension" : "5555"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/holidayhours/3/didroutings/5
Table of Contents
The Intermediate Target resource provides information about an Intermediate Target.
GET
View Intermediate Target Details HEAD
Get just the header response PUT
Modify an Intermediate Target Details DELETE
Remove an Intermediate Target
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET, PUT, DELETE (only their own data) |
Location | GET, PUT, DELETE (only their own data) |
Path | Type | Description | Visibility |
targetId | Number | The identifier of Intermediate Target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
label | String | The label of Intermediate Target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
targetActive | Boolean | This flag indicates whether this Intermediate Target is in use. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
destType | String | The call destination type is specified for the Intermediate Target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
targetValue | String | The value for the Intermediate Target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1options:callDestination Type | List of available destination types. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 493
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets/1001"
},
"v1options:callDestinationType" : {
"href" : "/api/v1/enums/calldestinationtype"
}
},
"destType" : "Number",
"label" : "Intermediate Target Label", "targetActive" : false,
"targetId" : 1001,
"targetValue" : "7654321"
}
Use a PUT request to modify the properties of an Intermediate Target.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
label | String | The label of Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars. |
targetActive | Boolean | The status of the Intermediate Target. If true, the Intermediate Target is in use. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | None |
destType | String | The call destination type of Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Only the type of Number is supported for Intermediate Target. |
targetValue | String | The destination value of Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Digits only. A valid value for Intermediate Target. |
PUT /api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets/1001 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38947 Content-Length: 128
{
"label" : "Label of Intermediate Target", "destType" : "Number",
"targetValue" : "9876543210", "targetActive" : true
}
Intermediate Target List Resource
Table of Contents
This relation returns a list of Intermediate Targets configured for the specified SCR Rule.
GET
View Intermediate Target List HEAD
Get just the header response PUT
Replace the existing list with a new list content POST
Add a Intermediate Target in the list
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, POST |
Tenant-scoped Telco User | GET, PUT, POST |
TenantAdmin User | GET, PUT, POST |
Non-admin User | GET, PUT, POST (only their own data) |
Location | GET, PUT, POST (only their own data) |
The Intermediate Target list resource provides a list of Intermediate Target resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1options:callDestination Type | List of valid values for the call destination target type of the Intermediate Target. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the Intermediate Target list represents a single Intermediate Target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1073
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets/{targetId}", "templated" : true
} ],
"v1options:callDestinationType" : [ {
"href" : "/api/v1/enums/calldestinationtype"
} ]
},
"count" : { "intermediateTarget" : 1
},
"total" : { "intermediateTarget" : 1
},
"_embedded" : { "intermediateTarget" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets/1001"
}
},
"destType" : "Number",
"label" : "Intermediate Target Label", "targetActive" : false,
"targetId" : 1001,
"targetValue" : "7654321"
} ]
}
}
Use a POST request to add a new Intermediate Target.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
label | String | The label of the new Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars. | None |
targetActive | Boolean | The status of the new Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. If true, the target is in use. | false. |
destType | String | The destination type of the new Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Only the type of Number is supported currently. | None |
targetValue | String | The value of the new Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. | None |
A successful POST returns a 201 (Created). A link to the newly added Intermediate Target can be found in the Location field in the response header.
POST /api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38947 Content-Length: 128
{
"label" : "Label of Intermediate Target", "destType" : "Number",
"targetValue" : "9876543210", "targetActive" : true
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets/4
This Intermediate Target list resource supports the use of PUT to replace the list. This request also supports adding new Intermediate Target and/or removing the existing Intermediate Target at the same time.
PUT Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
intermediate Target[]. targetId | Number | The identifier of the Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. If it doesn’t present, a new Intermediate Target is created. | None. |
intermediate Target[]. label | String | The label of Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars | None |
Path | Type | Description | Permission | Constraints | Default Value |
intermediate Target[]. targetActive | Boolean | The status of the Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | true or false. | The current value. |
intermediate Target[].dest Type | String | The destination type of the Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Currently only the type of 'Number' is supported. | None. |
intermediate Target[]. targetValue | String | The value of the Intermediate Target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. A valid target value. | None |
PUT Response Properties
The response to a successful PUT request is the new resource representation, as defined in the GET Response.
Sample PUT Request
PUT /api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:38947 Content-Length: 172
{
"intermediateTarget" : [ { "targetId" : 1001, "label" : "New label", "destType" : "Number",
"targetValue" : "8887777", "targetActive" : true
} ]
}
Sample PUT Response
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1056
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets/{targetId}", "templated" : true
} ],
"v1options:callDestinationType" : [ {
"href" : "/api/v1/enums/calldestinationtype"
} ]
},
"count" : { "intermediateTarget" : 1
},
"total" : { "intermediateTarget" : 1
},
"_embedded" : { "intermediateTarget" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets/1001"
}
},
"destType" : "Number", "label" : "New label", "targetActive" : true, "targetId" : 1001,
"targetValue" : "8887777"
} ]
}
}
Table of Contents
Sample GET Response Description
The KeyFeature resource provides information about a calling feature or phone feature that can be programmed on a programmable phone key.
GET
View the feature details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
Path | Type | Description | Visibility |
featureCode | String | The programmatic feature code. This property serves as a unique identifier for the feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
featureName | String | The name of the key feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
description | String | A brief description of the purpose of the feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
helpText | String | Help text associated with the key feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
featureDataType | String | KeyFeatureDataType for the key feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
featureDataRequire | String | KeyFeatureDataRequire for the key feature. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 698
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/keyfeatures/21.0"
},
"v1options:keyFeatureDataRequire" : {
"href" : "/api/v1/enums/keyfeaturedatarequire"
},
"v1options:keyFeatureDataType" : {
"href" : "/api/v1/enums/keyfeaturedatatype"
}
},
"description" : "Join/Leave Group 6001", "featureCode" : "21.0", "featureDataRequire" : "Mandatory", "featureDataType" : "CallGroupExt",
"featureName" : "Join/Leave Group",
"helpText" : "The Join/Leave Group key can be used to subscribe/unsubscribe to a call group."
}
Table of Contents
This relation returns a list of programmable key features.
Not all features can be programmed on all phones or all keys. By specifying a keyId in the mandatory query parameter, the list will include only those features which can be programmed onto the specified key.
GET
View list of key features HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
The KeyFeatures list resource provides a list of KeyFeature resources.
Parameter | Description | Constraints |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
keyId | Not all keys can be programmed with all features. This mandatory parameter causes the list of features to filtered according to the key being programmed. | Required. Must be the keyId of the key being programmed. |
extension | Not all keys can be programmed with all features. This optional parameter causes the list of features to filtered based on the extension of a User or Location whose key being programmed. This parameter should only be used for getting available key features for Personal Key Mapping. | Optional. Must be a valid extension of User or Location. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1options:keyFeatureData Type | List of possible values for the key feature data type of the KeyFeature. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1options:keyFeatureData Require | List of possible values for the key feature data required of the Key Feature. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Parameter | Description | Constraints |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
keyId | Not all keys can be programmed with all features. This mandatory parameter causes the list of features to filtered according to the key being programmed. | Required. Must be the keyId of the key being programmed. |
extension | Not all keys can be programmed with all features. This optional parameter causes the list of features to filtered based on the extension of a User or Location whose key being programmed. This parameter should only be used for getting available key features for Personal Key Mapping. | Optional. Must be a valid extension of User or Location. |
Name | Description | Visibility | Expandable |
Represents the feature programming associated with the profile key. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1592
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/keyfeatures?keyId=2048&extension=4332"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/keyfeatures/{featureCode}", "templated" : true
} ],
"v1options:keyFeatureDataRequire" : [ {
"href" : "/api/v1/enums/keyfeaturedatarequire"
} ],
"v1options:keyFeatureDataType" : [ {
"href" : "/api/v1/enums/keyfeaturedatatype"
} ]
},
"count" : { "keyFeature" : 2
},
"total" : { "keyFeature" : 2
},
"_embedded" : {
"keyFeature" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyfeatures/11.0"
}
},
"description" : "VoiceMail Dialer Retrieval", "featureCode" : "11.0",
"featureDataRequire" : "None", "featureName" : "Voice Mail",
"helpText" : "Use the Voice Mail feature to access voice mail or manage voice mail options such as changing your voice mail greeting."
}, {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyfeatures/206.0"
}
},
"description" : "Twinning On/Off Toggle", "featureCode" : "206.0", "featureDataRequire" : "None", "featureName" : "Twinning On/Off",
"helpText" : "The Twinning On/Off key can be used to activate/deactivate twinning."
} ]
}
}
KeyProfileMemberMgmt Resource
Table of Contents
Sample PUT Response Description
This resource provides a list of KeyProfile:User/Location relation resources, identifying which users/locations are using the KeyProfile.
GET
View the list of KeyProfile:User/Location relation resources HEAD
Get just the header response PUT
Update the list of KeyProfile:User/Location relation POST
Add a new KeyProfile:User/Location relation
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, POST |
TenantAdmin | GET, PUT, POST |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of all extensions for the tenant that are using the key profile. It is a template that allows filtering so that, for example, only user extensions can be seen. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the array represents a relationship between this key profile and extensions that are using it. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1085
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10/kpmembers"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/ext-kp/{extension}", "templated" : true
} ]
},
"count" : { "memberKeyProfile" : 2
},
"total" : { "memberKeyProfile" : 2
},
"_embedded" : { "memberKeyProfile" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/ext-kp/3235"
}
},
"extension" : "3235",
"keyProfileId" : 10
}, {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/ext-kp/3235"
}
},
"extension" : "3235",
"keyProfileId" : 10
} ]
}
}
Use a POST request to add a new Key Profile Member.
POST Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
extension | String | The extension of the adding Key Profile Member. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be valid extension of User or Location. | n/a |
POST Response
A successful POST returns a 201 (Created). A link to the newly added Key Profile can be found in the Location field in the response header.
Sample POST Request
POST /api/v1/tenants/21375/keyprofiles/10/kpmembers HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:36317 Content-Length: 26
{
"extension" : "4332"
}
Sample POST Response
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/ext-kp/4332
Use a PUT request to replace the existing member list with a new list of members.
PUT Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
memberKey Profile[]. extension | String | The extension of the User or Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This must be a valid extension of User or Location. | None |
Sample PUT Request
PUT /api/v1/tenants/21375/keyprofiles/10/kpmembers HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:36317 Content-Length: 61
{
"memberKeyProfile" : [ { "extension" : "4332"
} ]
}
Table of Contents
The KeyProfile resource includes all of the key mappings for the key profile.
GET
View key profile details HEAD
Get just the header response PUT
Modify key profile details DELETE
Remove the key profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET |
Location | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
keyProfileId | Number | System-assigned unique identifier of the key profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
keyProfileName | String | User-assigned name of the key profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:keyProfileMemberMgmt | A list of users and locations using key profile. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:profileKeyMappings | A list of profile key mappings for the key profile. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:tenantPhoneModels | A list of phone models for the tenant where the key profile belongs to. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The provisioned key profile key mappings associated with the key profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1047
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10"
},
"v1:keyProfileMemberMgmt" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10/kpmembers{?expand,filter}", "templated" : true
},
"v1:profileKeyMappings" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10/keymappings{?
expand,filter,includeAll,phoneModel}", "templated" : true
},
"v1:tenantPhoneModels" : {
"href" : "/api/v1/tenants/21375/phonemodels{?expand,filter}", "templated" : true
}
},
"keyProfileId" : 10,
"keyProfileName" : "Corporate Speed Dial Keys", "_embedded" : {
"profileKeyMapping" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10/keymappings/2051"
}
},
"featureCode" : "206.0",
"featureData" : "6132234534",
"keyId" : 2051, "label" : "Bob", "locked" : true
}
}
}
Use a PUT request to modify the properties of a Key Profile.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
keyProfileName | String | The name of the Key Profile. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Max 50 chars. |
PUT /api/v1/tenants/21375/keyprofiles/10 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:36317
Content-Length: 52
{
"keyProfileName" : "Corporate Speed Dial Keys"
}
Table of Contents
This relation returns a list all of the key profiles associated with the tenant.
GET
View list of key profiles HEAD
Get just the header response POST
Add a new key profile
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
Non-admin User | GET |
Location | GET |
The Key Profile list resource provides a list of KeyProfile resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the keyProfile list represents a single key profile, and indicates the key profile name. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 663
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/keyprofiles/{keyProfileId}", "templated" : true
} ]
},
"count" : { "keyProfile" : 1
},
"total" : { "keyProfile" : 1
},
"_embedded" : {
"keyProfile" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10"
}
},
"keyProfileId" : 10,
"keyProfileName" : "Corporate Speed Dial Keys"
} ]
}
}
Use a POST request to add a new Key Profile.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
keyProfile Name | String | The name of the Key Profile. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Max 50 chars. | n/a |
A successful POST returns a 201 (Created). A link to the newly added Key Profile can be found in the Location field in the response header.
POST /api/v1/tenants/21375/keyprofiles HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:36317
Content-Length: 52
{
"keyProfileName" : "Corporate Speed Dial Keys"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/keyprofiles/34
Table of Contents
The Language resource provides information about a supported language.
GET
View Language Details HEAD
Get just the header response PUT
Modify Language setting(Enable/Disable)
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
Path | Type | Description | Visibility |
langCode | String | The ISO-639-1 language code of the supported Language. | Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin, User |
description | String | The description of the supported Language, usually is the language name. | Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin, User |
enabled | Boolean | If the supported Language is enabled, true or false. Can only be seen by Telco User. | Telco(TenantBasicOr AdvanceManagement, SystemManagement) |
order | Number | The order of enabled supported Language, value start from 1, always 0 for not enabled Language. | Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 166
{
"_links" : {
"self" : {
"href" : "/api/v1/languages/en"
}
},
"description" : "English", "enabled" : true, "langCode" : "en",
"order" : 1
}
Use a PUT request to enable or disable the language.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
enabled | Boolean | Indicate if enable the Language in system. | Telco(System Management) | Optional. If provided, must be true or false. |
PUT /api/v1/languages/en HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:36127
Content-Length: 22
{
"enabled" : true
}
Table of Contents
PUT Request Description
This relation returns a list of supported Language of the system.
GET
View list of Languages HEAD
Get just the header response PUT
Update Language List(change order and enable/disable)
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
The Language list resource provides a list of Language resources.
Parameter | Description | Constraints |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the Language list represents a single supported Language of the system. Not enabled Language can only be seen by Telco User. | Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 625
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/languages"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/languages/{langCode}", "templated" : true
} ]
},
"count" : { "language" : 1
},
"total" : { "language" : 1
},
"_embedded" : {
"language" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/languages/en"
}
},
"description" : "English", "enabled" : true, "langCode" : "en",
"order" : 1
} ]
}
}
Use a PUT request to enabled/disable languages and change enabled language order. This can NOT be used to add, remove language. For all disabled language the order will not matter and will be reset to 0.
PUT Request Properties
The following properties are processed as part of each element in the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
language[]. langCode | String | The langCode of the Language which is the identifier of the language. | Telco(System Management) | Required. Must be a valid langCode of a language in system. | None |
language[]. enabled | Boolean | Indicate if enable the Language in system. | Telco(System Management) | Optional. If provided, must be true or false. | If not provided, will keep current value unchanged. |
Sample PUT Request
PUT /api/v1/languages HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:36127
Content-Length: 124
{
"language" : [ {
"langCode" : "en", "enabled" : true
}, {
"langCode" : "nl", "enabled" : false
} ]
}
Sample PUT Response
Table of Contents
Each Location resource provides the personally-modifiable information about a Location, meaning settings that do not require TenantAdmin privileges to modify.
Further information about the location is available through the embedded representations linked to in the response.
GET
View Location Details HEAD
Get just the header response PUT
Modify Location Details DELETE
Remove the Location
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
accountId | String | The location’s Account Identifier, required for subscribing to events and managing calls through the API. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
extension | String | The location’s extension. The extension serves as the unique identifier of a location within a tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
name | String | The location’s name. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
language | String | The location’s language, as a two-character code. This setting manages the location’s phone language and their WebAdmin language. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
nameAnnouncement Recorded | Boolean | Indicates whether the location has recorded their Name Announcement for the Auto Attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
subscriberId | Number | A unique identifier for the location, this value is provided for legacy system interoperability purposes. New applications should avoid using it. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
creationTimestamp | String | Creation timestamp of this location. It’s read-only and displayed in the format of 'yyyy-MM-dd HH:mm:ss.SS SXXX'. It presents only for a newly added location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
deleting | Boolean | Indicate if the location is under deleting. Read Only. When a location is under deleting, this will be true and never go back to false, and there will be a runningTask created for the deletion work, please use the runningTask resource to check deleting progress details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:userPhones | This is deprecated. Details about the phone(s) that the location is logged into, their default Click-to-Call device, and their default Intercom device. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:myPhones | My Phones Management. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:polycomRingTones | Details about the Polycom ring tone settings of the location. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:mitelRingTones | Details about the Mitel ring tone settings of the location. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Relation | Description | Visibility |
v1:memberCallGroupMgmt | All call groups of which the location is a member. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:monitoredByExtensions | Extensions that are monitoring this location’s phone. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:monitoringExtensions | Extensions that this location is monitoring | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:memberKeyProfileMgmt | key profile management. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:personalKeyMappings | personal key mapping management. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:userCallPermission Profile | call permission profile management. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:scrRules | Selective Call Routing rules management. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:personalVoicemail Settings | Personal vociemail settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:personalVoicemailPin Reset | Link location where accept POST request for setting new voicemail PIN. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:languages | Supported languages of system which can be used for Location language setting. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:runningTask | when a location is under deleting, this link can be used to query the running task. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The location admin Settings resource contains those settings generally provisionable only by an admin user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n | |
The location feature Settings resource contains those feature related settings generally provisionable only by an admin user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n | |
The AnnouncementSetting of this location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The location features resource contains status information for all Service and Calling Features. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
If the location has a Key Profile, this representation identifies it. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
The CallPermissionProfile assigned to this location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
The NameAnnouncement of this location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
voicemailBox | The allocated voicemail box of this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
Logged in Phone(s) for this location. Include flags to indicate location’s default Click-to-Call phone and Intercom phone. If the location is not logged into any phone, this representation will not be present in the query response. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
Name | Description | Visibility | Expandable |
when the location is under deleting, there will be a runningTask for the deletion which include progress and state details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 4428
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235"
},
"v1:languages" : {
"href" : "/api/v1/languages{?filter}", "templated" : true
},
"v1:memberCallGroupMgmt" : {
"href" : "/api/v1/tenants/21375/locations/3235/callinggroups{?expand,filter}", "templated" : true
},
"v1:memberKeyProfileMgmt" : {
"href" : "/api/v1/tenants/21375/locations/3235/keyprofile"
},
"v1:mitelRingTones" : {
"href" : "/api/v1/tenants/21375/locations/3235/mitelringtones"
},
"v1:monitoredByExtensions" : {
"href" : "/api/v1/tenants/21375/locations/3235/monitoredbyextensions{?expand,filter}", "templated" : true
},
"v1:monitoringExtensions" : {
"href" : "/api/v1/tenants/21375/locations/3235/monitoringextensions{?expand,filter}", "templated" : true
},
"v1:myPhones" : {
"href" : "/api/v1/tenants/21375/locations/3235/myphones{?expand,filter}", "templated" : true
},
"v1:personalKeyMappings" : {
"href" : "/api/v1/tenants/21375/locations/3235/personalkeymappings{?expand,filter}", "templated" : true
},
"v1:personalVoicemailPinReset" : {
"href" : "/api/v1/tenants/21375/locations/3235/voicemailpinreset"
},
"v1:personalVoicemailSettings" : {
"href" : "/api/v1/tenants/21375/locations/3235/voicemailsettings"
},
"v1:polycomRingTones" : {
"href" : "/api/v1/tenants/21375/locations/3235/polycomringtones"
},
"v1:scrRules" : {
"href" : "/api/v1/tenants/21375/locations/3235/scrrules{?expand,filter}", "templated" : true
},
"v1:userCallPermissionProfile" : {
"href" : "/api/v1/tenants/21375/locations/3235/callpermissionprofile"
},
"v1:userPhones" : {
"href" : "/api/v1/tenants/21375/locations/3235/phones{?expand,filter}", "templated" : true
}
},
"accountId" : "3235@21375",
"creationTimestamp" : "2022-12-01 14:54:38.121-05:00", "deleting" : false,
"extension" : "3235",
"language" : "en",
"name" : "Kitchen", "nameAnnouncementRecorded" : false, "subscriberId" : 170,
"_embedded" : { "nameAnnouncement" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235/nameannouncement"
}
},
"nameAnnouncementRecorded" : false
},
"keyProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10"
}
},
"keyProfileId" : 10,
"keyProfileName" : "Corporate Speed Dial Keys"
},
"features" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235/features"
}
}
},
"featureSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235/featuresettings"
}
}
},
"callPermissionProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116"
}
},
"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"
},
"announcementSetting" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235/announcementsetting"
}
},
"announcementId" : 2, "useDefault" : false
},
"myPhone" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235/myphones/546"
}
},
"defaultC2CPhone" : true, "defaultIntercomPhone" : true, "identifier" : "08000f6e6799", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "userLabel" : "Desk Phone"
},
"adminSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235/adminsettings"
}
}
},
"voicemailBox" : { "_links" : {
"self" : {
"href" : "/api/v1/voicemailservers/101/voicemailboxes/22"
}
},
"releaseDate" : "12/1/22, 2:54 p.m.", "voicemailBoxAccount" : "23380500049100",
"voicemailBoxId" : 22, "voicemailBoxState" : "Released"
}
}
}
Use a PUT request to modify the properties of a Location.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Max 50 chars. |
language | String | The prefer phone language of the Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Must be a supported and enabled language in system. |
PUT /api/v1/tenants/21375/locations/3235 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:35441
Content-Length: 45
{
"language" : "en",
"name" : "Kitchen"
}
Sample PUT Response Same as "GET response" Delete Request
Use a DELETE request to delete the location, will get 202 Accepted if success, and a runningTask will be created for the deletion. The runningTask link and detail will be in the response. Client can query runningTask to check the deletion progress and state. After location deletion task is completed, GET request on the location or runningTask will get 404 not found.
Path | Type | Description | Visibility |
runningTaskId | Number | Unique identifier of the running task | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:runningTask | The running task of the deleting location. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Name | Description | Visibility | Expandable |
The location which is being deleted. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n |
HTTP/1.1 202 Accepted
Content-Type: application/hal+json Content-Length: 865
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235"
},
"v1:runningTask" : {
"href" : "/api/v1/runningtasks/18"
}
},
"runningTaskId" : 18, "_embedded" : {
"runningTask" : { "_links" : {
"self" : {
"href" : "/api/v1/runningtasks/18"
}
},
"createdTime" : "2022-12-01T14:54:38",
"progress" : 0,
"runningTaskId" : 18, "runningTaskState" : "Created",
"runningTaskStateDetail" : "Task Initialized.", "runningTaskType" : "SubscriberDelete", "targetId" : 170,
"updatedTime" : "2022-12-01T14:54:38"
}
}
}
Table of Contents
This relation returns a list of configured Locations within the tenant.
GET
View Location List HEAD
Get just the header response POST
Add new Location
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The Location list resource provides a list of Location resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:languages | Supported languages of system which can be used for Location language setting. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:extensions | List of existing extensions of the tenant. This is useful to find the a not used extension if the client want specify one. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the location array represents a single location resource, and indicates the location’s name, extension, and accountId for Call Control. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 962
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/locations"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/locations/{extension}", "templated" : true
} ],
"v1:languages" : [ {
"href" : "/api/v1/languages{?filter}", "templated" : true
} ]
},
"count" : { "location" : 1
},
"total" : { "location" : 1
},
"_embedded" : {
"location" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/locations/3235"
}
},
"accountId" : "3235@21375", "deleting" : false, "extension" : "3235",
"name" : "Kitchen", "subscriberId" : 170
} ]
}
}
Use a POST request to add a new Location.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Max 50 chars. | None |
language | String | The prefer phone language of the Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Must be a supported and enabled language in system. | en |
extension | String | The extension to be used for the Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If specified, it must be a valid extension for a Location and not be in use. | Next unused value in range. (Same range shared by User, Location and ACD) |
A successful POST returns a 201 (Created). A link to the newly added Location can be found in the Location field in the response header.
POST /api/v1/tenants/21375/locations HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:35441
Content-Length: 69
{
"extension" : "3235",
"language" : "en",
"name" : "Kitchen"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/locations/3235
Table of Contents
Sample PUT Response Description
The Login ACD resource provides the ability to log in/out the user’s ACD account.
The Login ACD feature is not supported for locations.
GET
View User login ACD status HEAD
Get just the header response PUT
Modify User login ACD status to log in/out
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT
TenantAdmin
GET, PUT
User
GET, PUT
Path
Type
Description
Visibility
active
Boolean
Indicates whether the user has signed in ACD accout.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 122
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/loginacd"
}
},
"active" : false
}
Use a PUT request with the following properties in the payload to log in/out user’s ACD account.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
active
Boolean
Indicates whether this user will log in/out the ACD account.
Telco(Tenant BasicOrAdvance Management), TenantAdmin, User
Required.
PUT /api/v1/tenants/21375/users/4332/loginacd HTTP/1.1 Content-Type: application/json; charset=UTF-8
Content-Length: 21
{
"active" : true
}
MemberCallGroupMgmt List Resource
Table of Contents
Modify List Request Description
This relation provides a list of call group membership relation resources for this extension. From this, the client can determine the list of call groups in which the user/ location is a member.
This list supports the '?expand=' feature.
GET
View list of call group member relation resources HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET, |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
The MemberCallGroup list resource provides a list of CallGroupMember resources for the specified user/location. More detail can be requested in the response by using the '?expand' parameter.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the array represents the user/ location’s status in a call group. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 831
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/callinggroups"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/callinggroups/{callGroupId}/members/4332", "templated" : true
} ]
},
"count" : { "callGroupMember" : 1
},
"total" : { "callGroupMember" : 1
},
"_embedded" : { "callGroupMember" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/members/4332"
}
},
"extension" : "3235", "loggedIn" : false, "twinningEnabled" : false
} ]
}
}
This list does not support modification.
Table of Contents
The MemberKeyProfile resource identifies the relation between a user/location’s extension and the key profile they are using.
GET
View MemberKeyProfile Relationship HEAD
Get just the header response PUT
Modify MemberKeyProfile Relationship DELETE
Remove MemberKeyProfile Relationship
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET, PUT, DELETE (only their own data) |
Location | GET, PUT, DELETE (only their own data) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
keyProfileId | Number | Identifier of key profile associated with the extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
extension | String | The extension of the member of Key Profile. Read only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:keyProfiles | Acceptable KeyProfile values for this User or Location key profile relation. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The extension (user or location) using the key profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
The key profile being used by the user/location extension | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1021
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/ext-kp/4332"
},
"v1:keyProfiles" : {
"href" : "/api/v1/tenants/21375/keyprofiles{?expand,filter}", "templated" : true
}
},
"extension" : "4332",
"keyProfileId" : 10, "_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
},
"keyProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10"
}
},
"keyProfileId" : 10,
"keyProfileName" : "Corporate Speed Dial Keys"
}
}
}
Use a PUT request to add or modify a Member to KeyProfile relation.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
keyProfileId | Number | Identifier of the key profile going to associate with the User or Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Must be a valid key profile identifier of the tenant. |
PUT /api/v1/tenants/21375/ext-kp/4332 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:42269
Content-Length: 25
{
"keyProfileId" : 10
}
MemberKeyProfileMgmt Resource
Table of Contents
The MemberKeyProfileMgmt resource provides information about the key profile setting of the User or Location.
GET
View User or Location Key Profile setting HEAD
Get just the header response POST
Associate a Key Profile with the User or Location.
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
User | GET, POST |
Location | GET, POST |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:keyProfiles | List of key profiles for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
If present, this embedded resource is an array containing the memberKey Profile relation resource. This representation will not be present if the User or Location does not have a associated Key Profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 889
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/keyprofile"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/ext-kp/{extension}", "templated" : true
} ],
"v1:keyProfiles" : [ {
"href" : "/api/v1/tenants/21375/keyprofiles{?expand,filter}", "templated" : true
} ]
},
"count" : { "memberKeyProfile" : 1
},
"total" : { "memberKeyProfile" : 1
},
"_embedded" : { "memberKeyProfile" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/ext-kp/4332"
}
},
"extension" : "4332",
"keyProfileId" : 10
} ]
}
}
Use a POST request to create a MemberKeyProfile resource to associate a Key Profile with the User or Location.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
keyProfileId | Number | Identifier of the key profile going to associate with the User or Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a valid key profile identifier of the tenant. |
extension | String | Extension of the User or Location. (Optional) | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Should be the extension of the User or Location |
POST /api/v1/tenants/21375/users/4332/keyprofile HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 49
{
"keyProfileId" : 10,
"extension" : "4332"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/ext-kp/4332
Table of Contents
The MitelRingTones resource contains the User/Location’s Mitel phone ring tone settings.
GET
View user/location Mitel ring tone settings HEAD
Get just the header response PUT
Modify user/location Mitel ring tone settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
User | GET, PUT |
Location |
GET, PUT |
Path | Type | Description | Visibility |
internalDirectRing Tone | String | Indicates the Internal Direct Call Ring Tone Type is currently selected for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
internalGroupRing Tone | String | Indicates the Internal Group Call Ring Tone Type is currently selected for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
externalDirectRing Tone | String | Indicates the External Direct Call Ring Tone Type is currently selected for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
externalGroupRing Tone | String | Indicates the External Group Call Ring Tone Type is currently selected for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1options:mitelRingToneType | Acceptable values for the Mitel Ring Tone Type setting. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:mitelRingToneTest | Test the Mitel Ring Tone on user or location’s phone. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 692
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/mitelringtones"
},
"v1:mitelRingToneTest" : {
"href" : "/api/v1/tenants/21375/users/4332/mitelringtonetest"
},
"v1options:mitelRingToneType" : {
"href" : "/api/v1/enums/mitelringtonetype"
}
},
"externalDirectRingTone" : "RingTone2", "externalGroupRingTone" : "RingTone4", "internalDirectRingTone" : "DeviceDefault", "internalGroupRingTone" : "Silent"
}
Use a PUT request with the following properties in the payload to modify the ringtone settings for the user/location’s Mitel phone(s).
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
internalDirect RingTone | String | Internal Direct Call Ring Tone type, possible values are: Device Default, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
internalGroup RingTone | String | Internal Group Call Ring Tone type, possible values are: Device Default, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
Path | Type | Description | Permission | Constraints |
externalDirect RingTone | String | External Direct Call Ring Tone type, possible values are: Device Default, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
externalGroup RingTone | String | External Group Call Ring Tone type, possible values are: Device Default, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
PUT /api/v1/tenants/21375/users/4332/mitelringtones HTTP/1.1 Content-Type: application/json; charset=UTF-8
Content-Length: 169
{
"internalDirectRingTone" : "DeviceDefault", "internalGroupRingTone" : "RingTone1", "externalDirectRingTone" : "RingTone9", "externalGroupRingTone" : "Silent"
}
Table of Contents
Sample POST Response Description
The MitelRingToneTest resource provides support for testing specified Mitel Ring Tone on User or Location’s phone.
HEAD
Get just the header response POST
Testing Mitel Ring Tone on User or Location’s phone.
Permitted Authorities (as defined in API Guide)
Telco User
POST
TenantAdmin User
POST
User
POST
Use a POST request to test Mitel Ring Tone on User or Location’s phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path
Type
Description
Permission
Constraints
Default
Value
mitelRingTone Type
String
MitelRingTone Type of the ring tone being
testing on user or location’s phone.
Telco(Tenant BasicOrAdvance Management), TenantAdmin, User
Required, possible values are: DeviceDefault, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent.
None
A successful POST returns a 200 (OK). Any Mitel phone of specified user or location will ring the specified Ring Tone.
POST /api/v1/tenants/21375/users/4332/mitelringtonetest HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 39
{
"mitelRingToneType" : "RingTone2"
}
HTTP/1.1 200 OK
MonitoredByExtension Resource
Table of Contents
This MonitoredByExtension resource provides information about a single extension that is monitoring this extension. This includes whether the extension can pickup calls to this extension.
Deleting a MonitoredByExtension is supported.
GET
View MonitoredByExtension details HEAD
Get just the header response PUT
Add or modify MonitoredByExtension DELETE
Delete the MonitoredByExtension
Permitted Authorities (as defined in API Guide)
Telco User | GET,PUT, DELETE |
TenantAdmin User | GET,PUT, DELETE |
Non-admin User | GET |
Location | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
extension | String | An extension that can monitor the user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
pickup | Boolean | Indicates the extension can pickup call to this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Details of the monitoring extension | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 599
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoredbyextensions/3235"
}
},
"extension" : "3235", "pickup" : true, "_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375", "enabled" : true, "extension" : "3235",
"extensionType" : "locationExt", "name" : "Kitchen"
}
}
}
Use PUT to creates a new monitor for this extension or changes if calls to this extension can be picked up.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
extension | String | Ignored. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Should match the monitored by extension in the URI | n/a |
Path | Type | Description | Permission | Constraints | Default Value |
pickup | Boolean | Indicates whether user can pickup monitored calls | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. | n/a |
The PUT response contains the newly updated detail in the same format of the "GET Properties".
PUT /api/v1/tenants/21375/users/4332/monitoredbyextensions/3235 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 45
{
"extension" : "3235", "pickup" : true
}
MonitoredByExtension List Resource
Table of Contents
This relation provides a list of other extensions that are monitoring this extension. That is, this extension is a primary monitor for the listed secondary extensions.
GET
View list of MonitoredByExtension resources HEAD
Get just the header response PUT
Replace the list of MonitoredByExtension
Permitted Authorities (as defined in API Guide)
Telco User | GET,PUT |
TenantAdmin User | GET,PUT |
Non-admin User | GET |
Location | GET |
The MonitoredByExtension list resource provides a list of MonitoredByExtension resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of existing extensions of the tenant. This is useful to find the user or location extension for managing monitor settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the list indication a user or location monitored by this extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 958
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoredbyextensions"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/monitoredbyextensions/{monitorExtension}", "templated" : true
} ]
},
"count" : { "monitoredBy" : 1
},
"total" : { "monitoredBy" : 1
},
"_embedded" : {
"monitoredBy" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoredbyextensions/3235"
}
},
"extension" : "3235", "pickup" : true
} ]
}
}
Use a PUT request to replace the existing MonitoredByExtension list with a new list of MonitoredByExtension.
The following properties are processed as part of each element in the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
monitored By[]. extension | String | Indicates an extension that is monitoring this extension. That is a monitor for this extension. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Numeric? | n/a |
monitored By[].pickup | Boolean | If true then calls to this extension can be picked up by the extension. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. | n/a |
The response to a successful PUT request is the newly updated resource representation similar to the response of GET.
PUT /api/v1/tenants/21375/users/4332/monitoredbyextensions HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 77
{
"monitoredBy" : [ {
"extension" : "3235", "pickup" : true
} ]
}
Table of Contents
This MonitoringExtension resource provides information about a single extension monitored by this extension. This includes whether this extension can pickup calls to the monitored extension.
This list supports the '?expand=' feature.
GET
View the MonitoringExtension detail include monitored extension and whether it can be picked up
HEAD
Get just the header response PUT
Add or modify MonitoringExtension DELETE
Delete the MonitoringExtension
Permitted Authorities (as defined in API Guide)
Telco User | GET,PUT, DELETE |
TenantAdmin User | GET,PUT, DELETE |
Non-admin User | GET |
Location | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
extension | String | An extension monitored by the user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
pickup | Boolean | Indicates the user can pickup call to the extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Details of the extension being monitored | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 598
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoringextensions/3235"
}
},
"extension" : "3235", "pickup" : true, "_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/3235"
}
},
"accountId" : "3235@21375", "enabled" : true, "extension" : "3235",
"extensionType" : "locationExt", "name" : "Kitchen"
}
}
}
Use PUT to creates a new monitor to another extension or changes if calls can be picked up.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
extension | String | Ignored | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Should match the monitored by extension in the URI | n/a |
Path | Type | Description | Permission | Constraints | Default Value |
pickup | Boolean | Indicates whether or not the extension can pickup calls | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. | n/a |
The PUT response contains the newly updated detail in the same format of the "GET Properties".
PUT /api/v1/tenants/21375/users/4332/monitoringextensions/3235 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 45
{
"extension" : "3235", "pickup" : true
}
MonitoringExtension List Resource
Table of Contents
This relation provides a list of extensions being monitored by this extension. That is, this extension is a secondary monitor for these extensions.
GET
View list of MonitoringExtension resources HEAD
Get just the header response PUT
Replace the list of MonitoringExtension
Permitted Authorities (as defined in API Guide)
Telco User | GET,PUT |
TenantAdmin User | GET,PUT |
Non-admin User | GET |
Location | GET |
The MonitoringExtension list resource provides a list of MonitoringExtension resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of existing extensions of the tenant. This is useful to find the user or location extension for managing monitor settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the list indication a user or location monitoring this extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 952
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoringextensions"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/monitoringextensions/{monitorExtension}", "templated" : true
} ]
},
"count" : { "monitoring" : 1
},
"total" : { "monitoring" : 1
},
"_embedded" : {
"monitoring" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoringextensions/3235"
}
},
"extension" : "3235", "pickup" : true
} ]
}
}
Use a PUT request to replace the existing MonitoringExtension list with a new list of MonitoringExtension.
The following properties are processed as part of each element in the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
monitoring[]. extension | String | Indicates an extension that is monitored by this extension. That is a monitor for this extension. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Numeric? | n/a |
monitoring[]. pickup | Boolean | If true then this extension can pickup call to the embedded extension. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. | n/a |
The response to a successful PUT request is the newly updated resource representation similar to the response of GET.
PUT /api/v1/tenants/21375/users/4332/monitoringextensions HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 76
{
"monitoring" : [ {
"extension" : "3235", "pickup" : true
} ]
}
Table of Contents
Modify Request Description
The file containing the AutoAttendant prompt to be played in the morning.
GET
Download the AutoAttendant’s morning greeting audio file HEAD
Get just the header response PUT
Upload an audio to be used for the morning greeting DELETE
Remove the current morning greeting audio file
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT, DELETE
TenantAdmin User
GET
Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.
Use a PUT request to upload an audio file for the morning greeting. Only audio/wav format is supported, only 8 or 16 bit u-law codecs are supported. If success, will get a 200 OK response with no content.
Use a DELETE request to remove the existing audio file for the morning greeting.
MorningGreetingRecording Resource
Table of Contents
Sample POST Response Description
The MorningGreetingRecording resource provides support for recording morning greeting prompt of an AutoAttendant via phone.
HEAD
Get just the header response POST
Recording morning greeting prompt of an AutoAttendant via phone.
Permitted Authorities (as defined in API Guide)
TenantAdmin User
POST
Use a POST request to record morning greeting prompt of an AutoAttendant via phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path
Type
Description
Permission
Constraints
Default
Value
phone
String
Indicates
TenantAdmin
Optional
Extension of
Extension
extension of
current Tenant
phone to use for
Admin User who
the recording.
is authenticated
of this request.
A successful POST returns a 200 (OK). The phone of specified phoneExtension will ring, and user can record prompt for morning greeting prompt of an AutoAttendant by answering the call and following the instructions.
POST /api/v1/tenants/21375/autoattendants/186/greetingsettings/morningrecording HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:42629 Content-Length: 31
{
"phoneExtension" : "4332"
}
HTTP/1.1 200 OK
Table of Contents
The My Phone resource provides detail information about each Phone logged in by the subscriber(User/Location).
GET
View My Phone Details HEAD
Get just the header response PUT
Modify a My Phone Details DELETE
Remove(logout) of the Phone
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User |
GET, PUT, DELETE (only their own data) | |
Location | GET, PUT, DELETE (only their own data) |
Path | Type | Description | Visibility |
phoneId | Number | A unique system identifier for the phone. Read only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
identifier | String | A unique identifier for the phone: for a Mitel phone, the MAC Address; for a SIP phone this will typically indicate the value the device provided in its User-Agent header during registration. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
phoneModelName | String | For Mitel & Polycom phones, this is the Service Provider’s phone model name. For other SIP phones, this will be the default label for SIP devices for this Service Provider. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
userLabel | String | The user-assigned label if the user has labelled the phone. If the phone hasn’t been labelled, this field will contain a copy of the identifier. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
defaultC2CPhone | Boolean | Indicates whether this is the default Click to Call phone. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
defaultIntercomPhone | Boolean | Indicates whether this is the default Intercom phone. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The phone resource related to this MyPhone. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 632
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/myphones/546"
}
},
"defaultC2CPhone" : true, "defaultIntercomPhone" : true, "identifier" : "08000f6e6799", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "userLabel" : "Desk Phone",
"_embedded" : {
"phone" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/phones/546"
}
},
"identifier" : "08000f6e6799", "macAddress" : "08:00:0f:6e:67:99", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "userLabel" : "Desk Phone"
}
}
}
Use a PUT request to modify the properties of My Phone.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
defaultIntercom Phone | Boolean | Indicates whether this is the default Intercom device. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. It must be set to true if this phone is required to be the default Intercom device. Unknown type of SIP phone cannot be set as default Intercom device. |
defaultC2CPhone | Boolean | Indicates whether this is the default Click to Call device. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. It must be set to true if this phone is required to be the default Click to Call device. |
userLabel | String | The user-assigned label if the user has labelled the phone. If the phone hasn’t been labelled, this field will contain a copy of the identifier. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
identifier | String | A unique identifier for the phone: for a Mitel phone, the MAC Address; for a SIP phone this will typically indicate the value the device provided in its User-Agent header during registration. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Readonly. |
phoneModelName | String | For Mitel & Polycom phones, this is the Service Provider’s phone model name. For other SIP phones, this will be the default label for SIP devices for this Service Provider. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Readonly. |
PUT /api/v1/tenants/21375/users/4332/myphones/546 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:33419 Content-Length: 179
{
"identifier" : "08:00:0f:14:cb:ac", "userLabel" : "My Phone Label",
"phoneModelName" : "Mitel 5340 IP Phone", "defaultC2CPhone" : true, "defaultIntercomPhone" : true
}
Table of Contents
Modify List Request Description
This relation returns a list of My Phones assigned to the current Subscriber(User/ Location).
GET
View My Phones List HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
Tenant-scoped Telco User | GET |
TenantAdmin User | GET |
Non-admin User | GET(only their own data) |
Location | GET(only their own data) |
The My Phones list resource provides a list of My Phone resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the phone array represents a single phone and indicates the phone’s model, user label, and network identifier. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 804
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/myphones"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/myphones/{phoneId}", "templated" : true
} ]
},
"count" : { "myPhone" : 1
},
"total" : { "myPhone" : 1
},
"_embedded" : {
"myPhone" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/myphones/546"
}
},
"defaultC2CPhone" : true, "defaultIntercomPhone" : true, "identifier" : "08000f6e6799", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "userLabel" : "Desk Phone"
} ]
}
}
Currently the API doesn’t support element creation of this resource.
Table of Contents
Sample GET Response Description
The NameAnnouncement resource provides information about the name announcement of the User or Location.
GET
View User or Location Name Announcement detail HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
GET
TenantAdmin User
GET
User
GET
Path
Type
Description
Visibility
nameAnnouncement Recorded
Boolean
Indicates whether the user or location has recorded the Name Announcement for Auto Attendant.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
Relation
Description
Visibility
v1:nameAnnouncement Recording
Link where user can record name announcement via phone by POST request.
TenantAdmin, User
v1mediafile:name AnnouncementFile
The audio file of the Name Announcement.
Telco(TenantBasicOrAdvance Management), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 614
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1mediafile/rels/{rel}", "name" : "v1mediafile",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/nameannouncement"
},
"v1:nameAnnouncementRecording" : {
"href" : "/api/v1/tenants/21375/users/4332/nameannouncement/recording"
},
"v1mediafile:nameAnnouncementFile" : {
"href" : "/api/v1/tenants/21375/users/4332/nameannouncement/media"
}
},
"nameAnnouncementRecorded" : true
}
Table of Contents
Modify Request Description
The NameAnnouncement File is the name announcement audio file of the User or Location.
GET
Download the current name announcement audio file of the User or Location HEAD
Get just the header response PUT
Upload the current name announcement audio file of the User or Location DELETE
Remove the current name announcement audio file of the User or Location
Permitted Authorities (as defined in API Guide)
Telco User
GET, PUT, DELETE
TenantAdmin User
GET
User
GET
Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.
Use a PUT request to upload a audio file for the User or Location Name Announcement. Only audio/wav format is supported, only 8 or 16 bit u-law codecs are supported. If success, will get a 200 OK response with no content.
Use a DELETE request to remvoe the existing audio file for the User or Locations Name Announcement.
NameAnnouncementRecording Resource
Table of Contents
Sample POST Response Description
The NameAnnouncementRecording resource provides support for recording name announcement of the User or Location via phone.
HEAD
Get just the header response POST
Recording Name Annoucement via phone for the User or Location.
Permitted Authorities (as defined in API Guide)
TenantAdmin User
POST
User
POST
Use a POST request to record the User or Location Name Announcement via phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path
Type
Description
Permission
Constraints
Default
Value
phone Extension
String
Indicates using phone of which extension to do the recording.
TenantAdmin, User
Optional, only used for Tenant Admin user,
for non-admin user this will be ignored.
Extension of current User who is authenticated of this request.
A successful POST returns a 200 (OK). The phone of specified phoneExtension will ring, and user can record its name announcement by answering the call and following the instructions.
POST /api/v1/tenants/21375/users/4332/nameannouncement/recording HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45489 Content-Length: 31
{
"phoneExtension" : "4332"
}
HTTP/1.1 200 OK
Table of Contents
The OutgoingCallPrivacy resource provides the ability to view the User/Location’s Outgoing Call Privacy feature configuration.
If Outgoing Call Privacy permission has not been enabled for this user, querying this resource will return a 404 Error Response with an application error code of FeatureNotEnabled.
GET
View Outgoing Call Privacy feature configuration HEAD
Get just the header response PUT
Modify Outgoing Call Privacy feature configuration
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
User | GET, PUT |
Path | Type | Description | Visibility |
active | Boolean | Indicates whether Outgoing Call Privacy (Calling Line Id Blocking) is currently active for this user/location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 124
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/callprivacy"
}
},
"active" : true
}
Use a PUT request to modify the properties of a call group.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
active | Boolean | Indicates whether Outgoing Call Privacy (Calling Line Id Blocking) is currently active for this user/ location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False. |
PUT /api/v1/tenants/21375/users/4332/callprivacy HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 21
{
"active" : true
}
Table of Contents
The PersonalContact resource provides information about a specific Personal Contact.
GET
View PersonalContact details HEAD
Get just the header response PUT
Modify PersonalContact details DELETE
Remove the PersonalContact
Permitted Authorities (as defined in API Guide)
Non-admin User | GET, PUT, DELETE |
Path | Type | Description | Visibility |
name | String | The name of the Personal Contact. | User |
contactId | Number | Identifier for the Personal Contact. Read Only, system assigned. | User |
Relation | Description | Visibility |
v1:personalContactFields | personal contact fields. | User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 440
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/25"
},
"v1:personalContactFields" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields{?
expand,filter}",
"templated" : true
}
},
"contactId" : 25,
"name" : "Wayne Interprises"
}
Use a PUT request to modify the properties of an PersonalContact.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
name | String | The name of the PersonalContact. | User | Max 50 chars. |
PUT /api/v1/tenants/21375/users/4332/personalcontacts/25 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:46437 Content-Length: 34
{
"name" : "Wayne Interprises"
}
PersonalContact List Resource
Table of Contents
This relation returns a list of configured PersonalContacts for the User.
GET
View list of PersonalContacts HEAD
Get just the header response POST
Add new PersonalContact
Permitted Authorities (as defined in API Guide)
Non-admin User | GET, POST |
The PersonalContact list resource provides a list of PersonalContact resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
personalContact | Each element of the PersonalContact list represents a single PersonalContact, and indicates the Personal Contact personalContactId and name. | User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json
Content-Length: 702
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/{contactId}", "templated" : true
} ]
},
"count" : { "personalContact" : 1
},
"total" : { "personalContact" : 1
},
"_embedded" : { "personalContact" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/25"
}
},
"contactId" : 25,
"name" : "Wayne Interprises"
} ]
}
}
Use a POST request to add a new PersonalContact.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the PersonalContact. | User | Required. Max 40 chars. | None |
A successful POST returns a 201 (Created). A link to the newly added PersonalContact can be found in the Location field in the response header.
POST /api/v1/tenants/21375/users/4332/personalcontacts HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:46437 Content-Length: 34
{
"name" : "Wayne Interprises"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/users/4332/personalcontacts/24
PersonalContactField Resource
Table of Contents
The PersonalContactField resource provides information about a specific Personal Contact Field.
GET
View PersonalContactField Details HEAD
Get just the header response PUT
Modify PersonalContactField Details DELETE
Remove the PersonalContactField
Permitted Authorities (as defined in API Guide)
Non-admin User | GET, PUT, DELETE |
Path | Type | Description | Visibility |
label | String | The label of the Personal ContactField. | User |
value | String | The value of the Personal ContactField. | User |
contactFieldId | Number | Identifier for the Personal ContactField. Read Only, system assigned. | User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 234
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields/26"
}
},
"contactFieldId" : 26,
"label" : "Bruce Wayne email address", "value" : "[email protected]"
}
Use a PUT request to modify the properties of an PersonalContactField.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
label | String | The value of the PersonalContact Field. | User | Max 256 chars. |
value | String | The value of the PersonalContact Field. | User | Max 256 chars. |
PUT /api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields/26 HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:45711
Content-Length: 81
{
"label" : "Bruce Wayne email address", "value" : "[email protected]"
}
PersonalContactField List Resource
Table of Contents
This relation returns a list of configured PersonalContactFields for the Personal Contact.
GET
View list of PersonalContactFields HEAD
Get just the header response POST
Add new PersonalContactField
Permitted Authorities (as defined in API Guide)
Non-admin User | GET, POST |
The PersonalContactField list resource provides a list of PersonalContactField resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the PersonalContactField list represents a single PersonalContactField. | User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 829
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields/
{contactFieldId}",
"templated" : true
} ]
},
"count" : { "personalContactField" : 1
},
"total" : { "personalContactField" : 1
},
"_embedded" : { "personalContactField" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields/26"
}
},
"contactFieldId" : 26,
"label" : "Bruce Wayne email address", "value" : "[email protected]"
} ]
}
}
Use a POST request to add a new PersonalContactField.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
label | String | The label of the PersonalContact Field. | User | Required. Max 256 chars. | None |
Path | Type | Description | Permission | Constraints | Default Value |
value | String | The value of the PersonalContact Field. | User | Required. Max 256 chars. | None |
A successful POST returns a 201 (Created). A link to the newly added PersonalContactField can be found in the Location field in the response header.
POST /api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45711 Content-Length: 81
{
"label" : "Bruce Wayne email address", "value" : "[email protected]"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/users/4332/personalcontacts/25/contactfields/24
Table of Contents
The PersonalKeyMapping resource provides information about a specific Personal KeyMapping for a User or Location.
GET
View PersonalKeyMapping Details HEAD
Get just the header response PUT
Add or Modify PersonalKeyMapping Details DELETE
Remove the PersonalKeyMapping
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET, PUT, DELETE |
Location | GET, PUT, DELETE |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
featureCode | String | KeyFeature featureCode of the personal key mapping | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
featureData | String | featureData of the personal key mapping, the requirement and the value type is depend on the featureCode. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
label | String | key label of the personal key mapping. Label of Line Appearance key of Verge phone is read only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
keyId | Number | key ID of the personal key mapping of User or Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:keyFeatures | Acceptable KeyFeature values for this personal phone key mapping. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The KeyFeature detail which is currently provisioned on the personal key of this User or Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1033
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalkeymappings/503"
},
"v1:keyFeatures" : {
"href" : "/api/v1/tenants/21375/keyfeatures?keyId=503&extension=4332"
}
},
"featureCode" : "21.0",
"featureData" : "6132234534",
"keyId" : 503,
"label" : "Join/Leave Group 6001", "_embedded" : {
"keyFeature" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyfeatures/21.0"
}
},
"description" : "Join/Leave Call Group", "featureCode" : "21.0", "featureDataRequire" : "Mandatory", "featureDataType" : "CallGroupExt", "featureName" : "Join/Leave Group",
"helpText" : "Calling group member can use this key to subscribe or un-subscriber to a calling group."
}
}
}
Use a PUT request to add a new PersonalKeyMapping or modify the properties of an exist PersonalKeyMapping.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
featureCode | String | Indicates the KeyFeature feature Code will be provisioned on this personal key. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required |
featureData | String | Indicates the feature Data value will be provisioned on this personal key. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required or Optional, depend on the featureCode, some featureCode requires featureData, some not. See KeyFeature resource for more details. |
label | String | Indicates the label of the personal key. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. Max length=100. Label of Line Appearance key of Verge phone is read only, if provided will be ignored. |
PUT /api/v1/tenants/21375/users/4332/personalkeymappings/503 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45447 Content-Length: 97
{
"featureCode" : "21.0",
"featureData" : "6132234534", "label" : "Join/Leave Group 6001"
}
PersonalKeyMapping List Resource
Table of Contents
Modify List Request Description
This relation returns a list of configured PersonalKeyMapping for the User or Location.
GET
View list of PersonalKeyMappings for the User or Location HEAD
Get just the header response DELETE
Remove all PersonalKeyMappings for the User or Location(Reset all keys)
Permitted Authorities (as defined in API Guide)
Telco User | GET, DELETE |
TenantAdmin User | GET, DELETE |
Non-admin User | GET, DELETE |
Location | GET, DELETE |
The PersonalKeyMapping list resource provides a list of PersonalKeyMapping resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
phoneModel | Can be used to only return key mappings of the user or location for a specified phone model. If not provided or not specified, will return all personal keys of the user or location. | Optional. If provided, must be a valid phone model name of the tenant of the user or location, if not a valid phone model name, will return a empty key list. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:keyFeatures | Acceptable KeyFeature values for this personal key of this User or Location. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the PersonalKeyMapping list represents a single PersonalKeyMapping. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 927
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalkeymappings"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/personalkeymappings/{keyId}", "templated" : true
} ],
"v1:keyFeatures" : [ {
"href" : "/api/v1/tenants/21375/keyfeatures?keyId={keyId}&extension=4332", "templated" : true
} ]
},
"count" : { "personalKeyMapping" : 1
},
"total" : { "personalKeyMapping" : 1
},
"_embedded" : { "personalKeyMapping" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/personalkeymappings/503"
}
},
"featureCode" : "21.0",
"featureData" : "6132234534",
"keyId" : 503,
"label" : "Join/Leave Group 6001"
} ]
}
}
Use a DELETE request to remove all PersonalKeyMapping of a User or Location. A successful DELETE returns a 200 OK and a empty list.
Personal Voicemail PIN Reset Resource
Table of Contents
Sample POST Response Description
The Personal Voicemail PIN Reset resource provides the ability to set a new PIN for User or Location’s voicemail.
HEAD
Get just the header response POST
Set user or location’s voicemail PIN
Permitted Authorities (as defined in API Guide)
Telco User
POST
TenantAdmin
POST
User
POST
Use a POST request with the following properties in the payload to set new voicemail PIN.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
newPIN
String
The New PIN being set as voicemail PIN.
Telco(Tenant BasicOrAdvance Management), TenantAdmin, User
Required, must be a valid PIN based on voicemail system PIN policies.
POST /api/v1/tenants/21375/users/4332/voicemailpinreset HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:35661 Content-Length: 23
{
"newPIN" : "3621"
}
HTTP/1.1 200 OK
Personal Voicemail Settings Resource
Table of Contents
The Personal Voicemail Settings resource provides information about the voicemail settings of the User or Location.
GET
View User or Location Personal Voicemail Settings detail HEAD
Get just the header response PUT
Modify User or Location Personal Voicemail Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
User | GET, PUT |
Path | Type | Description | Visibility |
useMWI | Boolean | Indicates whether the user or location using MWI for voicemail. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
notificationEmails | String | One or multiple email addresses where to send notification, separated by semi-column. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
copyToEmails | String | One of multiple email addresses where to send a copy of the voicemail, separated by semi-column. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
deleteAfterCopy | Boolean | Indicates whether delete the voicemail after sent out a copy to specified email address. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
dial0Enabled | Boolean | Indicates whether the dial0 option enabled for voicemail. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
dial0Extension | String | When dial0 option enabled, the target extension when 0 is dialed, could be user or location extension, call group extension or auto attendant extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
timeStampTimeZone | String | TimeZone for the time stamp in notification or copy emails. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
vmLanguage | String | Prefer language for voicemail prompts. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:vmLanguages | Link to get a list of available Voicemail Languages in system. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 596
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/voicemailsettings"
},
"v1:vmLanguages" : {
"href" : "/api/v1/vmlanguages{?filter}", "templated" : true
}
},
"copyToEmails" : "[email protected]", "deleteAfterCopy" : false,
"dial0Enabled" : true, "dial0Extension" : "7001",
"notificationEmails" : "[email protected]; [email protected]", "timeStampTimeZone" : "US/Eastern",
"useMWI" : true, "vmLanguage" : "en"
}
Use a PUT request to modify voicemail settings of user or location.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
useMWI | Boolean | whether the user or location using MWI for voicemail. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be True or False. | If not provided, will keep current setting unchanged. |
Path | Type | Description | Permission | Constraints | Default Value |
notification Emails | String | One or multiple email addresses where to send notification. Maximum 3 emails. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be valid email address, if more than one, must separated by semi-column. | If not provided, will keep current setting unchanged. |
copyToEmails | String | One of multiple email addresses where to send a copy of the voicemail. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be valid email address, if more than one, must separated by semi-column. | If not provided, will keep current setting unchanged. |
deleteAfter Copy | Boolean | Indicates whether delete the voicemail after sent out a copy to specified email address. If copy ToEmails is empty, this will be reset to True. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be True or False. | If not provided, will keep current setting unchanged. |
dial0Enabled | Boolean | Indicates whether the dial0 option enabled for voicemail. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be True or False. | If not provided, will keep current setting unchanged. |
dial0 Extension | String | The target extension when 0 is dialed, could be user or location extension, call group extension or auto attendant extension. If dial0 Enabled is false, this value will be ignored. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be valid user or location extension, call group extension or auto attendant extension of this tenant. | If not provided, will keep current setting unchanged. |
timeStampTime Zone | String | TimeZone for the time stamp in notification or copy emails. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be an valid time zone name. | If not provided, will keep current setting unchanged. |
Path | Type | Description | Permission | Constraints | Default Value |
vmLanguage | String | Prefer language for voicemail prompts.. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional, if provided, must be an valid Voicemail Language code available in system. | If not provided, will keep current setting unchanged. |
PUT /api/v1/tenants/21375/users/4332/voicemailsettings HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39149 Content-Length: 275
{
"useMWI" : true,
"notificationEmails" : "[email protected]; [email protected]", "copyToEmails" : "[email protected]",
"deleteAfterCopy" : true, "dial0Enabled" : true, "dial0Extension" : "7001", "timeStampTimeZone" : "US/Eastern", "vmLanguage" : "en"
}
Table of Contents
The Phone Detail resource provides information about a specific phone, including the phone’s type and addressing information. The provided detail differs depending on the type of phone (Mitel, Polycom, or generic SIP device) and its network location (on-net or off-net).
GET
View Phone Details HEAD
Get just the header response PUT
Modify the Details of Phone DELETE
Delete the Phone
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User |
GET, PUT, DELETE | |
User | GET (own phones only) |
Location | GET (own phones only) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
aorDomain | String | The IP Address that the system is using to communicate with the phone. For on-net phones, this is the phone’s IP address. For off-net phones, this is the phone’s site gateway address. | Telco(TenantBasicOr AdvanceManagement) |
identifier | String | A unique identifier for the phone: for a Mitel phone, the MAC Address; for a SIP phone this will typically indicate the value the device provided in its User-Agent header during registration. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
phoneId | Number | A unique system identifier for the phone. Read only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
phoneModelName | String | For Mitel & Polycom phones, this is the Service Provider’s phone model name. For other SIP phones, this will be the default label for SIP devices for this Service Provider. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
userLabel | String | The user-assigned label if the user has labelled the phone. If the phone hasn’t been labelled, this field will contain a copy of the identifier. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
phoneHardwareModel | String | For supported Mitel or Polycom phone models, this property identifies the hardware model. | Telco(TenantBasicOr AdvanceManagement) |
signallingProtocol | String | Identifies the type of signalling used by the phone. Currently 'Minet' and 'SIP' are supported. | Telco(TenantBasicOr AdvanceManagement) |
macAddress | String | The MAC address of the phone. | Telco(TenantBasicOr AdvanceManagement) |
Relation | Description | Visibility |
v1:phoneExtensionMgmt | This relation manages assigning the phone(device) to a subscriber(locatoin/user) extension. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:phoneReset | This relation can be used to reset the phone. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:staticSite | If the phone is registered on a Static Site, the staticSite relation indicates which site. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:dynamicSite | If the phone is registered on a Dynamic Site, the dynamicSite relation indicates which site. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Relation | Description | Visibility |
v1:tenant | The tenant of where this phone is registered to. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:phoneToSite | List phone to site relationship. | Telco(TenantBasicOrAdvance Management) |
v1:phoneEclidAddress | Emergency CLID and address information. This link can be used to add an emergency CLID and address information if the phone doens’t have one. | Telco(TenantAdvanceManagement) |
v1options:signalling Protocol | List of valid values for the signalling protocol. | Telco(TenantBasicOrAdvance Management) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Indicates the logged-in extension if there is a User or Location currently logged into the phone. This representation is not sent if there is no logged-in extension. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
Indicates the registered StaticSite of the phone. This representation is not sent if the phone is registered on a Dynamic Site. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
eclidAddress | Indicates the emergency CLID and address of the phone. This representation is not sent if the phone is using site number as eCLID. | Telco(TenantAdvance Management), Tenant Admin | y |
Name | Description | Visibility | Expandable |
Indicates the registered DynamicSite of the phone. This representation is not sent if the phone is registered on a StaticSite. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 2115
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/phones/546"
},
"v1:phoneEclidAddress" : {
"href" : "/api/v1/tenants/21375/phones/546/eclidaddress"
},
"v1:phoneExtensionMgmt" : {
"href" : "/api/v1/tenants/21375/phones/546/phoneextensions{?expand}", "templated" : true
},
"v1:phoneReset" : {
"href" : "/api/v1/tenants/21375/phones/546/reset"
},
"v1:phoneToSite" : {
"href" : "/api/v1/tenants/21375/phones/546/phonetosite"
},
"v1:staticSite" : {
"href" : "/api/v1/tenants/21375/staticsites/5"
},
"v1:tenant" : {
"href" : "/api/v1/tenants/21375"
},
"v1options:signallingProtocol" : {
"href" : "/api/v1/enums/signallingprotocol"
}
},
"aorDomain" : "10.10.10.10", "identifier" : "08000f6e6799", "macAddress" : "08:00:0f:6e:67:99", "phoneHardwareModel" : "MN5330", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "signallingProtocol" : "Minet", "userLabel" : "Desk Phone",
"_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true,
"extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
},
"eclidAddress" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/phones/546/eclidaddress"
}
},
"address1" : "1 Hines Road", "address2" : "Line 2",
"city" : "Ottawa",
"country" : "Canada", "emergencyClid" : "6132802000", "postalCode" : "K2M 3PC", "state" : "Ontario"
},
"staticSite" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5"
}
},
"siteId" : 5, "siteName" : "Cabin 3"
}
}
}
Use a PUT request to modify the properties of Phone. Right now only "userLabel" can be changed.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
aorDomain | String | The IP Address that the system is using to communicate with the phone. For on-net phones, this is the phone’s IP address. For off-net phones, this is the phone’s site gateway address. | Telco(Tenant BasicOrAdvance Management) | Optional. Read only. It will be ignored if presents. |
signalling Protocol | String | Identifies the type of signalling used by the phone. Currently 'Minet' and 'SIP' are supported. | Telco(Tenant BasicOrAdvance Management) | Optional. Read only. It will be ignored if presents. |
Path | Type | Description | Permission | Constraints |
phoneHardware Model | String | For supported Mitel or Polycom phone models, this property identifies the hardware model. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Read only. It will be ignored if presents. |
userLabel | String | The user-assigned label if the user has labelled the phone. If the phone hasn’t been labelled, this field will contain a copy of the identifier. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. This is the only field which can be modified. |
identifier | String | A unique identifier for the phone: for a Mitel phone, the MAC Address; for a SIP phone this will typically indicate the value the device provided in its User-Agent header during registration. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Read only. It will be ignored if presents. |
phoneModelName | String | For Mitel & Polycom phones, this is the Service Provider’s phone model name. For other SIP phones, this will be the default label for SIP devices for this Service Provider. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Read only. It will be ignored if presents. |
PUT /api/v1/tenants/21375/phones/546 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:41699
Content-Length: 223
{
"identifier" : "08:00:0f:14:cb:ac", "userLabel" : "User Phone Label", "phoneModelName" : "Mitel 5340 IP Phone", "signallingProtocol" : "Minet", "phoneHardwareModel" : "MN5360", "aorDomain" : "10.200.200.194"
}
Table of Contents
This relation returns a list of registered phones in the enterprise.
The result set returned by a query to this resource is context-sensitive. Telco and TenantAdmin users will receive a list containing all phones in the tenant. Non-admin users and location will receive a list containing only those phones they are logged into.
GET
View Phone List HEAD
Get just the header response POST
Add a new phone
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET |
User | GET |
Location | GET |
The Phone list resource provides a list of Phone resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1options:signalling Protocol | This enum identifies the supported phone signalling protocols. This link is provided only to TelcoAdmin users. | Telco(TenantBasicOrAdvance Management) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the phone array represents a single phone and indicates the phone’s model, user label, and network identifier. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 938
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/phones"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/phones/{phoneId}", "templated" : true
} ],
"v1options:signallingProtocol" : [ {
"href" : "/api/v1/enums/signallingprotocol"
} ]
},
"count" : {
"phone" : 1
},
"total" : {
"phone" : 1
},
"_embedded" : {
"phone" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/phones/546"
}
},
"identifier" : "08000f6e6799", "macAddress" : "08:00:0f:6e:67:99", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "userLabel" : "Desk Phone"
} ]
}
}
Use a POST request to add a new phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
macAddress | String | MAC address associated with the phone. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Mandatory field. | n/a |
A successful POST returns a 201 (Created). A link to the newly added Phone can be found in the Location field in the response header.
POST /api/v1/tenants/21375/phones HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:41699
Content-Length: 40
{
"macAddress" : "08:00:0f:6e:67:99"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/phones/334
Table of Contents
The PhoneExtension resource defines the relationship between a phone and an extension.
In order to access this resource, users must have Telco Admin or Tenant Admin permission configured in WebAdmin.
GET
View the Phone Extension relationship details HEAD
Get just the header response PUT
Change the Extensions associated(assigned) to the phone DELETE
Clear the Phone’s Extension (unassign the extension from the phone)
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
Tenant Admin User | GET, PUT, DELETE |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
phoneId | Number | The identifier for this phone. Read only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
extension | String | The extension logged in this phone. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:extensions | This lists all the extensions of the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The extension in this relationship. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
The phone in this relationship. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1137
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/phoneextensions/546"
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
}
},
"extension" : "4332",
"phoneId" : 546, "_embedded" : {
"extension" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extensions/4332"
}
},
"accountId" : "4332@21375", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"
},
"phone" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/phones/546"
}
},
"identifier" : "08000f6e6799", "macAddress" : "08:00:0f:6e:67:99", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "userLabel" : "Desk Phone"
}
}
}
Use a PUT request to change the Extension assigned to the Phone.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
extension | String | The extension is to be assigned to this phone. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Must be an User/Location extension for this tenant. |
PUT /api/v1/tenants/21375/phoneextensions/546 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:37203 Content-Length: 26
{
"extension" : "4332"
}
Phone Extension Management Resource
Table of Contents
This resource shows the relationship between Phone and Extension of User/Location. One phone can be assigned to only one extension. Included is a link to the list of Extensions for the tenant.
This resource provides the ability to manage the relation between a phone and an User/ Location Extension.
Each Phone may be associated with(assigned to) an Extension. This resource provides a link to a resource that links this specific Phone with a specific Extension. If this Phone does not currently have an Extension, POST to this resource to create a relationship.
If this site currently has an Extension, the current PhoneExtension relationship resource will be embedded within this management resource. The Extension associated with this phone can be changed by modifying the relationship resource.
In order to manipulate this resource, users must have Telco Admin or Tenant Admin permission configured in WebAdmin.
GET
View the Phone Extension relationship. HEAD
Get just the header response. POST
Associate(assign) an Extension to the phone.
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:extensions | List of extensions for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
phoneExtension | If present, this embedded resource is an array containing the phone extension relation resource. This representation will not be present if the phone hasn’t been assigned to an User or Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 811
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/phones/546/phoneextensions"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/phoneextensions/{phoneId}", "templated" : true
} ]
},
"count" : { "phoneExtension" : 1
},
"total" : { "phoneExtension" : 1
},
"_embedded" : { "phoneExtension" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/phoneextensions/546"
}
},
"extension" : "4332",
"phoneId" : 546
} ]
}
}
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
extension | String | Extension of the User or Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Should be the extension of the User or Location. A validation error will be thrown if this isn’t an extension of User or Location OR the extension is disabled. | n/a |
A successful POST returns a 201 (created) and the location head points to the new created Phone Extension relationship.
POST /api/v1/tenants/21375/phones/546/phoneextensions HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:41699 Content-Length: 26
{
"extension" : "4332"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/phoneextensions/546
Table of Contents
Sample POST Response Description
The PhoneReset resource allows tenant and telco administrators to reset a registered phone.
HEAD
Get just the header response POST
Reset a phone
Permitted Authorities (as defined in API Guide)
Telco User
POST
TenantAdmin
POST
Use a POST request with the following properties in the payload to reset a Phone.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
hardwareReset
Boolean
Specify if reset the hardware when reset a Phone.
Telco(Tenant BasicOrAdvance Management), TenantAdmin
Optional, true or false.
POST /api/v1/tenants/21375/phones/546/reset HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:41699 Content-Length: 28
{
"hardwareReset" : true
}
HTTP/1.1 200 OK
Table of Contents
The PIN Management resource provides the ability to modify the User’s PIN.
GET
View whether the user has a system generated PIN HEAD
Get just the header response POST
Modify user’s PIN
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin | GET, POST |
User | GET, POST |
Path | Type | Description | Visibility |
forcePinChangeOn Login | Boolean | If true the user’s PIN is currently a system generated one. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 132
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/pin"
}
},
"forcePinChangeOnLogin" : false
}
Use a POST request with the following properties in the payload to set user PIN.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
oldPin | String | The user’s current PIN. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional for Telco or Tenant Admin users when change other user’s PIN, if provided must be match current PIN. Required when user change its own PIN. |
newPin | String | The new PIN for the user. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required for all users. Must meet PIN requirements, for User update its own PIN, can not be the same as current PIN. |
Path | Type | Description | Permission | Constraints |
forcePinChangeOn Login | Boolean | Specify if need user change its PIN when login on web portal after this PIN change. Only for Telco or Tenant Admin user changing other user’s PIN, otherwise, will be ignored. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, if not provided in request will use default value false. |
POST /api/v1/tenants/21375/users/4332/pin HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463
Content-Length: 78
{
"oldPin" : "2342",
"newPin" : "1834", "forcePinChangeOnLogin" : true
}
PIN Notification Method Resource
Table of Contents
This resource allows the PIN notification method for a tenant to be set or retrieved.
GET
View a the PIN notification method for the tenant. HEAD
Get just the header response PUT
Set the PIN notification method for the tenant.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Path | Type | Description | Visibility |
inheritedFromSystem Default | Boolean | If true then the pin notification method is the system default. | Telco(TenantBasicOr AdvanceManagement) |
pinNotification Method | String | The PIN notification method. If inheritedFrom SystemDefault is true then this is the current default value from ServiceProvider or system setting. | Telco(TenantBasicOr AdvanceManagement) |
Relation | Description | Visibility |
v1options:pinNotification MethodType | Acceptable PIN notification method types. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 413
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/pinnotificationmethod"
},
"v1options:pinNotificationMethodType" : {
"href" : "/api/v1/enums/pinnotificationmethodtype"
}
},
"inheritedFromSystemDefault" : false, "pinNotificationMethod" : "Screen"
}
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
inheritedFrom | Boolean | If true then the | Telco(Tenant | True of False. | The value of |
SystemDefault | pin notification | Advance | current setting | ||
method is the | Management) | before update. | |||
system default. | When tenant | ||||
creation, the | |||||
value is True. | |||||
pin | String | The PIN | Telco(Tenant | One of the Pin | The value of |
Notification | notification | Advance | Notification | current setting | |
Method | method. If | Management) | MethodTypes | before update. | |
inheritedFrom | other than | When tenant | |||
SystemDefault | None. Ignored | creation, the | |||
is true then this | if inheritedFrom | value is from | |||
is the system | SystemDefault is | ServiceProvider | |||
default. | true | or system default | |||
setting. |
A successful PUT returns a 200 (OK) and the updated PIN Notification Method.
PUT /api/v1/tenants/21375/pinnotificationmethod HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40873 Content-Length: 79
{
"inheritedFromSystemDefault" : false, "pinNotificationMethod" : "Email"
}
Table of Contents
The PolycomRingTones resource contains the User/Location’s Polycom phone ring tone settings.
GET
View user/location Polycom ring tone settings HEAD
Get just the header response PUT
Modify user/location Polycom ring tone settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
User | GET, PUT |
Location |
GET, PUT |
Path | Type | Description | Visibility |
vvxBlfRingTone | String | Indicates the VVX BLF Ring Tone Type is currently selected for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1options:vvxBlfRingTone Type | Acceptable values for the VVX BLF Ring Tone Type setting. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 367
{
"_links" : {
"curies" : {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/polycomringtones"
},
"v1options:vvxBlfRingToneType" : {
"href" : "/api/v1/enums/vvxblfringtonetype"
}
},
"vvxBlfRingTone" : "LongDoubleTrill"
}
Use a PUT request with the following properties in the payload to modify the ring tone settings of the uer/location’s Polycom phone(s).
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
vvxBlfRingTone | String | VVX BLF Ring Tone type, possible values are: LongDoubleTrill or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Mandatory |
PUT /api/v1/tenants/21375/users/4332/polycomringtones HTTP/1.1 Content-Type: application/json; charset=UTF-8
Content-Length: 33
{
"vvxBlfRingTone" : "Silent"
}
Table of Contents
The ProfileKeyMapping resource identifies a single key mapping in a key profile. Each key profile contains hundreds of key mappings. For many phone types, only a small subset of these key mappings are applicable.
GET
View the key mapping details HEAD
Get just the header response PUT
Update the key mapping details
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Non-admin User | GET |
Location | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
featureCode | String | The feature code currently associated with the virtual key id in this mapping. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
featureData | String | Additional information assocated with a key. For example, the phone number associated with a speed dial. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
label | String | The user defined label associated with the key. Label of Line Appearance key of Verge phone is read only. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
locked | Boolean | If true, users are unable to change this key mapping | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
keyId | Number | Each possible key has a unique keyId | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1:keyFeatures | List features that are valid for this virtual key. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The feature currently programmed on the key. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 955
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10/keymappings/2051"
},
"v1:keyFeatures" : {
"href" : "/api/v1/tenants/21375/keyfeatures?keyId=2051"
}
},
"featureCode" : "206.0",
"featureData" : "6132234534",
"keyId" : 2051, "label" : "Bob", "locked" : true, "_embedded" : {
"keyFeature" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyfeatures/206.0"
}
},
"description" : "Twinning On/Off Toggle", "featureCode" : "206.0", "featureDataRequire" : "None", "featureName" : "Twinning On/Off",
"helpText" : "The Twinning On/Off key can be used to activate/deactivate twinning."
}
}
}
Use a PUT request to provision a Key Mapping of Key Profile.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
featureCode | String | The feature code associated with the virtual key id in this mapping. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This must be a valid feature code. |
featureData | String | Additional information assocated with a key depends on feature code(Optional for some feature code). For example, the phone number associated with a personal speed dial feature code. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This must be a valid data for specified feature code. For example, must be a valid extension of User or Location for personal speed dial feature code. |
label | String | The user defined label associated with the key. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Max length=100. Label of Line Appearance key of Verge phone is read only, if provided will be ignored. |
locked | Boolean | If true, users are unable to change this key mapping | Telco(Tenant BasicOrAdvance Management), TenantAdmin | This must be true or false. |
PUT /api/v1/tenants/21375/keyprofiles/10/keymappings/2051 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:36317 Content-Length: 99
{
"locked" : true, "featureCode" : "206.0",
"featureData" : "6132234534", "label" : "Bob"
}
ProfileKeyMapping List Resource
Table of Contents
This relation returns a list of the ProfileKeyMappings for a KeyProfile.
GET
View list of ProfileKeyMappings for a key profiles HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
The Key Profile Key Mapping list resource provides a list of ProfileKeyMapping resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
phoneModel | Can be used to only return key mappings of the key profile for specified phone model. If not provided or not specified, will return keys for all supported phone models of the key profile. Provisioned keys always included, non-provisioned keys will be include if the includeAll parameter is true. | Optional. If provided, must be a valid phone model name, if not a valid phone model name, will return a empty key list. |
includeAll | Can be used to include all non-provisioned key mappings of the key profile. If not provided or not specified, will return only provisioned keys of the key profile. This can be used with the phoneModel parameter. | Optional. If provided, must be true of false. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:keyFeatures | List features that are valid for a virtual key. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the ProfileKeyMapping list represents a single Profile KeyMapping. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 912
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10/keymappings"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/keyprofiles/10/keymappings/{keyMappingId}", "templated" : true
} ],
"v1:keyFeatures" : [ {
"href" : "/api/v1/tenants/21375/keyfeatures?keyId={keyId}", "templated" : true
} ]
},
"count" : { "profileKeyMapping" : 1
},
"total" : { "profileKeyMapping" : 1
},
"_embedded" : { "profileKeyMapping" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10/keymappings/2051"
}
},
"featureCode" : "206.0",
"featureData" : "6132234534",
"keyId" : 2051, "label" : "Bob", "locked" : true
} ]
}
}
Table of Contents
Sample PUT Response Description
Some systems support call queueing for Broadcast, Hunt and Rollover call groups. The Call Group Queue Settings resource provides information about any queuing associated with a specific group. This includes announcements to be played while calls are on hold and wait timeout values.
This resource does not exist for systems, tenants or certain type of call groups that do not support queueing.
Control Flow for a Queue Group Call
an incoming call is received
the caller hears rings number of rings
the caller hears greeting announcement
the caller hears the wait announcement for announcementDurationMinutes
if positionEnabled is true
•
every positionAnnouncementInterval seconds the caller hears
•
position prefix announcement
•
the number announcement reflecting the caller’s position in the queue
•
position suffix announcement
at the end of announcementDurationMinutes, the call is forwarded to the call group’s CallForwardNoAnswer target.
GET
View call group queue details HEAD
Get just the header response PUT
Update the queue setting for the group
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
rings | Number | The number of rings to provide when a user first joins a queue before playing the initial announcement. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
greeting Announcement. useTenantDefault Announcement | Boolean | If true the default announcement is used for the initial greeting announcement for queued calls. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
greeting Announcement. announcementId | Number | Identifier of the the announcement played for the initial greeting announcement for queued calls. Not present if useTenantDefault Announcement is true. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
waitAnnouncement. useTenantDefault Announcement | Boolean | If true the default announcement is used for the announcement played to inform callers they are in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
waitAnnouncement. announcementId | Number | Identifier of the the announcement played to inform callers they are in the queue. Not present if useTenantDefault Announcement is true. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
announcementDuration Mins | Number | The length of time, in minutes, that a user remains in the queue before being sent to the call forward no answer target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
positionEnabled | Boolean | If True users are periodically informed of their position in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
positionAnnouncement Interval | Number | The time, in seconds, between position announcements being played. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Path | Type | Description | Visibility |
prePosition Announcement. useTenantDefault Announcement | Boolean | If true the default announcement is used for the portion of the announcement prior to the 'position' in the announcement that tells the caller their position in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
prePosition Announcement. announcementId | Number | Identifier of the the announcement played prior to the 'position' in the announcement that tells the caller their position in the queue. Not present if useTenantDefault Announcement is true. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
postPosition Announcement. useTenantDefault Announcement | Boolean | If true the default announcement is used for the portion of the announcement after to the 'position' in the announcement that tells the caller their position in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
postPosition Announcement. announcementId | Number | Identifier of the the announcement played after to the 'position' in the announcement that tells the caller their position in the queue. Not present if useTenantDefault Announcement is true. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:systemAnnouncements | Acceptable announcement values from System Announcement. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:tenantAnnouncements | Acceptable announcement values from Tenant Announcement of this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:tenantDefault Announcement | Current setting of Tenant Default Announcement. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The portion of the announcement after to the 'position' in the announcement that tells the caller their position in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The announcement played to inform callers they are in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The portion of the announcement before to the 'position' in the announcement that tells the caller their position in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The portion of the announcement after to the 'position' in the announcement that tells the caller their position in the queue. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1964
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/callinggroups/3/queue"
},
"v1:systemAnnouncements" : {
"href" : "/api/v1/systemannouncements{?expand,filter}", "templated" : true
},
"v1:tenantAnnouncements" : {
"href" : "/api/v1/tenants/21375/announcements{?expand,filter}", "templated" : true
},
"v1:tenantDefaultAnnouncement" : {
"href" : "/api/v1/tenants/21375/defaultannouncement{?expand}", "templated" : true
}
},
"announcementDurationMins" : 10, "greetingAnnouncement" : {
"useTenantDefaultAnnouncement" : false, "announcementId" : 11
},
"positionAnnouncementInterval" : 30, "positionEnabled" : false, "postPositionAnnouncement" : {
"useTenantDefaultAnnouncement" : false, "announcementId" : 0
},
"prePositionAnnouncement" : { "useTenantDefaultAnnouncement" : false, "announcementId" : 0
},
"rings" : 2, "waitAnnouncement" : {
"useTenantDefaultAnnouncement" : false, "announcementId" : 4
},
"_embedded" : { "prePositionAnnouncement" : {
"_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
},
"greetingAnnouncement" : { "_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
},
"waitAnnouncement" : { "_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
},
"postPositionAnnouncement" : { "_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
}
}
}
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
rings | Number | The number of rings to wait before playing greeting announcement. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be between 1 and 20. | 1 |
greeting Announcement. useTenant Default Announcement | Boolean | If true then the tenant default announcement will be used for the initial greeting regardless of the value provided in the announcement Id field. Otherwise the announcementId is used. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | true |
greeting Announcement. announcement Id | Number | The announcment Id of the announcement to be used for the initial greeting. Only used if use TenantDefault Announcement is False. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Integer | n/a |
wait Announcement. useTenant Default Announcement | Boolean | If true then the default announcement will be used for the wait announcement regardless of the value | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | true |
Path | Type | Description | Permission | Constraints | Default Value |
provided in the announcementId field. Otherwise the announcment Id is used. | |||||
wait Announcement. announcement Id | Number | The announcment Id of the announcement to be used for the wait announcement. Only used if use TenantDefault Announcement is False. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Integer | n/a |
announcement DurationMins | Number | The length of time, in minutes, that a user remains in the queue before being sent to the call forward no answer target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be between 1 and 1440. | 1 |
position Enabled | Boolean | When enabled, will play position announcement. When set to false, all other position announcement related settings in the request will be ignored and will be reset to default value. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False. | false |
postPosition Announcement. useTenant Default Announcement | Boolean | If true then the default announcement will be used for the postPosition Announcement regardless of the value provided in the announcementId | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | true |
Path | Type | Description | Permission | Constraints | Default Value |
field. Otherwise the announcment Id is used. | |||||
postPosition Announcement. announcement Id | Number | The announcment Id of the announcement to be used for the portion of the queue position announcement after the position. Only used if use TenantDefault Announcement is False. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Integer | n/a |
position Announcement Interval | Number | The time, in seconds, between position announcements being played. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be between 10 and 300. | 30 |
prePosition Announcement. useTenant Default Announcement | Boolean | If true then the default announcement will be used for the postPosition Announcement regardless of the value provided in the announcementId field. Otherwise the announcment Id is used. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | True or False | true |
prePosition Announcement. announcement Id | Number | The announcment Id of the announcement to be used for the portion of the queue position announcement before the position. Only used if use TenantDefault Announcement is False. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Integer | n/a |
A successful PUT returns a 200 (OK) and the updated QueueSettings of call group.
PUT /api/v1/tenants/21375/callinggroups/3/queue HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:39407 Content-Length: 530
{
"rings" : 4,
"announcementDurationMins" : 10, "positionEnabled" : true, "positionAnnouncementInterval" : 15, "greetingAnnouncement" : {
"useTenantDefaultAnnouncement" : true, "announcementId" : 8
},
"waitAnnouncement" : { "useTenantDefaultAnnouncement" : true, "announcementId" : 8
},
"prePositionAnnouncement" : { "useTenantDefaultAnnouncement" : true, "announcementId" : 8
},
"postPositionAnnouncement" : { "useTenantDefaultAnnouncement" : true, "announcementId" : 8
}
}
Table of Contents
Sample POST Response Description
The resetPin resource allows tenant and telco administrators to reset user PINs.
HEAD
Get just the header response POST
Reset user’s PIN
Permitted Authorities (as defined in API Guide)
Telco User
POST
TenantAdmin
POST
Use a POST request with the following properties in the payload to set user PIN.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path
Type
Description
Permission
Constraints
serverEmailNew Pin
Boolean
If true the server will attempt to email the new PIN to the user.
Telco(Tenant BasicOrAdvance Management), TenantAdmin
Optional, if not provided will use default value false.
POST /api/v1/tenants/21375/users/4332/resetpin HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 32
{
"serverEmailNewPin" : true
}
Path
Type
Description
Visibility
newPin
String
The system generated new PIN.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin
emailSent
Boolean
Only included in the response when client asking server email the new PIN, true means the system has sent the new PIN to the user’s email address successfully, false means failed.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 146
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/resetpin"
}
},
"emailSent" : false, "newPin" : "1234"
}
Table of Contents
This relation returns information about the requested Running Task
GET
View details about the Running Task HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
Path | Type | Description | Visibility |
runningTaskId | Number | Identifier for the Running Task. Read Only, system assigned. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
runningTaskType | String | The type of the running task. We only have Tenant Delete and Subscriber Delete. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
runningTaskState | String | The state of the running task. See possible state from v1options:running TaskState. | Telco(TenantBasicOr AdvanceManagement) |
Path | Type | Description | Visibility |
runningTaskState Detail | String | The state detail of the running task. Additional detail information related to runningTaskState. | Telco(TenantBasicOr AdvanceManagement) |
targetId | Number | The identifier of the target of the running task. For example, tenant identifier for deleting tenant running task. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
progress | Number | The progress of the running task in percentage number. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
createdTime | String | The creation time of the running task. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
updatedTime | String | The last update time of the running task. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:tenant | Link to the tenant is under deleting by the running task of TenantDelete type. | Telco(TenantBasicOrAdvance Management) |
v1:location | Link to the location is under deleting by the running task of Subscriber Delete type and subscriber type is location. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:user | Link to the user is under deleting by the running task of SubscriberDelete type and subscriber type is user. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:runningTaskType | List of all possible running task type. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1options:runningTaskState | List of all possible running task state. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The tenant which is being deleted by this running task of TenantDelete type. | Telco(TenantBasicOr AdvanceManagement) | y | |
The user which is being deleted by this running task of SubscriberDelete type and subscriber type is user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The location which is being deleted by this running task of SubscriberDelete type and subscriber type is location.. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1103
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/runningtasks/18"
},
"v1:tenant" : {
"href" : "/api/v1/tenants/21375"
},
"v1options:runningTaskState" : {
"href" : "/api/v1/enums/runningtaskstate"
},
"v1options:runningTaskType" : {
"href" : "/api/v1/enums/runningtasktype"
}
},
"createdTime" : "2022-12-01T14:53:05",
"progress" : 0,
"runningTaskId" : 18, "runningTaskState" : "Created",
"runningTaskStateDetail" : "Task Initialized.", "runningTaskType" : "TenantDelete",
"targetId" : 21375,
"updatedTime" : "2022-12-01T14:53:05",
"_embedded" : {
"tenant" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375"
}
},
"deleting" : true, "tenantId" : 21375,
"tenantName" : "Dave's Moose Hunting Supply", "webLoginUrl" : "/mooseByDave"
}
}
}
Table of Contents
This relation returns a list of Running Tasks of the system.
GET
View list of Running Tasks HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
The Running Tasks list resource provides a list of Running Task resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, |
Parameter | Description | Constraints |
and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1options:runningTaskType | List of all possible running task type. | Telco(TenantBasicOrAdvance Management) |
v1options:runningTaskState | List of all possible running task state. | Telco(TenantBasicOrAdvance Management) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the Running Task list represents a single Running Task of the system. | Telco(TenantBasicOr AdvanceManagement) | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1555
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/runningtasks"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/runningtasks/{runningTaskId}", "templated" : true
} ],
"v1options:runningTaskState" : [ {
"href" : "/api/v1/enums/runningtaskstate"
} ],
"v1options:runningTaskType" : [ {
"href" : "/api/v1/enums/runningtasktype"
} ]
},
"count" : { "runningTask" : 2
},
"total" : { "runningTask" : 2
},
"_embedded" : {
"runningTask" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/runningtasks/18"
}
},
"createdTime" : "2022-12-01T14:53:09",
"progress" : 0,
"runningTaskId" : 18, "runningTaskState" : "Created",
"runningTaskStateDetail" : "Task Initialized.", "runningTaskType" : "TenantDelete",
"targetId" : 21375,
"updatedTime" : "2022-12-01T14:53:09"
}, {
"_links" : {
"self" : {
"href" : "/api/v1/runningtasks/19"
}
},
"createdTime" : "2022-12-01T14:53:09",
"progress" : 0,
"runningTaskId" : 19, "runningTaskState" : "Created",
"runningTaskStateDetail" : "Task Initialized.", "runningTaskType" : "SubscriberDelete", "targetId" : 156,
"updatedTime" : "2022-12-01T14:53:09"
} ]
}
}
Table of Contents
The SCR Rule resource provides information about a specific SCR Rule.
GET
View SCR Rule Details HEAD
Get just the header response PUT
Modify a SCR Rule Details DELETE
Remove a SCR Rule
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
Non-admin User | GET, PUT, DELETE (only their own data) |
Location | GET, PUT, DELETE (only their own data) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
ruleId | Number | The identifier of SCR Rule. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
ruleName | String | The name of SCR Rule. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
ruleActive | Boolean | The active flag indicates whether the rule is in use. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
conditionsActive | Boolean | The flag indicates whether the CLID conditions are in use. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
targetsActive | Boolean | The flag indicates whether the intermediate and final destinations are in use. If false, the call is rejected. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
durationValue | Number | Current the unit is 'ring'. The number of rings to the intermediate target(s) before the call is forwarded to a final target. It’s not | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
used and persisted if no intermediate target is configured. |
Relation | Description | Visibility |
v1:clidConditions | List of CLID conditions configured for this rule. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:extensions | List of extensions for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:intermediateTargets | List of intermediate targets configured for this rule. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The Final Target of SCR. There is always one Fianl Target for each SCR rule. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 1201
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001"
},
"v1:clidConditions" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/clidconditions{?expand,filter}", "templated" : true
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
},
"v1:intermediateTargets" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/intermediatetargets{? expand,filter}",
"templated" : true
}
},
"conditionsActive" : false, "durationValue" : 4, "ruleActive" : false, "ruleId" : 1001,
"ruleName" : "Name of the first rule", "targetsActive" : false,
"_embedded" : { "finalTarget" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001/finaltarget"
}
},
"destType" : "CallCoverage", "targetValue" : ""
}
}
}
Use a PUT request to modify the properties of a SCR rule.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
ruleName | String | The name of the SCR rule. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars. |
ruleActive | Boolean | The status of the current rule. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | If true, the rule is in use. It must be false when creation. |
conditionsActive | Boolean | It indicates whether conditions are in use. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. It must be false when creation. |
Path | Type | Description | Permission | Constraints |
durationValue | Number | Current the unit is 'rings'. The number of rings to the intermediate target(s) before the call is forwarded to a final target. It’s not used and persisted if no intermediate target is configured. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. It is discarded when there is no intermediate target. |
targetsActive | Boolean | It indicates whether targets are in use. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. It must be false when creation. |
PUT /api/v1/tenants/21375/users/4332/scrrules/1001 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40639 Content-Length: 148
{
"ruleName" : "updated name for the rule", "ruleActive" : true,
"conditionsActive" : true, "targetsActive" : true, "durationValue" : 10
}
Table of Contents
This relation returns a list of SCR Rules associated with this subscriber(user/location).
GET
View SCR Rule List HEAD
Get just the header response PUT
Replace the existing list with a new list content POST
Create a SCR Rule
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, POST |
Tenant-scoped Telco User | GET, PUT, POST |
TenantAdmin User | GET, PUT, POST |
Non-admin User | GET, PUT, POST (only their own data) |
Location | GET, PUT, POST (only their own data) |
The SCR Rules list resource provides a list of SCR Rule resources in a summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the SCR rule list represents a single SCR rule, and indicates the status and order. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 919
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/{ruleId}", "templated" : true
} ]
},
"count" : { "scrRule" : 2
},
"total" : { "scrRule" : 2
},
"_embedded" : {
"scrRule" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001"
}
},
"ruleActive" : false, "ruleId" : 1001,
"ruleName" : "Name of the first rule"
}, {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1002"
}
},
"ruleActive" : false,
"ruleId" : 1002,
"ruleName" : "Name of the second rule"
} ]
}
}
Use a POST request to add a new SCR rule.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
ruleName | String | The name of the SCR rule. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars. | None |
ruleActive | Boolean | The status of the current rule. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | If true, the rule is in use. It must be false when creation. | false |
conditions Active | Boolean | It indicates whether conditions are in use. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. It must be false when creation. | false |
durationValue | Number | Current the unit is 'ring'. The number of rings to the intermediate target(s) before the call is forwarded to a final target.It’s not used and persisted if no | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. Any changes to this value will be discarded when there is no intermediate target. | 5 |
Path | Type | Description | Permission | Constraints | Default Value |
intermediate target is configured. | |||||
targetsActive | Boolean | It indicates whether targets are in use. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional. It must be false when creation. | false |
A successful POST returns a 201 (Created). A link to the newly added SCR rule can be found in the Location field in the response header.
POST /api/v1/tenants/21375/users/4332/scrrules HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40639 Content-Length: 138
{
"ruleName" : "New rule name", "ruleActive" : false, "conditionsActive" : false, "targetsActive" : false, "durationValue" : 5
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/users/4332/scrrules/4
This SCR Rule list resource supports the use of PUT to re-order the rule list. This request also supports changing the rule status (ruleActive) at the same time.
PUT Request Properties
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
scrRule[]. ruleId | Number | The Indentifier of a SCR Rule. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. An existing rule ID. | None |
scrRule[]. ruleName | String | The name of SCR Rule. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Required. Max 50 chars. | None |
scrRule[]. ruleActive | Boolean | If True then the SCR Rule is in use. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | True or False | False |
PUT Response Properties
The response to a successful PUT request is the new resource representation, as defined in the GET Response.
Sample PUT Request
PUT /api/v1/tenants/21375/users/4332/scrrules HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40639 Content-Length: 112
{
"scrRule" : [ { "ruleId" : 1002,
"ruleName" : "Name of a SCR rule.", "ruleActive" : true
} ]
}
Sample PUT Response
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 919
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/{ruleId}", "templated" : true
} ]
},
"count" : {
"scrRule" : 2
},
"total" : { "scrRule" : 2
},
"_embedded" : {
"scrRule" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1001"
}
},
"ruleActive" : false, "ruleId" : 1001,
"ruleName" : "Name of the first rule"
}, {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules/1002"
}
},
"ruleActive" : false, "ruleId" : 1002,
"ruleName" : "Name of the second rule"
} ]
}
}
Table of Contents
The StaticSite resource provides the configuration information about each site.
In order to access this resource, users with Telco User authority must have Site Management - View permission configured in WebAdmin. In order to modify it, they must have Site Management - Modify permission.
Deleting a StaticSite is supported.
GET
View Static Site details HEAD
Get just the header response PUT
Modify Static Site details DELETE
Remove Static Site from system.
Permitted Authorities (as defined in API Guide)
Telco User |
GET, PUT | |
TenantAdmin User | GET |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
autoEmergencyCall Enabled | Boolean | True if the site is enabled for Automatic Off-Hook Emergency Call. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
businessHoursFrom TenantDefault | Boolean | True if the Business Hours Profile associated with this site is inherited automatically from the enterprise’s default Business Hours. Set to true when site is created. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
callingLineIdNumber | String | The Calling Line Id [CLID] used when making calls from phones on this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
callingName Identifier | String | The Calling Name Identifier [CNAM] used when making calls from phones on this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
Path | Type | Description | Visibility |
maxCallCount | Number | The maximum number of simultaneous calls permitted for this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) |
maxLinkCapacity | Number | The maximum number of links permitted for this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) |
otherSubnetSameAs Phone | Boolean | The non-phone devices on this site using the same subnet as the phones. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) |
siteId | Number | The unique identifier for this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
siteName | String | A user-assigned identifier that can be applied to the site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
description | String | A free-form property that contains additional site-specific data defined by the user. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) |
subdomain | String | Subdomain which will be used by SIP device as part of the SIP domain. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) |
emergencyCallEmail Recipients | String | The sites’s emergency call notification recipient email addresses. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
Relation | Description | Visibility |
v1:phoneSubnet | Describes the phone subnet configuration for the site. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management) |
v1:otherSubnet | Describes the subnet configuration for non-phone devices. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management) |
v1:staticSiteSiteTypeMgmt | Use this link to change the SiteType associated with this StaticSite. | Telco(SiteBasicOrAdvance Management) |
v1:siteBusinessHoursMgmt | Use this link to change the business hours associated with this StaticSite. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management) |
v1:siteGateway | Use this link to view or manage the SiteGateway of this StaticSite. | Telco(SiteBasicOrAdvance Management) |
v1:staticSiteZone | Use this link to manage the zone associated with this StaticSite. | Telco(SiteBasicOrAdvance Management) |
v1:siteLongDistanceCarrier Mgmt | Use this link to manage the long distance carrier associated with this StaticSite. | Telco(SiteBasicOrAdvance Management) |
v1:siteRegionalCarrierMgmt | Use this link to manage the regional carrier associated with this StaticSite. | Telco(SiteBasicOrAdvance Management) |
v1:siteEmergencyCallAlert Members | Use this link to manage the emergency call alert members associated with this StaticSite. | Telco(SiteBasicOrAdvance Management) |
v1:siteStandardDhcpOptions | Use this link to manage standard DHCP options of this StaticSite. | Telco(SiteBasicOrAdvance Management) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
phoneSubnet | The subnet configuration for phones registered on this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | y |
otherSubnet | The subnet configuration for non-phone devices using DHCP on this site. This representation will not be present if the site does not have an otherSubnet configured. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | y |
Describes the Business Hours used for this site. Each site is associated with Business Hours. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | y | |
Describes the site type associated with this site. This representation is present only when the site is associated with a siteType. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | n | |
The street address for this site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | y | |
zone | The zone used by the site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | y |
siteCodecSet | The CodecSet settings of the site. | Telco(SiteBasicOrAdvance Management) | y |
longDistanceCarrier | The long distance carrier of the site. | Telco(SiteBasicOrAdvance Management) | y |
regionalCarrier | The regional carrier of the site. | Telco(SiteBasicOrAdvance Management) | y |
Name | Description | Visibility | Expandable |
siteGateway | The SiteGateway of the site. Only present when SiteGateway of the site is provisioned(enabled). | Telco(SiteBasicOrAdvance Management) | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 4375
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5"
},
"v1:otherSubnet" : {
"href" : "/api/v1/tenants/21375/staticsites/5/othersubnet"
},
"v1:phoneSubnet" : {
"href" : "/api/v1/tenants/21375/staticsites/5/phonesubnet"
},
"v1:siteBusinessHoursMgmt" : {
"href" : "/api/v1/tenants/21375/staticsites/5/businesshourmgmt"
},
"v1:siteEmergencyCallAlertMembers" : {
"href" : "/api/v1/tenants/21375/staticsites/5/emergencycallalertmembers{?expand,filter}", "templated" : true
},
"v1:siteGateway" : {
"href" : "/api/v1/tenants/21375/staticsites/5/gateway"
},
"v1:siteLongDistanceCarrierMgmt" : {
"href" : "/api/v1/tenants/21375/staticsites/5/longdistancecarriers"
},
"v1:siteRegionalCarrierMgmt" : {
"href" : "/api/v1/tenants/21375/staticsites/5/regionalcarriers"
},
"v1:siteStandardDhcpOptions" : {
"href" : "/api/v1/tenants/21375/staticsites/5/standarddhcpoptions{?expand,filter}", "templated" : true
},
"v1:staticSiteSiteTypeMgmt" : {
"href" : "/api/v1/tenants/21375/staticsites/5/sitesitetypes"
},
"v1:staticSiteZone" : {
"href" : "/api/v1/tenants/21375/staticsites/5/zone"
}
},
"autoEmergencyCallEnabled" : false, "businessHoursFromTenantDefault" : false, "callingLineIdNumber" : "6132802000", "callingNameIdentifier" : "Moose-by-Dave",
"maxCallCount" : 30,
"maxLinkCapacity" : 35, "otherSubnetSameAsPhone" : true, "siteId" : 5,
"siteName" : "Cabin 3", "subdomain" : "company.com",
"_embedded" : { "businessHoursProfile" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
},
"address" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5/address"
}
},
"address1" : "1 Hines Road", "address2" : "Suite 310", "city" : "Kanata",
"country" : "Canada", "faxNumber" : "6132802030",
"phoneNumber" : "6132802000", "postalCode" : "K2M 3PC", "state" : "Ontario"
},
"phoneSubnet" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5/phonesubnet"
}
},
"reservedAddressCount" : 7,
"rootIpAddress" : "10.150.150.0",
"routerIpAddress" : "10.150.150.1",
"startIpAddress" : "10.150.150.2",
"subnetMask" : "255.255.255.240",
"useDhcp" : true
},
"regionalCarrier" : { "_links" : {
"self" : {
"href" : "/api/v1/carriers/102"
}
},
"carrierId" : 102,
"cic" : "2222",
"name" : "regionalProvider"
},
"otherSubnet" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5/othersubnet"
}
},
"reservedAddressCount" : 7,
"rootIpAddress" : "10.150.150.0",
"routerIpAddress" : "10.150.150.1",
"startIpAddress" : "10.150.150.9",
"subnetMask" : "255.255.255.240",
"useDhcp" : true
},
"zone" : {
"_links" : {
"self" : {
"href" : "/api/v1/zones/3"
}
},
"timezone" : "Canada/Eastern", "zoneId" : 3,
"zoneName" : "Standard Zone"
},
"siteCodecSet" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5/sitecodecset"
}
},
"codecSetId" : 6, "useTenantDefault" : false
},
"longDistanceCarrier" : { "_links" : {
"self" : {
"href" : "/api/v1/carriers/101"
}
},
"carrierId" : 101,
"cic" : "1111",
"name" : "LongDistanceProvider"
},
"siteType" : {
"_links" : {
"self" : {
"href" : "/api/v1/serviceproviders/{serviceProviderId}/sitetypes/11", "templated" : true
}
},
"defaultOption" : true, "siteTypeId" : 11,
"siteTypeName" : "Backwoods Site"
}
}
}
Use a PUT request to modify a site.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
siteName | String | The name of the site. | Telco(SiteAdvance Management) | Optional. Max 50 characters. |
description | String | Free-format property that can be used to add site-specific detail to the site. | Telco(SiteBasic Management) | Optional. Max 50 characters. |
subdomain | String | Subdomain which will be used by SIP device as part of the SIP domain. | Telco(SiteAdvance Management) | Optional. If provided, must be in valid domain format, and |
Path | Type | Description | Permission | Constraints |
must be unique inside each tenant. Max 50 characters. | ||||
maxCallCount | Number | The maximum number of concurrent external calls allowed for the site. | Telco(SiteAdvance Management) | Optional. Non-negative integer, must be <= maxLink Capacity. |
maxLinkCapacity | Number | The maximum number of calls that the site?s broadband connection can handle. | Telco(SiteAdvance Management) | Optional. Must be >= maxCallCount. |
callingLineId Number | String | The number that will be presented to call recipients for calls made from this site (unless overridden by an extension-specific setting). | Telco(SiteAdvance Management) | Optional. Must be a digit string with no punctuation. Some systems require each site to have a unique CLID. |
emergencyCall EmailRecipients | String | The sites’s emergency call notification recipient email addresses. | Telco(SiteBasic Management), TenantAdmin | None |
callingName Identifier | String | Used for Outbound Caller Name ID. | Telco(SiteAdvance Management) | Optional. Max 50 characters. |
PUT /api/v1/tenants/21375/staticsites/5 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:37381
Content-Length: 312
{
"siteName" : "Cabin 3", "subdomain" : "company.com",
"description" : "5km hike-in, techs should bring bear repellent", "callingLineIdNumber" : "6132802000",
"callingNameIdentifier" : "Moose-by-Dave", "maxCallCount" : 30,
"maxLinkCapacity" : 35, "emergencyCallEmailRecipients" : "[email protected]"
}
The PUT response contains the newly updated resource in the same format as the GET response, above.
Table of Contents
This relation returns a list of configured (non-dynamic) sites associated with this tenant.
In order to view Site data, a Telco User must have Site Management - View permission configured in WebAdmin.
GET
View StaticSites List HEAD
Get just the header response POST
Add a static site to the tenant
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The StaticSite list resource provides a list of StaticSite resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. | |
siteTypeId | Use this parameter to request a list of static sites for a specified Site Type ID. | Optional. If provided, must be a valid siteTypeId of a SiteType |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the staticSite array represents a single (regular) site resource, and indicates the site’s name. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 625
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/staticsites"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/staticsites/{siteId}", "templated" : true
} ]
},
"count" : { "staticSite" : 1
},
"total" : { "staticSite" : 1
},
"_embedded" : {
"staticSite" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5"
}
},
"siteId" : 5, "siteName" : "Cabin 3"
} ]
}
}
Use a POST request to add a new Tenant.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
autoEmergency CallEnabled | Boolean | True if the site is enabled for Automatic Off- Hook Emergency Call. . | Telco(SiteBasic AndAdvance Management) | true or false. | false |
callingLineId Number | String | The Calling Line Id [CLID] used when making calls from phones on this site. | Telco(SiteBasic AndAdvance Management) | Must be a digit string with no punctuation. Some systems require each site to have a unique CLID. | n/a |
callingName Identifier | String | The Calling Name Identifier [CNAM] used when making calls from phones on this site. | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | Tenant name is used |
maxCallCount | Number | The maximum number of simultaneous calls permitted for this site. | Telco(SiteBasic AndAdvance Management) | Integer | n/a |
maxLink Capacity | Number | The maximum number of links permitted for this site. | Telco(SiteBasic AndAdvance Management) | Integer. Must be >= maxCall Count. | n/a |
otherSubnet SameAsPhone | Boolean | The non-phone devices on this site using the same subnet configuration as the phones. This field is read-only. | Telco(SiteBasic AndAdvance Management) | True or false | n/a |
siteName | String | A user-assigned identifier that can be applied to the site. | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
description | String | A free-form property that contains additional site- | Telco(SiteBasic AndAdvance Management) | Optional. Max 50 characters. | n/a. |
Path | Type | Description | Permission | Constraints | Default Value |
specific data defined by the user. | |||||
subdomain | String | Subdomain which will be used by SIP device as part of the SIP domain. | Telco(SiteBasic AndAdvance Management) | Optional. If provided, must be in valid domain format, and must be unique inside each tenant. Max 50 characters. | Empty string |
emergency CallEmail Recipients | String | The sites’s emergency call notification recipient email addresses. | Telco(SiteBasic AndAdvance Management) | None | n/a |
address. address1 | String | The first part of the site physical address | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
address. address2 | String | The first part of the site physical address | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
address.city | String | The city in which the site is located | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
address.state | String | The state in which the site is located | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
address. country | String | The country in which the site is located | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
address.fax Number | String | The site’s fax number | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
address.phone Number | String | The site’s phone number | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
Path | Type | Description | Permission | Constraints | Default Value |
address. postalCode | String | The postal or zip code | Telco(SiteBasic AndAdvance Management) | Max 50 characters. | n/a |
subnet.use Dhcp | Boolean | If true then DHCP will be setup for this site for phones | Telco(SiteBasic AndAdvance Management) | True or false | n/a |
subnet. reserved AddressCount | Number | Number of addresses reserved for phones. | Telco(SiteBasic AndAdvance Management) | Integer | n/a |
subnet.rootIp Address | String | The base IP address for the subnet | Telco(SiteBasic AndAdvance Management) | Must be in the form X.X.X.X | n/a |
subnet.subnet Mask | String | The subnet mask | Telco(SiteBasic AndAdvance Management) | Must be a valid network mask. | n/a |
subnet.router IpAddress | String | IP address of the router | Telco(SiteBasic AndAdvance Management) | Must be in the form X.X.X.X | n/a |
subnet.start IpAddress | String | The first IP address to be used for phones | Telco(SiteBasic AndAdvance Management) | Must be in the form X.X.X.X | n/a |
zoneId | Number | Identifier for the zone associated with the site being added | Telco(SiteBasic AndAdvance Management) | Must be an existing zone | n/a |
A successful POST returns a 201 (Created). A link to the newly added site can be found in the Location field in the response header.
POST /api/v1/tenants/21375/staticsites HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:37381
Content-Length: 882
{
"siteName" : "Cabin 3",
"subdomain" : "company.com",
"description" : "5km hike-in, techs should bring bear repellent", "callingLineIdNumber" : "6132802000",
"callingNameIdentifier" : "Moose-by-Dave", "maxCallCount" : 30, "autoEmergencyCallEnabled" : false, "maxLinkCapacity" : 35, "otherSubnetSameAsPhone" : true,
"emergencyCallEmailRecipients" : "[email protected]", "zoneId" : 3,
"address" : {
"address1" : "1 Hines Road", "address2" : "Suite 310", "city" : "Kanata",
"state" : "Ontario",
"country" : "Canada", "faxNumber" : "6132802030",
"phoneNumber" : "6132802000", "postalCode" : "K2M 3PC"
},
"subnet" : { "useDhcp" : true,
"rootIpAddress" : "10.150.150.0",
"subnetMask" : "255.255.255.240",
"routerIpAddress" : "10.150.150.1",
"startIpAddress" : "10.150.150.2",
"reservedAddressCount" : 7
}
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/staticsites/38
Table of Contents
This resource allows the relationship between the site and its Business Hour Profile to be managed.
GET
View a the relationship between the site and its Business Hour Profile. HEAD
Get just the header response PUT
Update the Business Hour Profile associated with the site. That is the profile can be changed to another existing profile.
DELETE
Removes the Business Hour Profile associated with the site. Following the delete, the tenant’s default Business Hour Profile will be used for the site.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User |
GET, PUT, DELETE |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
businessHoursProfile Id | Number | Identifier of the business hours profile. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
siteId | Number | Identifier for the site. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:businessHoursProfiles | Link to list of available business HoursProfile for the Tenant which can be assigned to the site. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
Information about the site. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
Name | Description | Visibility | Expandable |
Information about the business hours. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 858
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/sitebusinesshours/5"
},
"v1:businessHoursProfiles" : {
"href" : "/api/v1/tenants/21375/businesshours{?expand,filter}", "templated" : true
}
},
"businessHoursProfileId" : 2,
"siteId" : 5,
"_embedded" : { "businessHoursProfile" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/businesshours/2"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
},
"staticSite" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5"
}
},
"siteId" : 5, "siteName" : "Cabin 3"
}
}
}
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileId | Number | The identifier for the new business hours. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be the identifier of an existing business hour profile. | The value of current setting before update. When tenant site creation, the value is None |
A successful PUT returns a 200 (OK) and the updated Site Business Hour Profile relationship.
PUT /api/v1/tenants/21375/sitebusinesshours/5 HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40873 Content-Length: 34
{
"businessHoursProfileId" : 2
}
SiteBusinessHoursMgmt Resource
Table of Contents
This resource shows the Business Hour Profile associated with the site. Included are links to the list of sites and DIDs that use this profile.
GET
View a single Business Hour Profile for Tenant HEAD
Get just the header response POST
Add an existing Business Hour Profile to the site. The site must currently be using the default profile.
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:businessHoursProfiles | Link to list of available business HoursProfile for the Tenant which can be assigned to the site. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
The business hours for the site. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 791
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5/businesshourmgmt"
},
"v1:businessHoursProfiles" : [ {
"href" : "/api/v1/tenants/21375/businesshours{?expand,filter}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/sitebusinesshours/5"
} ]
},
"count" : { "siteBusinessHours" : 1
},
"total" : { "siteBusinessHours" : 1
},
"_embedded" : { "siteBusinessHours" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/sitebusinesshours/5"
}
},
"businessHoursProfileId" : 2,
"siteId" : 5
} ]
}
}
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
businessHours ProfileId | Number | The business hours profile identifier. | Telco(Tenant BasicOrAdvance Management, SiteBasic OrAdvance Management), TenantAdmin | Profile must exist and the site must not have an assigned business hours. | None |
siteId | Number | The site’s identifier. | Telco(Tenant BasicOrAdvance Management, SiteBasic | The value is ignored. | None |
Path | Type | Description | Permission | Constraints | Default Value |
OrAdvance Management), TenantAdmin |
A successful POST returns a 201 (created) and the added Business Hour Profile
POST /api/v1/tenants/21375/staticsites/5/businesshourmgmt HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:37381 Content-Length: 50
{
"businessHoursProfileId" : 2,
"siteId" : 5
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/sitebusinesshours/5
Table of Contents
Properties Description
The SiteType resource provides the configuration information about each site type.
In order to access this resource, users with Telco User authority must have Site Management - View permission configured in WebAdmin.
GET
View Site Type Details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
GET
TenantAdmin User
GET
Path
Type
Description
Visibility
siteTypeId
Number
The unique identifier for this site type.
Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management)
Path
Type
Description
Visibility
siteTypeName
String
A user-specified value that denotes a type of (non-dynamic) site.
Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management)
defaultOption
Boolean
Indicates whether this site type is the default type when creating a new site for this tenant.
Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management)
Sample GET Response
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 185
{
"_links" : {
"self" : {
"href" : "/api/v1/serviceproviders/12/sitetypes/11"
}
},
"defaultOption" : true, "siteTypeId" : 11,
"siteTypeName" : "Backwoods Site"
}
Table of Contents
Modify List Request Description
This relation returns a list of configured site types associated with this tenant.
In order to view Site Type data, a Telco User must have Site Management - View permission configured in WebAdmin.
GET
View Site Types List HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
The SiteTypes list resource provides a list of SiteType resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Name | Description | Visibility | Expandable |
Each element of the siteType array represents a single site type resource, and indicates the site types’s name. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 682
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/serviceproviders/12/sitetypes"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/serviceproviders/12/sitetypes/{siteTypeId}", "templated" : true
} ]
},
"count" : { "siteType" : 1
},
"total" : { "siteType" : 1
},
"_embedded" : {
"siteType" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/serviceproviders/12/sitetypes/11"
}
},
"defaultOption" : true, "siteTypeId" : 11,
"siteTypeName" : "Backwoods Site"
} ]
}
}
This list does not support element creation.
System Announcement List Resource
Table of Contents
This relation returns a list of Announcement of system which could be used by all tenants.
GET
View list of Announcement of the system HEAD
Get just the header response POST
Add new Announcement for the system
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET |
The System Announcement list resource provides a list of Announcement resources of system in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:customAnnouncementFiles | Lists all existing custom announcement files. | Telco(SystemManagement) |
v1:defaultAnnouncementFiles | Lists all existing default announcement files. | Telco(SystemManagement) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the System Announcement list represents a single System Announcement which can be used by all teants. | Telco(SystemManagement, TenantBasicOrAdvance Management), Tenant Admin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 618
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/systemannouncements"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/announcements/{announcementId}", "templated" : true
} ]
},
"count" : { "announcement" : 1
},
"total" : { "announcement" : 1
},
"_embedded" : { "announcement" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
} ]
}
}
Use a POST request to add a new System Announcement.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the system announcement. | Telco(System Management) | Required. Max 50 chars. Allow alphanumeric character including underscore and space. Must be unique. | None |
fileName | String | The file name of the system announcement. | Telco(System Management) | Required. Max 50 chars. | None |
A successful POST returns a 201 (Created). A link to the newly added Announcement can be found in the Location field in the response header.
POST /api/v1/systemannouncements HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:35465
Content-Length: 63
{
"name" : "Comfort Tone", "fileName" : "comfortTone.wav"
}
HTTP/1.1 201 Created
Location: /api/v1/announcements/34
Table of Contents
The tenant resource represents a business which receives phone service from
silhouette.
While the complete configuration of a tenant is achieved through configuring multiple related and sub-resources, this resource provides configuration details about the tenant’s basic telephone service that the tenant’s own system administrators are typically invited to manage for themselves, such as the company-wide on-phone directory search method or the callpark location selection algorithm.
GET
View Tenant Details HEAD
Get just the header response PUT
Modify Tenant Details DELETE
Delete the Tenant
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
tenantId | Number | Unique identifier of the tenant | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
callparkLocation Algorithm | String | The algorithm that will be used to assign a Park Location when a call is parked | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
directorySearchType | String | The Directory Search algorithm used for on-phone directory lookups | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
tenantName | String | The tenant’s display name | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
Path | Type | Description | Visibility |
webLoginUrl | String | The tenant’s web login url in WebAdmin. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin |
defaultTimezone | String | The tenant’s default timezone. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
emergencyCallEmail Recipients | String | The tenant’s emergency call notification recipient email addresses. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
phoneMessageAlert Duration | Number | The duration is used to display message alert on phones. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
phoneMessageAlert Type | String | The Alert Type is used for phone messages sent to phones. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
deleting | Boolean | Indicate if the tenant is under deleting. Read Only. When a tenant is under deleting, this will be true and never go back to false, and there will be a runningTask created for the deletion work, please use the runningTask resource to check deleting progress details. | Telco(TenantBasicOr AdvanceManagement) |
Relation | Description | Visibility |
v1:accountCodes | Tenant Account Code configuration settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:tenantAnnouncements | Tenant Announcements of this tenant. | Telco(TenantBasicOrAdvance Management) |
v1:dids | List of DIDs provided to this tenant. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
Relation | Description | Visibility |
v1:dynamicSites | List of Dynamic Sites currently active for this tenant. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:extensions | List of provisioned extensions in this tenant. Currently shows only User and Location extensions. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:locations | List of Location (extensions) currently assigned within this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:phones | List of phones registered with this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:staticSites | List of sites belonging to this tenant. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:users | List of User (extensions) currently assigned within this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callGroups | List of Call Groups configured by this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:businessHoursProfiles | List of BusinessHours Profiles configured by this tenant. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:holidayHoursProfiles | List of HolidayHours Profiles configured by this tenant. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:keyProfiles | List of Key Profiles configured by this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:callPermissionProfiles | List of Call Permission Profiles configured by this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:acds | List of ACD (extensions) currently assigned within this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:autoAttendants | List of AutoAttendant (extensions) currently assigned within this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Relation | Description | Visibility |
v1:externalContacts | List of ExternalContact configured by this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:siteTypes | List of SiteTypes that available to this tenant. | Telco(TenantBasicOrAdvance Management, SiteBasicOrAdvance Management), TenantAdmin |
v1:defaultBusinessHours Profile | Link through which the default business hours for the tenant can be viewed and managed. | Telco(TenantBasicOrAdvance Management) |
v1:tenantPhoneModels | List of Phone Models available for this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:pinNotificationMethod | Link through which the PIN notification method can be viewed and managed. | Telco(TenantBasicOrAdvance Management) |
v1:presenceStatusBy Extension | A URI template indicating how to retrieve the Presence Status for a specific extension. Clients that know the extension of the account they’re seeking may use this URL to retrieve the resource instead of iterating over the list. Provided to requesters with User, Location or Scoped TelcoAdmin authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:parkLocationStatus | A URI template indicating how to retrieve the Park Location Status for a specific park location. Clients that know the park location of the account they’re seeking may use this URL to retrieve the resource instead of iterating over the list. Provided to requesters with User, Location or Scoped TelcoAdmin authority. | ScopedTelco(CallControl), Tenant Admin, User |
v1:tenantCrPlatformMgmt | Management of Call Recording platform configuration. | Telco(TenantBasicOrAdvance Management) |
v1:tenantEnterpriseMgmt | Management of Tenant Enterprise association. | Telco(TenantBasicOrAdvance Management) |
v1:phoneMacImports | Upload a *.csv file containing a list of phones' MAC addresses. | Telco(TenantBasicOrAdvance Management) |
Relation | Description | Visibility |
v1options:callparkLocation Algorithm | Acceptable values for the Call Park Location Algorithm setting. | all |
v1options:directorySearch Type | Acceptable values for the Directory Search Type setting. | all |
v1options:phoneMessageAlert Type | Acceptable values for the Phone Message Alert Type setting. | all |
v1options:phoneSite AssignmentType | Acceptable values for the Phone Site Assignment Type setting. | Telco(TenantBasicOrAdvance Management) |
v1:tenantLongDistance CarrierMgmt | Use this link to manage the long distance carrier associated with this Tenant. | Telco(TenantBasicOrAdvance Management) |
v1:tenantRegionalCarrier Mgmt | Use this link to manage the regional carrier associated with this Tenant. | Telco(TenantBasicOrAdvance Management) |
v1:tenantMitelRingTones | Use this link to manage the default Mitel Ring Tone settings of this Tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:runningTask | when a tenant is under deleting, this link can be used to query the running task. | Telco(TenantBasicOrAdvance Management) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
tenantAdminSettings | Contains tenant settings that are typically settable only by Telco Admin users. | Telco(TenantBasicOr AdvanceManagement) | n |
defaultSite | The tenant’s first site is considered to be their default site. Settings for this site may be used to resolve | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management) | n |
Name | Description | Visibility | Expandable |
operational information at runtime, such as timezone offsets. | |||
extensionRanges | Identifies the from-to ranges for each extension type. | Telco(TenantBasicOr AdvanceManagement) | n |
Each tenant has a default set of Business Hours. The DefaultBusinessHours Profile entity identifies this profile. | Telco(TenantBasicOr AdvanceManagement, SiteBasicOrAdvance Management), Tenant Admin | n | |
allocations | Defines the operating limits of the tenant’s phone service. | Telco(TenantBasicOr AdvanceManagement) | n |
Tenant Account Codes settings. This entity is present only if Account Codes have been enabled by the TelcoAdmin for this tenant. | Telco(TenantBasicOr AdvanceManagement) | n | |
enterprise | Tenant associated Enterprise. This entity is present only if an Enterprise is associated with this Tenant. | Telco(TenantBasicOr AdvanceManagement) | y |
Tenant Default Announcement settings for this tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
tenantCodecSet | Tenant CodecSet settings for this tenant. | Telco(TenantBasicOr AdvanceManagement) | n |
tenantSmdrSettings | Tenant SMDR settings for this tenant. | Telco(TenantBasicOr AdvanceManagement) | n |
longDistanceCarrier | The long distance carrier of the tenant. | Telco(TenantBasicOr AdvanceManagement) | n |
regionalCarrier | The regional carrier of the tenant. | Telco(TenantBasicOr AdvanceManagement) | n |
Name | Description | Visibility | Expandable |
when the tenant is under deleting, there will be a runningTask for the deletion which include progress and state details. | Telco(TenantBasicOr AdvanceManagement) | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 7110
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375"
},
"v1:accountCodes" : {
"href" : "/api/v1/tenants/21375/accountcodes"
},
"v1:acds" : {
"href" : "/api/v1/tenants/21375/acds{?expand,filter}", "templated" : true
},
"v1:autoAttendants" : {
"href" : "/api/v1/tenants/21375/autoattendants{?expand,filter}", "templated" : true
},
"v1:businessHoursProfiles" : {
"href" : "/api/v1/tenants/21375/businesshours{?expand,filter}", "templated" : true
},
"v1:callGroups" : {
"href" : "/api/v1/tenants/21375/callinggroups{?expand,filter}", "templated" : true
},
"v1:callPermissionProfiles" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles{?expand,filter}", "templated" : true
},
"v1:defaultBusinessHoursProfile" : {
"href" : "/api/v1/tenants/21375/defaultbusinesshours"
},
"v1:dids" : {
"href" : "/api/v1/tenants/21375/dids{?expand,filter,assigned}", "templated" : true
},
"v1:dynamicSites" : {
"href" : "/api/v1/tenants/21375/dynamicsites{?expand,filter}", "templated" : true
},
"v1:extensions" : {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
},
"v1:externalContacts" : {
"href" : "/api/v1/tenants/21375/externalcontacts{?expand,filter}",
"templated" : true
},
"v1:holidayHoursProfiles" : {
"href" : "/api/v1/tenants/21375/holidayhours{?expand,filter}", "templated" : true
},
"v1:keyProfiles" : {
"href" : "/api/v1/tenants/21375/keyprofiles{?expand,filter}", "templated" : true
},
"v1:locations" : {
"href" : "/api/v1/tenants/21375/locations{?expand,filter}", "templated" : true
},
"v1:parkLocationStatus" : {
"href" : "/api/v1/presencestatus/parklocationstatus/{accountId}", "templated" : true
},
"v1:phoneMacImports" : {
"href" : "/api/v1/tenants/21375/phonemacimports"
},
"v1:phones" : {
"href" : "/api/v1/tenants/21375/phones{?expand,filter,ext}", "templated" : true
},
"v1:pinNotificationMethod" : {
"href" : "/api/v1/tenants/21375/pinnotificationmethod"
},
"v1:presenceStatusByExtension" : {
"href" : "/api/v1/presencestatus/tenants/21375/extensions/{extension}", "templated" : true
},
"v1:siteTypes" : {
"href" : "/api/v1/serviceproviders/12/sitetypes{?filter}", "templated" : true
},
"v1:staticSites" : {
"href" : "/api/v1/tenants/21375/staticsites{?expand,filter,siteTypeId}", "templated" : true
},
"v1:tenantAnnouncements" : {
"href" : "/api/v1/tenants/21375/announcements{?expand,filter}", "templated" : true
},
"v1:tenantCrPlatformMgmt" : {
"href" : "/api/v1/tenants/21375/tenantcrplatforms{?expand}", "templated" : true
},
"v1:tenantEnterpriseMgmt" : {
"href" : "/api/v1/tenants/21375/enterprisemgmt{?expand}", "templated" : true
},
"v1:tenantLongDistanceCarrierMgmt" : {
"href" : "/api/v1/tenants/21375/longdistancecarriers"
},
"v1:tenantMitelRingTones" : {
"href" : "/api/v1/tenants/21375/mitelringtones"
},
"v1:tenantPhoneModels" : {
"href" : "/api/v1/tenants/21375/phonemodels{?expand,filter}", "templated" : true
},
"v1:tenantRegionalCarrierMgmt" : {
"href" : "/api/v1/tenants/21375/regionalcarriers"
},
"v1:users" : {
"href" : "/api/v1/tenants/21375/users{?expand,filter}", "templated" : true
},
"v1options:callparkLocationAlgorithm" : {
"href" : "/api/v1/enums/callparklocationalgorithm"
},
"v1options:directorySearchType" : {
"href" : "/api/v1/enums/directorysearchtype"
},
"v1options:phoneMessageAlertType" : {
"href" : "/api/v1/enums/phonemessagealerttype"
},
"v1options:phoneSiteAssignmentType" : {
"href" : "/api/v1/enums/phonesiteassignmenttype"
}
},
"callparkLocationAlgorithm" : "LowestAvailable", "defaultTimezone" : "US/Eastern",
"deleting" : false, "directorySearchType" : "Classic",
"emergencyCallEmailRecipients" : "[email protected],[email protected]", "phoneMessageAlertDuration" : 20,
"phoneMessageAlertType" : "Normal", "tenantId" : 21375,
"tenantName" : "Dave's Moose Hunting Supply", "webLoginUrl" : "/mooseByDave",
"_embedded" : { "enterprise" : {
"_links" : {
"self" : {
"href" : "/api/v1/enterprises/1"
}
},
"enterpriseId" : 1, "name" : "Enterprise One"
},
"regionalCarrier" : { "_links" : {
"self" : {
"href" : "/api/v1/carriers/102"
}
},
"carrierId" : 102,
"cic" : "2222",
"name" : "regionalProvider"
},
"extensionRanges" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/extranges"
}
}
},
"tenantSmdrSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/smdrsettings"
}
},
"dailyReport" : false, "monthlyReport" : false, "reportEmails" : "[email protected]", "segmentedSmdr" : false, "weeklyReport" : true
},
"tenantAdminSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/adminsettings"
}
}
},
"allocations" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/allocations"
}
}
},
"tenantCodecSet" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/tenantcodecset"
}
},
"codecSetId" : 6, "useSystemDefault" : false
},
"longDistanceCarrier" : { "_links" : {
"self" : {
"href" : "/api/v1/carriers/101"
}
},
"carrierId" : 101,
"cic" : "1111",
"name" : "LongDistanceProvider"
},
"tenantDefaultAnnouncement" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/defaultannouncement{?expand}", "templated" : true
}
},
"announcementId" : 2, "useSystemDefault" : false
},
"defaultBusinessHoursProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/defaultbusinesshours"
}
},
"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"
},
"accountCodes" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/accountcodes"
}
}
},
"defaultSite" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/staticsites/5"
}
},
"siteId" : 5, "siteName" : "Cabin 3"
}
}
}
Use a PUT request to modify the tenant’s business service settings.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
callparkLocation Algorithm | String | Call Park Location Selection Algorithm: LongestIdle or LowestAvailable. | Telco(TenantBasic Management), TenantAdmin | Enumerated type. See the callpark LocationAlgorithm options for possible values. |
directorySearch Type | String | On-phone Directory Search algorithm: Classic or Predictive. | Telco(TenantBasic Management), TenantAdmin | Enumerated type. See the directory SearchType options for possible values. |
tenantName | String | The tenant’s display name. | Telco(TenantBasic Management), TenantAdmin | Max length is 50 chars. |
defaultTimezone | String | The tenant’s default timezone. | Telco(Tenant Advance Management), TenantAdmin | Must be a valid timezone name. |
phoneMessage AlertType | String | The Alert Type is used when instant message is sent to phone. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Enumerated type. See the phone MessageAlertType options for possible values. |
phoneMessage AlertDuration | Number | The Alert Duration is used when instant message is sent to phone. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Number between 1 and 60. |
emergencyCall EmailRecipients | String | The tenant’s emergency call notification recipient email addresses. | Telco(TenantBasic Management), TenantAdmin | Must be one or more valid email addresses, if more than one email addresses, should be delimited by spaces, semi-colons or comma. |
PUT /api/v1/tenants/21375 HTTP/1.1
Content-Type: application/json; charset=UTF-8 Host: localhost:40873
Content-Length: 316
{
"tenantName" : "Dave's Moose Hunting Supply", "defaultTimezone" : "US/Eastern", "directorySearchType" : "Classic", "callparkLocationAlgorithm" : "LowestAvailable",
"emergencyCallEmailRecipients" : "[email protected],[email protected]", "phoneMessageAlertType" : "Splash",
"phoneMessageAlertDuration" : 10
}
The PUT response contains the newly updated resource in the same format as the GET response, above.
Use a DELETE request to delete the tenant, will get 202 Accepted if success, and a runningTask will be created for the deletion. The runningTask link and detail will be in the response. Client can query runningTask to check the deletion progress and state. After tenant deletion finish, GET request on the tenant or runningTask will get 404 not found.
Path | Type | Description | Visibility |
runningTaskId | Number | Unique identifier of the running task | Telco(TenantBasicOr AdvanceManagement) |
Relation | Description | Visibility |
v1:runningTask | The running task of the deleting tenant. | Telco(TenantBasicOrAdvance Management) |
Name | Description | Visibility | Expandable |
The tenant which is being deleted. | Telco(TenantBasicOr AdvanceManagement) | n |
HTTP/1.1 202 Accepted
Content-Type: application/hal+json Content-Length: 848
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}",
"name" : "v1", "templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375"
},
"v1:runningTask" : {
"href" : "/api/v1/runningtasks/18"
}
},
"runningTaskId" : 18, "_embedded" : {
"runningTask" : { "_links" : {
"self" : {
"href" : "/api/v1/runningtasks/18"
}
},
"createdTime" : "2022-12-01T14:55:51",
"progress" : 0,
"runningTaskId" : 18, "runningTaskState" : "Created",
"runningTaskStateDetail" : "Task Initialized.", "runningTaskType" : "TenantDelete",
"targetId" : 21375,
"updatedTime" : "2022-12-01T14:55:51"
}
}
}
Tenant Announcement List Resource
Table of Contents
This relation returns a list of Announcements for the tenant. Audio files are uploaded via CustomAnnouncement File. The association between files and tenants is managed through this resource.
GET
View list of Announcements associate with this tenant HEAD
Get just the header response POST
Associate list of custom Announcements with this tenant
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET |
The Tenant Announcement list resource provides a list of Announcement resources associate with this tenant in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:customAnnouncementFiles | Lists all existing custom announcement files. | Telco(SystemManagement) |
v1:defaultAnnouncementFiles | Lists all existing default announcement files. | Telco(SystemManagement) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the Tenant Announcement list represents a single Announcement belongs to this tenant. | Telco(SystemManagement, TenantBasicOrAdvance Management), Tenant Admin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 920
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/announcements"
},
"v1:customAnnouncementFiles" : [ {
"href" : "/api/v1/customannouncementfiles/{langCode}{?filter}", "templated" : true
} ],
"v1:defaultAnnouncementFiles" : [ {
"href" : "/api/v1/defaultannouncementfiles/{langCode}{?filter}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/announcements/{announcementId}", "templated" : true
} ]
},
"count" : { "announcement" : 1
},
"total" : { "announcement" : 1
},
"_embedded" : { "announcement" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/announcements/18"
}
},
"announcementId" : 18, "name" : "Company Greeting"
} ]
}
}
Use a POST request to add a new Announcement for this tenant.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
name | String | The name of the tenant announcement. | Telco(System Management) | Required. Max 50 chars. Allow alphanumeric character including underscore and space. Must be unique. | None |
fileName | String | The file name of the tenant announcement. | Telco(System Management) | Required. Max 50 chars. | None |
A successful POST returns a 201 (Created). A link to the newly added Announcement can be found in the Location field in the response header.
POST /api/v1/tenants/21375/announcements HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:42451
Content-Length: 71
{
"name" : "Company Greeting", "fileName" : "companyGreeting.wav"
}
HTTP/1.1 201 Created
Location: /api/v1/announcements/34
Tenant Default Announcement Resource
Table of Contents
The TenantDefaultAnnouncement resource describes current setting of a Announcement which is being set as the tenant’s default announcement. The default announcement of a tenant could be a System Announcement or a Tenant
Announcement of this tenant. The specified tenant default announcement will be used when announcement of User or Location or CallGroup queue settings are is set to use tenant default.
GET
View Tenant Default Announcement Settings HEAD
Get just the header response PUT
Modify the Tenant Default Announcement Settings
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
useSystemDefault | Boolean | Indicates whether use the default system announcement as default announcement of this tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
announcementId | Number | ID of the announcement being set as default announcement of this tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:systemAnnouncements | Acceptable announcement values from System Announcement. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:defaultSystem Announcement | Current setting of Default System Announcement. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:tenantAnnouncements | Acceptable announcement values from Tenant Announcement of this tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The announcement which is currently used as the default announcement of this tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 869
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/defaultannouncement"
},
"v1:defaultSystemAnnouncement" : {
"href" : "/api/v1/defaultsystemannouncement{?expand}", "templated" : true
},
"v1:systemAnnouncements" : {
"href" : "/api/v1/systemannouncements{?expand,filter}", "templated" : true
},
"v1:tenantAnnouncements" : {
"href" : "/api/v1/tenants/21375/announcements{?expand,filter}", "templated" : true
}
},
"announcementId" : 2, "useSystemDefault" : false, "_embedded" : {
"announcement" : { "_links" : {
"self" : {
"href" : "/api/v1/announcements/2"
}
},
"announcementId" : 2, "name" : "Comfort Tone"
}
}
}
Use a PUT request to modify the setting of TenantDefaultAnnouncement.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
useSystem Default | Boolean | Indicates using system default announcement as the tenant default announcement. If this set to true, then the 'announcement Id' will be ignored if provided in request. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional | false |
announcement Id | Number | Indicates using the specified announcement as the tenant default announcement. The value could be a ID of system announcement or tenant announcement of the same tenant. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional, must be a valid ID of system announcement or tenant announcement from same tenant. | n/a |
PUT /api/v1/tenants/21375/defaultannouncement HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:40873 Content-Length: 56
{
"useSystemDefault" : false, "announcementId" : 2
}
TenantMitelRingTones Resource
Table of Contents
The TenantMitelRingTones resource provides the default Mitel ring tone settings of the Tenant.
GET | View Tenant Mitel Ring Tone Settings |
HEAD | Get just the header response |
PUT | Modify the Tenant Mitel Ring Tone Settings |
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
Path | Type | Description | Visibility |
internalDirectRing Tone | String | Indicates the default Internal Direct Call Ring Tone Type is currently selected for this Tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
internalGroupRing Tone | String | Indicates the default Internal Group Call Ring Tone Type is currently selected for this Tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
externalDirectRing Tone | String | Indicates the default External Direct Call Ring Tone Type is currently selected for this Tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
externalGroupRing Tone | String | Indicates the default External Group Call Ring Tone Type is currently selected for this Tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Relation | Description | Visibility |
v1options:mitelRingToneType | Acceptable values for the Mitel Ring Tone Type setting. | all |
v1:mitelRingToneTest | Test the Mitel Ring Tone on user or location’s phone. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 714
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/mitelringtones"
},
"v1:mitelRingToneTest" : {
"href" : "/api/v1/tenants/21375/users/{extension}/mitelringtonetest", "templated" : true
},
"v1options:mitelRingToneType" : {
"href" : "/api/v1/enums/mitelringtonetype"
}
},
"externalDirectRingTone" : "RingTone9", "externalGroupRingTone" : "Silent", "internalDirectRingTone" : "DeviceDefault", "internalGroupRingTone" : "RingTone1"
}
Use a PUT request to modify the default Mitel Ring Tone settings of the Tenant.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
internal DirectRing Tone | String | Internal Direct Call Ring Tone type, possible values are: DeviceDefault, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional | If not provided, will keep the current setting unchanged. |
internalGroup RingTone | String | Internal Group Call Ring Tone type, possible values are: DeviceDefault, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional | If not provided, will keep the current setting unchanged |
Path | Type | Description | Permission | Constraints | Default Value |
external DirectRing Tone | String | External Direct Call Ring Tone type, possible values are: DeviceDefault, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional | If not provided, will keep the current setting unchanged |
externalGroup RingTone | String | External Group Call Ring Tone type, possible values are: DeviceDefault, RingTone1, RingTone2, RingTone3, RingTone4, RingTone5, RingTone6, RingTone7, RingTone8, RingTone9 or Silent. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional | If not provided, will keep the current setting unchanged |
PUT /api/v1/tenants/21375/mitelringtones HTTP/1.1 Content-Type: application/json; charset=UTF-8 Content-Length: 169
{
"internalDirectRingTone" : "DeviceDefault", "internalGroupRingTone" : "RingTone1", "externalDirectRingTone" : "RingTone9", "externalGroupRingTone" : "Silent"
}
Table of Contents
Sample GET Response Description
The TenantPhoneModel resource provides information about a supported Phone Model of the tenant.
Deleting a TenantPhoneModel is supported only for Telco User.
GET
View TenantPhoneModel Details HEAD
Get just the header response DELETE
Remove TenantPhoneModel from the Tenant
Permitted Authorities (as defined in API Guide)
Telco User
GET, DELETE
TenantAdmin User
GET
Non-admin User
GET
Location
GET
Path
Type
Description
Visibility
phoneModelId
Number
Unique system identifier of a phone model.
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
phoneModelName
String
Unique name of a phone model
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
description
String
Description of a phone model
Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 192
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/phonemodels/11"
}
},
"description" : "Mitel 5340 IP Phone", "phoneModelId" : 11,
"phoneModelName" : "MN5340"
}
TenantPhoneModel List Resource
Table of Contents
This relation returns a list of available TenantPhoneModel of the tenant.
GET
View list of TenantPhoneModel HEAD
Get just the header response POST
Add a TenantPhoneModel to the Tenant.
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET |
Non-admin User | GET |
Location | GET |
The TenantPhoneModel list resource provides a list of TenantPhoneModel resources.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:serviceProviderPhone Models | List of available service provider phone models. | Telco(TenantBasicOrAdvance Management) |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the tenantPhoneModel array represents a single Tenant PhoneModel resource. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 850
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/phonemodels"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/phonemodels/{phoneModelId}", "templated" : true
} ],
"v1:serviceProviderPhoneModels" : [ {
"href" : "/api/v1/serviceproviders/12/phonemodels{?filter}", "templated" : true
} ]
},
"count" : { "tenantPhoneModel" : 1
},
"total" : { "tenantPhoneModel" : 1
},
"_embedded" : { "tenantPhoneModel" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/phonemodels/11"
}
},
"description" : "Mitel 5340 IP Phone", "phoneModelId" : 11,
"phoneModelName" : "MN5340"
} ]
}
}
Use a POST request to add a Tenant Phone Model to the Tenant. (Telco User only)
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
phoneModelId | Number | The phoneModel | Telco( | Required. Must | None |
Id of the Service | TenantBasic | be the phone | |||
ProviderPhone | Management) | ModelId of a valid | |||
Model which is | and enabled | ||||
being add to the | ServiceProvider | ||||
tenant phone | PhoneModel of | ||||
models. | service provider | ||||
which associated | |||||
with the Tenant; | |||||
and can not be | |||||
an exist phone | |||||
model of the | |||||
Tenant. |
A successful POST returns a 201 (Created). A link to the newly added TenantPhoneModel can be found in the Location field in the response header.
POST /api/v1/tenants/21375/phonemodels HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:40873
Content-Length: 25
{
"phoneModelId" : 11
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/phonemodels/11
Table of Contents
The Twinning resource provides the ability to view the User’s Twinning configuration.
If Twinning permission has not been enabled for this user, querying this resource will return a 404 Error Response with an application error code of FeatureNotEnabled.
The Call Twinning feature is not supported for locations.
GET
View User Twinning configuration HEAD
Get just the header response PUT
Modify User Twinning configuration
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin | GET, PUT |
User | GET, PUT |
Path | Type | Description | Visibility |
active | Boolean | Indicates whether Call Twinning to an external number is currently active for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
groupTwinningActive | Boolean | Indicates whether Group Call Twinning to the twinning target number is currently active for this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
maxSimultaneousCalls | Number | Indicates the maximum number of concurrent calls that can be sent to the Twinning target. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
targetNumber | String | Indicates the target external number to which calls to this user’s extension are twinned, when the feature is active. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 217
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/twinning"
}
},
"active" : true, "groupTwinningActive" : false, "maxSimultaneousCalls" : 2,
"targetNumber" : "6135554343"
}
Use a PUT request with the following properties in the payload to modify user Twinning configuration.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
active | Boolean | Indicates whether Call Twinning to an external nubmer is currently active for this user. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
groupTwinning Active | Boolean | Indicates whether Group Call Twinning to the twinning target number is currently active for this user. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
maxSimultaneous Calls | Number | Indicates the maximum number of concurrent calls that can be sent to the Twinning target. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
targetNumber | String | Indicates the target external number to which calls to this user’s extension are twinned, when the feature is active. | Telco(Tenant BasicOrAdvance Management), TenantAdmin, User | Optional |
PUT /api/v1/tenants/21375/users/4332/twinning HTTP/1.1 Content-Type: application/json; charset=UTF-8
Content-Length: 114
{
"active" : true, "groupTwinningActive" : true, "targetNumber" : "76543210",
"maxSimultaneousCalls" : 3
}
Table of Contents
Each User resource provides the personally-modifiable information about a User, meaning settings that do not require Admin privileges to modify.
Further information about the user is available through embedded representations and by following the linked relations in the response.
GET
View User Details HEAD
Get just the header response PUT
Modify User Details DELETE
Remove the User
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
TenantAdmin User | GET, PUT, DELETE |
User | GET, PUT (self only) |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
accountId | String | The user’s Account Identifier, required for subscribing to events and managing calls through the API. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
emailAddress | String | The user’s email address. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
extension | String | The user’s extension. The extension serves as the unique identifier of a user within a tenant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
firstName | String | The user’s first name. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
Path | Type | Description | Visibility |
lastName | String | The user’s last name. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
homePhone | String | The user’s home phone number. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
mobilePhone | String | The user’s mobile phone number. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
language | String | The user’s language, as a two-character code. This setting manages the user’s phone language and WebAdmin language. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
nameAnnouncement Recorded | Boolean | Indicates whether the user has recorded the Name Announcement for the Auto Attendant. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
subscriberId | Number | A unique identifier for the user. This value is provided for legacy system interoperability purposes. New applications should avoid using it. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
creationTimestamp | String | Creation timestamp of this user. It’s read-only and displayed in the format of 'yyyy-MM-dd HH:mm:ss.SS SXXX'. It presents only for a newly added user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User |
deleting | Boolean | Indicate if the user is under deleting. Read Only. When a user is under deleting, this will be true and never go back to false, and there will be a runningTask created for the deletion work, please use the runningTask resource to check deleting progress details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:userPhones | This is deprecated. Details about the phone(s) that the user is logged into, including the default Click-to-Call device, and default Intercom device. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:polycomRingTones | Details about the Polycom ring tone settings of the user. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:mitelRingTones | Details about the Mitel ring tone settings of the user. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:memberCallGroupMgmt | All call groups of which the user is a member. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:monitoredByExtensions | Extensions that are monitoring this user’s phone. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:monitoringExtensions | Extensions that this user is monitoring. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:memberKeyProfileMgmt | key profile management. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:personalKeyMappings | personal key mapping management. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:personalContacts | personal contacts management. | User |
v1:userCallPermission Profile | call permission profile management. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:myPhones | My phones management. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:scrRules | Selective Call Routing rules management. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:pin | Subscriber PIN management | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Relation | Description | Visibility |
v1:resetPin | Allows admins to reset subscriber PINs | Telco(TenantBasicOrAdvance Management), TenantAdmin |
v1:personalVoicemail Settings | Personal vociemail settings. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:personalVoicemailPin Reset | Link can be used to do POST request for setting new voicemail PIN. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:userDynamicSite | Link can be used to query, create or release user dynamic site. Onky visible when the Dynamic Site Setting is enabled for the User. | Telco(TenantBasicOrAdvance Management), User |
v1:languages | Supported languages of system which can be used for User language setting. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:runningTask | when a user is under deleting, this link can be used to query the running task. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Name | Description | Visibility | Expandable |
Contains those settings generally provisionable only by a Telco or Tenant Admin user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Contains those feature settings generally provisionable only by a Telco or Tenant Admin user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
The AnnouncementSetting of this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y | |
Contains status information for all Service and Calling Features. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
Name | Description | Visibility | Expandable |
If the user currently has an active Dynamic Site, this representation describes that site. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
If the user has a Key Profile, this representation identifies it. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
The CallPermissionProfile assigned to this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
The NameAnnouncement of this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
voicemailBox | The allocated voicemail box of this user. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
Logged in Phone(s) for this user. Include flags to indicate user’s default Click-to-Call phone and Intercom phone. If the user is not logged into any phone, this representation will not be present in the query response. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y | |
when the user is under deleting, there will be a runningTask for the deletion which include progress and state details. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 5121
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332"
},
"v1:languages" : {
"href" : "/api/v1/languages{?filter}", "templated" : true
},
"v1:memberCallGroupMgmt" : {
"href" : "/api/v1/tenants/21375/users/4332/callinggroups{?expand,filter}", "templated" : true
},
"v1:memberKeyProfileMgmt" : {
"href" : "/api/v1/tenants/21375/users/4332/keyprofile"
},
"v1:mitelRingTones" : {
"href" : "/api/v1/tenants/21375/users/4332/mitelringtones"
},
"v1:monitoredByExtensions" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoredbyextensions{?expand,filter}", "templated" : true
},
"v1:monitoringExtensions" : {
"href" : "/api/v1/tenants/21375/users/4332/monitoringextensions{?expand,filter}", "templated" : true
},
"v1:myPhones" : {
"href" : "/api/v1/tenants/21375/users/4332/myphones{?expand,filter}", "templated" : true
},
"v1:personalContacts" : {
"href" : "/api/v1/tenants/21375/users/4332/personalcontacts{?expand,filter}", "templated" : true
},
"v1:personalKeyMappings" : {
"href" : "/api/v1/tenants/21375/users/4332/personalkeymappings{?expand,filter}", "templated" : true
},
"v1:personalVoicemailPinReset" : {
"href" : "/api/v1/tenants/21375/users/4332/voicemailpinreset"
},
"v1:personalVoicemailSettings" : {
"href" : "/api/v1/tenants/21375/users/4332/voicemailsettings"
},
"v1:pin" : {
"href" : "/api/v1/tenants/21375/users/4332/pin"
},
"v1:polycomRingTones" : {
"href" : "/api/v1/tenants/21375/users/4332/polycomringtones"
},
"v1:resetPin" : {
"href" : "/api/v1/tenants/21375/users/4332/resetpin"
},
"v1:scrRules" : {
"href" : "/api/v1/tenants/21375/users/4332/scrrules{?expand,filter}", "templated" : true
},
"v1:userCallPermissionProfile" : {
"href" : "/api/v1/tenants/21375/users/4332/callpermissionprofile"
},
"v1:userDynamicSite" : {
"href" : "/api/v1/tenants/21375/users/4332/dynamicsite"
},
"v1:userPhones" : {
"href" : "/api/v1/tenants/21375/users/4332/phones{?expand,filter}", "templated" : true
}
},
"accountId" : "4332@21375",
"creationTimestamp" : "2022-12-01 14:55:11.789-05:00",
"deleting" : false,
"emailAddress" : "[email protected]", "extension" : "4332",
"firstName" : "Dave", "homePhone" : "613-555-1212",
"language" : "en",
"lastName" : "Smith", "mobilePhone" : "613-555-2121", "nameAnnouncementRecorded" : true, "subscriberId" : 156,
"_embedded" : { "nameAnnouncement" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/nameannouncement"
}
},
"nameAnnouncementRecorded" : true
},
"keyProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/keyprofiles/10"
}
},
"keyProfileId" : 10,
"keyProfileName" : "Corporate Speed Dial Keys"
},
"features" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/features"
}
}
},
"featureSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/featuresettings"
}
}
},
"dynamicSite" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dynamicsites/44"
}
},
"siteId" : 44,
"siteName" : "DS4332: Dynamic Site for user 4332"
},
"callPermissionProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116"
}
},
"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"
},
"announcementSetting" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/announcementsetting"
}
},
"announcementId" : 2, "useDefault" : false
},
"myPhone" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/myphones/546"
}
},
"defaultC2CPhone" : true, "defaultIntercomPhone" : true, "identifier" : "08000f6e6799", "phoneId" : 546,
"phoneModelName" : "Mitel 5330 IP Phone", "userLabel" : "Desk Phone"
},
"adminSettings" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/adminsettings"
}
}
},
"voicemailBox" : { "_links" : {
"self" : {
"href" : "/api/v1/voicemailservers/101/voicemailboxes/22"
}
},
"releaseDate" : "12/1/22, 2:55 p.m.", "voicemailBoxAccount" : "23380500049100",
"voicemailBoxId" : 22, "voicemailBoxState" : "Released"
}
}
}
Use a PUT request to modify the properties of a User.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
lastName | String | The last name of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Max 50 chars. |
firstName | String | The first name of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Max 50 chars. |
Path | Type | Description | Permission | Constraints |
emailAddress | String | The email address of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required only if the system email PIN notification turned on. Must be a valid email address. |
homePhone | String | The home phone number of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Must be a valid phone number. |
mobilePhone | String | The mobile phone number of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Must be a valid phone number. |
language | String | The prefer phone language of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If provided and changing the current value, the new value must be a supported and enabled language in system. |
PUT /api/v1/tenants/21375/users/4332 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463
Content-Length: 188
{
"language" : "en",
"firstName" : "Dave",
"lastName" : "Smith", "mobilePhone" : "613-555-2121",
"homePhone" : "613-555-1212",
"emailAddress" : "[email protected]"
}
Sample PUT Response Same as "GET response" Delete Request
Use a DELETE request to delete the user, will get 202 Accepted if success, and a runningTask will be created for the deletion. The runningTask link and detail will be in the response. Client can query runningTask to check the deletion progress and state. After user deletion task is completed, GET request on the user or runningTask will get 404 not found.
Path | Type | Description | Visibility |
runningTaskId | Number | Unique identifier of the running task | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:runningTask | The running task of the deleting subscriber. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Name | Description | Visibility | Expandable |
The subscriber which is being deleted. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | n |
HTTP/1.1 202 Accepted
Content-Type: application/hal+json Content-Length: 861
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
}, {
"href" : "/api/v1options/rels/{rel}", "name" : "v1options",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users/4332"
},
"v1:runningTask" : {
"href" : "/api/v1/runningtasks/19"
}
},
"runningTaskId" : 19, "_embedded" : {
"runningTask" : { "_links" : {
"self" : {
"href" : "/api/v1/runningtasks/19"
}
},
"createdTime" : "2022-12-01T14:55:13",
"progress" : 0,
"runningTaskId" : 19, "runningTaskState" : "Created",
"runningTaskStateDetail" : "Task Initialized.", "runningTaskType" : "SubscriberDelete", "targetId" : 156,
"updatedTime" : "2022-12-01T14:55:13"
}
}
}
Table of Contents
This relation returns a list of configured Users within the tenant.
GET
View User List HEAD
Get just the header response POST
Add new User
Permitted Authorities (as defined in API Guide)
Telco User | GET, POST |
TenantAdmin User | GET, POST |
The User list resource provides a list of User resources in summarized form.
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
v1:languages | Supported languages of system which can be used for User language setting. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
v1:extensions | List of existing extensions of the tenant. This is useful to find the a not used extension if the client want specify one. | Telco(TenantBasicOrAdvance Management), TenantAdmin, User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the user array represents a single user resource, and indicates the user’s name, extension and call control accountId. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 968
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/tenants/21375/users"
},
"v1:extensions" : [ {
"href" : "/api/v1/tenants/21375/extensions{?expand,filter,extensionType,agent}", "templated" : true
} ],
"v1:itemTemplate" : [ {
"href" : "/api/v1/tenants/21375/users/{extension}", "templated" : true
} ],
"v1:languages" : [ {
"href" : "/api/v1/languages{?filter}", "templated" : true
} ]
},
"count" : {
"user" : 1
},
"total" : {
"user" : 1
},
"_embedded" : {
"user" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332"
}
},
"accountId" : "4332@21375", "deleting" : false, "extension" : "4332",
"firstName" : "Dave",
"lastName" : "Smith", "subscriberId" : 156
} ]
}
}
Use a POST request to add a new User.
The following properties are processed as part of the POST request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation.
Path | Type | Description | Permission | Constraints | Default Value |
lastName | String | The last name of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required. Max 50 chars. | None |
firstName | String | The first name of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Max 50 chars. | None |
emailAddress | String | The email address of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Required only if the system email PIN notification turned on. Must be a valid email address. | None |
homePhone | String | The home phone number of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Must be a valid phone number. | None |
mobilePhone | String | The mobile phone number of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Must be a valid phone number. | None |
language | String | The prefer phone language of the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. Must be a supported and enabled language in system. | en |
Path | Type | Description | Permission | Constraints | Default Value |
extension | String | The extension to be used for the User. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Optional. If specified, it must be a valid extension for a User and not be in use. | Next unused value in range. (Same range shared by User, Location and ACD) |
A successful POST returns a 201 (Created). A link to the newly added User can be found in the Location field in the response header.
POST /api/v1/tenants/21375/users HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463
Content-Length: 212
{
"extension" : "4332",
"language" : "en",
"firstName" : "Dave",
"lastName" : "Smith", "mobilePhone" : "613-555-2121",
"homePhone" : "613-555-1212",
"emailAddress" : "[email protected]"
}
HTTP/1.1 201 Created
Location: /api/v1/tenants/21375/users/4332
UserCallPermissionProfile Resource
Table of Contents
The UserCallPermissionProfile resource provides information about the assigned call permission profile of the User or Location.
GET
View User or Location Call Permission Profile setting HEAD
Get just the header response PUT
Modify User or Location Call Permission Profile setting.
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT |
TenantAdmin User | GET, PUT |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
callPermission ProfileId | Number | Identifier the call permission profile currently associated with the User or Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin |
Relation | Description | Visibility |
v1:callPermissionProfiles | List of call permission profiles for the tenant. | Telco(TenantBasicOrAdvance Management), TenantAdmin |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The CallPermissionProfile currently associated with the User or Location. | Telco(TenantBasicOr AdvanceManagement), TenantAdmin | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 672
{
"_links" : {
"curies" : {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
},
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/callpermissionprofile"
},
"v1:callPermissionProfiles" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles{?expand,filter}", "templated" : true
}
},
"callPermissionProfileId" : 116, "_embedded" : {
"callPermissionProfile" : { "_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/callpermissionprofiles/116"
}
},
"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"
}
}
}
Use a PUT request to modify the User or Location Call Permission Profile setting.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
The Default Value column indicates the default value that will be assigned to the property during resource creation. During update, only those values provided in the request payload will be updated unless otherwise noted.
Path | Type | Description | Permission | Constraints | Default Value |
call Permission ProfileId | Number | Identifier of the call permission profile going to associate with the User or Location. | Telco(Tenant BasicOrAdvance Management), TenantAdmin | Must be a valid call permission profile identifier of the tenant, could be the ' Unassigned' call permission profile. | n/a |
PUT /api/v1/tenants/21375/users/4332/callpermissionprofile HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 37
{
"callPermissionProfileId" : 116
}
Table of Contents
The UserDynamicSite resource provides the ability to view, create or release the User’s Dynamic Site.
If Dynamic Site permission has not been enabled for this user, querying this resource will return a 404 Error Response with an application error code of FeatureNotEnabled. PUT request can be used to create or update the User’s Dynamic Site if the Dynamic Site permission is enabled. DELETE is supported for release(remove) User’s Dynamic Site.
GET
View User Dynamic Site HEAD
Get just the header response PUT
Create or Update User’s Dynamic Site DELETE
Release(remove) User’s Dynamic Site
Permitted Authorities (as defined in API Guide)
Telco User | GET, PUT, DELETE |
User | GET, PUT, DELETE |
Parameter | Description | Constraints |
expand | This parameter can be used to include more detail data of resource or embedded resource to reduce round trip(using multiple request) to get requested information. | Optional, see details at Expand Support . |
Path | Type | Description | Visibility |
ipAddress | String | The User’s Dynamic Site IP address. | Telco(TenantBasicOr AdvanceManagement), User |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
Name | Description | Visibility | Expandable |
The user’s current active Dynamic Site. | Telco(TenantBasicOr AdvanceManagement) | y |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 381
{
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/users/4332/dynamicsite"
}
},
"ipAddress" : "10.150.155.1",
"_embedded" : { "dynamicSite" : {
"_links" : {
"self" : {
"href" : "/api/v1/tenants/21375/dynamicsites/44"
}
},
"siteId" : 44,
"siteName" : "DS4332: Dynamic Site for user 4332"
}
}
}
Use a PUT request to create or update the User’s Dynamic Site.
The following properties are processed as part of the PUT request. Any other content in the payload is ignored. This includes other properties that may be part of the GET response: if they are not documented here, they are ignored by the server if they are included as part of this request.
Path | Type | Description | Permission | Constraints |
ipAddress | String | The IP address which | Telco(Tenant | Only used for |
going to be used | BasicOrAdvance | privilege client, | ||
as DynamicSite IP | Management), User | must be a valid IP | ||
address. Only used | Address. If the IP | |||
for privilege client. | address is same | |||
For public client will | as current Dynamic | |||
use the IP address | Site IP address, no | |||
where the request | change will happen. | |||
come from. |
PUT /api/v1/tenants/21375/users/4332/dynamicsite HTTP/1.1 Content-Type: application/json; charset=UTF-8
Host: localhost:45463 Content-Length: 34
{
"ipAddress" : "10.150.155.1"
}
Table of Contents
Description Description
The UserPhones resource is obsolete. It is being replaced by the My Phones List resource. Clients should use that resource over this one.
Table of Contents
Sample GET Response Description
The VoicemailLanguage resource provides information about a supported Voicemail Language.
GET
View VoicemailLanguage Details HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User
GET
TenantAdmin User
GET
User
GET
Path
Type
Description
Visibility
langCode
String
The ISO-639-1 language code of the supported Voicemail Language.
Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin, User
Path
Type
Description
Visibility
description
String
The description of the supported Voicemail Language, usually is the language name.
Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin, User
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 133
{
"_links" : {
"self" : {
"href" : "/api/v1/vmlanguages/en"
}
},
"description" : "English", "langCode" : "en"
}
VoicemailLanguage List Resource
Table of Contents
This relation returns a list of supported VoicemailLanguage of the system.
GET
View list of VoicemailLanguages HEAD
Get just the header response
Permitted Authorities (as defined in API Guide)
Telco User | GET |
TenantAdmin User | GET |
User | GET |
The VoicemailLanguage list resource provides a list of VoicemailLanguage resources.
Parameter | Description | Constraints |
filter | This parameter can be used to filter list result. Multiple filter parameter can be provided in same request, | Optional, see details at |
Parameter | Description | Constraints |
and the result will be filtered by all filters based on the provided order in rhe query parameter. |
Relation | Description | Visibility |
v1:itemTemplate | A URL template indicating how to retrieve a specific element of the list. Clients that know the unique identifier of the item they are seeking can use this URL to retrieve it, instead of iterating over the list. | same as item resource permission |
Embedded resources marked as 'expandable' in this table can be expanded in the GET response to this resource by including the ?expand=<resourceName> query
parameter. Nested elements may be recursively expanded using dot-notation to specify
child elements of other expandable resources. See more details at Expand Support.
The generic term 'item' can be used as the resourceName to achieve first-level expansion of the list elements, and the term 'all' can be used to expand the resource and all its child elements (one level deep).
Name | Description | Visibility | Expandable |
Each element of the VoicemailLanguage list represents a single supported Voicemail Language of the system. | Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin, User | n |
HTTP/1.1 200 OK
Content-Type: application/hal+json Content-Length: 594
{
"_links" : {
"curies" : [ {
"href" : "/api/v1/rels/{rel}", "name" : "v1",
"templated" : true
} ],
"self" : {
"href" : "/api/v1/vmlanguages"
},
"v1:itemTemplate" : [ {
"href" : "/api/v1/vmlanguages/{langCode}", "templated" : true
} ]
},
"count" : { "vmLanguage" : 1
},
"total" : { "vmLanguage" : 1
},
"_embedded" : {
"vmLanguage" : [ {
"_links" : {
"self" : {
"href" : "/api/v1/vmlanguages/en"
}
},
"description" : "English", "langCode" : "en"
} ]
}
}
The following is a sample high-level design for an application that uses the API.
If application is going to register for events
Obtain a link for the WebSocket from /api
Obtain the tenantId from /api
Create a WebSocket.
Create Subscription Set(s) .
Register with the WebSocket for event handling
Subscribe for events.
Handle WebSocket closures (attempt re-open, for example)
Generate keep alive messages (3rd party framework may provide this, WebSocket4Net does)
If tracking call states, determine the call state based on events received, rather than requests made.
Realize that some call commands might fail as a result of race conditions, for example, Release call fails if the far end hangs up first.
Error responses from the silhouette API have the following format:
{
"_links": {
"about": {
"href": "/api/v1/tenants/4444"
}
},
"errorCode": "ResourceNotFound", "httpCode": 404, "localizedUserMessage": {
"key": "generic_url_not_found",
"renderedMessage": "Requested resource not found."
}
}
Property Name | Description |
Link: about | The error response includes an href value that identifies the URI that the (failed) request was issued against. |
httpCode | The HTTP status code (number portion only) is included in the body of the error response. |
errorCode | The silhouette error code is an application-defined |
localizedUserMessage | The localizedUserMessage is an object defining an error string that a client application can present to their end user. It has three potential parts:
|
Property Name | Description |
developerMessage | When configured by your Service Provider, the developerMessage is included in the error response based on the server’s runtime environment. When included, this message is a free-format message that can provide a hint to the client and server application development teams about the exact nature of the error. If unavailable, contact your Service Provider. |
List<UserMessage> | List of detailed UserMessages for this error, which is used to give client all validation error details. Uses the same format as the localizedUserMessage. |
Requests may not result in the desired result for a number of reasons. The following errors are returned:
silhouette Error Code | HTTP Status Code | Description |
InvalidSubscriberAccount | 400 Bad Request |
Authorization header cannot be mapped to a valid user or location for the requested call. |
InvalidRequest | 400 Bad Request |
|
silhouette Error Code | HTTP Status Code | Description |
|
silhouette Error Code | HTTP Status Code | Description |
the payload of the request. | ||
RequestNotValid ForSpecifiedDevice | 400 Bad Request |
|
DataValidationError | 400 Bad Request |
payload did not pass business logic validations. Usually, there will be a list of detailed validation errors included in the response. |
FrameworkBadRequest | 400 Bad Request |
invalid format and cannot be processed. |
CallCancelled | 400 Bad Request |
the 3PCC operation could complete. |
BadAuthenticationHeader | 401 Unauthorized |
|
FrameworkForbidden | 403 Forbidden |
not have sufficient application permission for the request. |
RestrictedOperationAttempt | 403 Forbidden |
authenticated user does not match the originator account in the request payload. |
silhouette Error Code | HTTP Status Code | Description |
AccountNotCallParty | 403 Forbidden |
|
ResourceNotFound | 404 Not Found |
|
RestrictedDataAccessAttempt | 404 Not Found |
|
FrameworkNotFound | 404 Not Found |
determine the type of resource being sought for the request |
silhouette Error Code | HTTP Status Code | Description |
path (i.e. the URL was utterly invalid). | ||
FrameworkInvalidParam | 404 Not Found |
un-parseable value for URI variable. |
FrameworkInvalidPathParam | 404 Not Found |
un-parseable value for path variable, such as incorrect value of tenantId. |
FrameworkInvalidQueryParam | 404 Not Found |
un-parseable value for query variable, such as incorrect value of siteTypeId. |
InvalidParamValue | 404 Not Found |
a query parameter with invalid syntax, for example a string for a Boolean. |
FeatureNotEnabled | 404 Not Found |
details of a controlled-feature that has not been enabled for the specified resource (e.g. Subscriber Twinning, or Tenant Account Codes). |
FrameworkUnsupportedMethod | 405 Method Not Allowed |
unsupported HTTP method of a resource. |
FrameworkUnacceptable | 406 Not Acceptable |
unsupported content type in the request Accept header (only “application/hal+json” is supported). |
RequestNotValidForCallState | 409 Conflict |
|
silhouette Error Code | HTTP Status Code | Description |
| ||
FrameworkUnsupportedType | 415 Unsupported Media Type |
unsupported content type in the request Accept header (only “application/hal+json” is supported). |
InternalServerError | 500 Internal Server Error |
- callObserver has no callLeg |
silhouette Error Code | HTTP Status Code | Description |
| ||
FrameworkInternalServerError | 500 Internal Server Error |
occurred while processing the client request. |
FrameworkUnknownError | 500 Internal Server Error |
processing client request. |
SystemResourceUnavailable | 503 Service Unavailable |
|
ServiceUnavailable | 503 Service Unavailable |
to an initialization error. |
FrameworkServiceUnavailable | 503 Service Unavailable |
processing client request is not available at the moment |