Skip to main content Skip to docs navigation
Check

Get started with Voice API

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.

 

Typographical Conventions

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.


 

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 real- time call and presence events.


                                                                                                                                                          Public API Guide

 

 

 

Architecture

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.

 

 



 

 

Application Requirements

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.


 

 

 

 

 

 

 

 

 


Accessing the API

The silhouette API entry point is https://<WebAdmin>/api. Accessing the silhouette API includes

         API Access

         Security

         Load Control

         SSL Certification


 

 

 

API Access

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.

 

 

Security

silhouette API security comprises

 

         Authentication

         Authorization

 

Authentication

An authentication protocol is used for authenticating silhouette API access. All REST requests and the WebSocket connection request must be authenticated individually (no sessions).

 

Authorization

Authorization is per request and is based on the authority users have to access the API.

Load Control

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.

 

 

SSL Certification

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

Using the API includes the following topics:

 

         Hyperlinking API Fundamentals

         Using HTTP Verbs

         API Documentation—The HAL Browser

         WebSockets

         WSTool

         Subscription Sets

         Using API Features

         Third Party Call Control


 

 

 

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.

 

 

Using HTTP Verbs

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.



 

 

 

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.

 

Resource Graph

 

The menu at the top of The HAL Browser has a link to the API Resource Graph. The client developer can expand resource nodes and follow documentation links to explore the Resource Model. The graph documents the full model; however, visibility of resource data in the application is subject to authorization, licensing, and permission controls. See Resource Model.


  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.

 

 

 

WebSockets

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.

 

Example

 

===>

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

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.

 

Subscription Sets

Once it has established a WebSocket, the client can subscribe to events. To receive events, follow these steps:

1.   Establish a WebSocket with the silhouette API.

2.   Receive a WebSocket ID over the newly-established WebSocket.

3.   Use the WebSocket ID to create a Subscription Set for each set of subscriptions.

4.   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.)

 

 

Using API Features

The silhouette API includes the following features:

 

         Expand Support

         Filter Support

         enum lookup


 

 

Expand Support

Table of Contents

         Description

         Expand Keys

         Performance

         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.

 

Expand Keys

 

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.


 

 

Performance

 

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


 

 

Filter Support

Table of Contents

         Description

         Filter condition

         value condition

         non-value condition

         Performance

         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.

Filter condition

 

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)

 

non-value condition

 

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.

 

Filter Parameter Examples

 

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)


 

 

enum lookup

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@12345

{"callRequest":"hangupCall", "myPartyId":"155@12345", "deviceId":"4564",

}

 

 

The GET Call response includes a hyperlink to the enum lookup resource for the

callRequest field:

 

GET /calls/3501-1441389611741-3%3A155%4012345 HTTP/1.1

 

Response:

{

"_links" : {

"curies" : {

"href" : "/api/v1/rels/{rel}", "name" : "v1options", "templated" : true

},

"self" : {

"href" : "/calls/3501-1441389611741-3:155@12345"

},

"v1options:callRequest" : {

"href" : "/api/v1/enums/callrequest"

}

},

"answerTime" : "2016-03-18T13:05:14.216-04:00", "callId" : "3501-1441389611741-3:155@12345",

"callParties" : [ { "PartyId" : "155@12345",

"PartyName" : "User, Jane"

}, {

"PartyId" : "203@12345",

"PartyName" : "User, Joe"

} ],

"callState" : "connected", "digitsDialed" : "203", "from" : "203@12345",

"redirected" : false,

"startTime" : "2016-03-18T13:04:44.260-04:00",

"talkDuration" : "PT45S", "to" : "155@12345",

"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.


 

 

Third Party Call Control

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

makeCall

Yes

getCalls

Yes

getCall

Yes

parkCall

Yes

answerCall

No

hangupCall

Yes

deflectCall

Yes

holdCall

No

resumeCall

No

transferCall

Yes

retrieveCall

Yes

 

Yes

 

Yes

For more information, see API Resources and Subscription Sets.


 

 

makeCall

 

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


 

 

getCalls

 

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


 

 

getCall

 

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


 

 

parkCall

 

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


 

 

answerCall

 

Description Answers a call.

Details

https://{ip}/api/v1/calls/{callObserverId}

{"callRequest":"answerCall", ”myPartyId”:"ext@tenantId"}


 

 

hangupCall

 

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


 

 

deflectCall

 

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


 

 

holdCall

 

Description

 

Holds a specific call based on the callId.

Details

https://{ip}/api/v1/calls/{callId}

{"callRequest":"holdCall", "myPartyId":105@tenantId }


 

 

resumeCall

 

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" }


 

 

transferCall

 

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


 

 

retrieveCall

 

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


 

 

 

 

 

 

 

 

 


Events

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

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).

 

General Format

 

===>

https://{webadminIP}/api/v1/calls


 

 

dial

 

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

}


 

 

ringback

 

Description

 

Dialed call is ringing.

 

Details

 

{

“subscriptionSetId”:”12345”, “event”:”ringback”, “callId”:1,

“observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52-04”,

“version”:”v1”

}


 

 

offer

 

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”

}


 

 

ringing

 

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

}


 

 

answer

 

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

}


 

 

forward

 

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”

}


 

 

hold

 

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”

}


 

 

held

 

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”

}


 

 

resume

 

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”

}


 

 

resumed

 

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”

}


 

 

transfer

 

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”

}


 

 

callError

 

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”

}


 

 

end

 

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”

}


 

 

park

 

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”,

}


 

 

parked

 

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”,

}


 

 

retrieve

 

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”,

}


 

 

retrieved

 

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

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.


 

 

idle

 

Account is not involved in any calls. Details

{

“subscriptionSetId”:”12345”, “event”:”idle”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,

“version”:”v1”

}


 

 

busy

 

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”

}


 

 

available

 

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”

}


 

 

unavailable

 

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”

}


 

 

joinedGroup

 

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”

}


 

 

leftGroup

 

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”

}


 

 

signedInAcd

 

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”

}


 

 

signedOutAcd

 

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”

}


 

 

dndOff

 

Account has turned DND off. Details

{

“subscriptionSetId”:”12345”, “event”:”dndOff”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,

“version”:”v1”

}


 

 

dndOn

 

Account has turned DND on. Details

{

“subscriptionSetId”:”12345”, “event”:”dndOn”, “observedParty”:”100@Windstream”, “timestamp”:”2015-05-11T14:06:52+04”,

“version”:”v1”

}


 

 

ParkLocation Events

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.


 

 

idle

 

ParkLocation is not involved in any calls. Details

{

“subscriptionSetId”:”12345”, “event”:”idle”, “observedParty”:”PL1@315100001”, “timestamp”:”2015-05-11T14:06:52+04”,

“version”:”v1”

}


 

 

busy

 

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”

}


 

 

 

 

 

 

 

 

 


API Resources

This section includes

 

         Resource Model

         Navigation Resources

         Event Management Resources

         Call Management Resources

         Presence Status Resources

         ParkLocation Status Resources

         Provisioning Resources


  The detailed documentation in this chapter includes references to information that


is 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.


 

 

 

Resource Model

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

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.


 

 

API Root Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         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.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

Link Relations

 

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

Sample GET Response

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"

}


 

 

V1 Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Link Relations

         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.

 

 

Supported Operations

 

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

 

Resource Details

Link Relations

 

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

 

Sample GET Response

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

}

}

}


 

 

URI Template Dictionary

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Expandable Relations

         Sample GET Response Description

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.

 

Supported Operations

 

GET

 

View URI Template Dictionary resources HEAD

Get just the header response

 

Permitted Authorities (as defined in API Guide)

 

Telco User

 

View

TenantAdmin

 

View


 

 

Resource Details

Properties

 

This resource has no configurable properties.

 

Link Relations

 

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.

 

 

Expandable Relations

 

This resource contains no expandable elements.

 

Sample GET Response

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

}

}

}


 

 

Enums List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Link Relations

         Embedded Representations

         Sample GET Response

         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.

 

Supported Operations

 

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


 

 

List Details

 

The Enum list resource provides a list of Enum resources.

 

Link Relations

 

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 Representations

 

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

 

Sample GET Response

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"

}

}

} ]

}

}

Modify List Request

 

This is a server-managed list and does not support element creation.


 

 

Enum Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         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.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

Sample GET Response

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

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         Sample POST Request

         Sample POST Response Description

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.

 

Supported Operations

 

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

 

List Details

 

The Event Subscription Sets list returns a list of SubscriptionSets resources.

 

Link Relations

 

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 Representations

 

Name

Description

Visibility

Expandable

 

subscriptionSets

 

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

Sample GET Response

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" : 12345

} ]

}

}

Modify List Request

 

Use a POST request to create a new SubscriptionSet.

 

POST Request Properties

 

No properties are required in the payload of the POST request.

 

Sample 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

Sample POST Response

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" : 12345

}


 

 

SubscriptionSets Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         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.

 

Supported Operations

 

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

 

Resource Details

Properties

 

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

Link Relations

 

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

 

Sample GET Response

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" : 12345

}


 

 

Call Events Subscriptions List

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response

         Add Element Request Description

This relation returns a list of the Accounts for which there are Call Event Subscriptions on this Subscription Set.

 

Supported Operations

 

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


 

 

List Details

 

The Call Events Subscriptions list returns a list of Call Event Account resources.

 

Link Relations

 

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

Embedded Representations

 

Name

Description

Visibility

Expandable

 

eventAccount

 

Each Account representation in the event Account array reflects an extension for which events are generated.

 

TenantAdmin, User

 

n

Sample GET Response

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@12345"

}

},

"accountId" : "3235@12345"

} ]

}

}

Modify Request

 

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.

 

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.

 

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

Sample PUT Request

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@12345" ]

}

Sample PUT Response

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@12345"

}

},

"accountId" : "3235@12345"

} ]

}

}

Add Element Request

 

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.


 

 

Call Event Account Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Modify Request

         PUT Request Properties

         Sample PUT Request

         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.

 

An account has the format "<ext>@<tenantId>". The extension represents a user or location extension. The tenantId is the unique identifier that is used during authentication using the "ID" domain, and is provided as a property in the response to the initial query to the API’s root resource at https://<address>/api.

 

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.

 

Supported Operations

 

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

 

Resource Details

Properties

 

Path

Type

Description

Visibility

 

accountId

 

String

 

The accountId identifies an account which is registered for Call Events within this Subscription Set.

 

TenantAdmin, User

Modify Request

 

The PUT request to this resource causes a new subscription to be added if there was no existing subscription for that account.

 

PUT Request Properties

 

The PUT request does not require a payload.

 

Sample PUT Request

PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/calleventaccounts/3235@12345 HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:34921

Sample PUT Response

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@12345"

}

},

"accountId" : "3235@12345"

}


 

 

Emergency Call Alert Events Subscriptions

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

This relation returns the subscription status of Emergency Call Alert Event Subscription on this Subscription Set.

 

Supported Operations

 

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

List Details

 

The Emergency Call Alert Events Subscription returns the status of subscription.

 

Sample GET Response

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

}

Modify Request

 

Use a PUT request to specify the status of subscription for Emergency Call Alert Event subscription.

 

PUT Request Properties

 

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.

 

 

Sample PUT Request

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

}

Sample PUT Response

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response

         Add Element Request Description

This relation returns a list of the Accounts for which there are Presence Event Subscriptions on this Subscription Set.

 

Supported Operations

 

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


 

 

List Details

 

The Presence Events Subscriptions list returns a list of Presence Event Account resources.

 

Link Relations

 

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

Embedded Representations

 

Name

Description

Visibility

Expandable

 

eventAccount

 

Each element in the event Account array reflects an account for which presence events are generated.

 

TenantAdmin, User

 

n

Sample GET Response

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@12345"

},

"v1:presenceStatusByExtension" : [ {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/3235"

} ]

},

"accountId" : "3235@12345"

} ]

}

}

Modify Request

 

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.

 

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.

 

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

Sample PUT Request

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@12345" ]

}

Sample PUT Response

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@12345"

},

"v1:presenceStatusByExtension" : [ {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/3235"

} ]

},

"accountId" : "3235@12345"

} ]

}

}

Add Element Request

 

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

An account has the format "<ext>@<tenantId>". The extension represents a user or location extension. The tenantId is the unique identifier that is used during authentication using the "ID" domain, and is provided as a property in the response to the initial query to the API’s root resource at https://<address>/api.

 

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.

 

Supported Operations

 

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

Resource Details

Properties

 

Path

Type

Description

Visibility

 

accountId

 

String

 

The accountId identifies an account which is registered for Presence Events within this Subscription Set.

 

TenantAdmin, User

Sample GET Response

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@12345"

},

"v1:presenceStatusByExtension" : {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/3235"

}

},

"accountId" : "3235@12345"

}

Modify Request

 

This resource has no configuration properties, so the PUT request simply serves to create or refresh the presence events subscription for the account.

 

PUT Request Properties

 

The PUT request does not require a payload.


 

 

Sample PUT Request

PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/

subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/presenceeventaccounts/3235@12345 HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:38547

Sample PUT Response

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@12345"

},

"v1:presenceStatusByExtension" : {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/3235"

}

},

"accountId" : "3235@12345"

}


 

 

Park Location Events Subscriptions List

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response

         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.

 

Supported Operations

 

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


 

 

List Details

 

The Park Location Events Subscriptions list returns a list of Park Location Event Account resources.

 

Link Relations

 

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 Representations

 

Name

Description

Visibility

Expandable

 

eventAccount

 

The updated set of accounts for which park location events are generated.

 

TenantAdmin, User

 

n

Sample GET Response

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@12345"

},

"v1:parkLocationStatus" : [ {

"href" : "/api/v1/presencestatus/parklocationstatus/PL1@12345"

} ]

},

"accountId" : "PL1@12345"

} ]

}


 

 

}

Modify Request

 

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.

 

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.

 

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>.

Sample PUT Request

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@12345" ]

}

Sample PUT Response

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@12345"

},

"v1:parkLocationStatus" : [ {

"href" : "/api/v1/presencestatus/parklocationstatus/PL1@12345"

} ]

},

"accountId" : "PL1@12345"

} ]

}

}

Add Element Request

 

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Modify Request

         PUT Request Properties

         Sample PUT Request

         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.

 

An account has the format "PL<parkLocationNumber>@<tenantId>". The PL indicates that the number following is a park location. The tenantId is the unique identifier that is used during authentication using the "ID" domain, and is provided as a property in the response to the initial query to the API’s root resource at https://<address>/api.

 

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.

 

Supported Operations

 

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

 

Resource Details

Properties

 

Path

Type

Description

Visibility

 

accountId

 

String

 

The accountId identifies a park location account which is registered for Events within this Subscription Set.

 

TenantAdmin, User

Modify Request

 

This resource has no configuration properties, so the PUT request simply serves to create the park location event subscription for the account.

 

PUT Request Properties

 

The PUT request does not require a payload.

 

Sample PUT Request

PUT /api/v1/subscriptions/ws/300f5121-17e0-477e-915a-830121cdc5d7/ subscriptionsets/5817dfce-61a8-4c37-ab6d-d72ec78219e8/parklocationeventaccounts/PL1@12345

HTTP/1.1

Content-Type: application/json; charset=UTF-8 Host: localhost:35029

Sample PUT Response

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@12345"

},

"v1:parkLocationStatus" : {

"href" : "/api/v1/presencestatus/parklocationstatus/PL1@12345"

}

},

"accountId" : "PL1@12345"

}


 

 

Call Management Resources

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.


 

 

ActiveCalls Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response Properties

         Sample POST Request

         Sample POST Response Description

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.

 

Supported Operations

 

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

List Details

 

The ActiveCalls list resource provides a list of Call resources in summarized form.


 

 

Link Relations

 

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

Embedded Representations

 

Name

Description

Visibility

Expandable

 

call

 

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

Sample GET Response

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@12345"

}

},

"callId" : "3501-0-1669924620258-3:4332@12345", "from" : "4332@12345",

"smdrCallId" : "3501-0-1669924620258-3-1",


 

 

"to" : "3235"

} ]

}

}

Modify List Request

 

Use POST to initiate a call from the requesting user.

 

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

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

 

POST Response Properties

 

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

Sample POST Request

POST /api/v1/calls HTTP/1.1

Content-Type: application/json; charset=UTF-8 Host: localhost:43089

Content-Length: 148

 

{

"request" : "makeCall", "from" : "4332@12345", "to" : "3235",

"deviceIdType" : "device", "deviceId" : "4564", "playPrompt" : "false"

}


 

 

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/calls/1234-1486070433518-136:4332@12345 Content-Type: application/hal+json

Content-Length: 212

 

{

"_links" : {

"self" : {

"href" : "/api/v1/calls/1234-1486070433518-136:4332@12345"

}

},

"callId" : "1234-1486070433518-136:4332@12345", "smdrCallId" : "1234-1486070433518-136:4332@12345"

}


 

 

Call Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         POST Request Properties

         POST Response Properties

         Sample POST Request - Hangup Call

         Sample POST Response - Hangup Call Description

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.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

 

Link Relations

 

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

Sample GET Response

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@12345"

},

"v1options:callRequest" : {

"href" : "/api/v1/enums/callrequest"

}

},

"answerTime" : "2022-12-01T14:57:38.630-05:00", "callId" : "3501-0-1669924617622-3:4332@12345",

"callParties" : [ { }, { } ], "callState" : "connected", "digitsDialed" : "3235", "from" : "4332@12345",

"redirected" : false,

"smdrCallId" : "3501-0-1669924617622-3-1", "startTime" : "2022-12-01T14:57:08.630-05:00",

"talkDuration" : "PT45S", "to" : "3235",

"transferred" : false

}


 

 

Modify Request

 

Use a POST request to modify the state of an existing call. An example of a hangup request is provided below.

 

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

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

 

POST Response Properties

 

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%4012345 HTTP/1.1

Content-Type: application/json; charset=UTF-8 Host: localhost:43817

Content-Length: 64

 

{

"callRequest" : "hangupCall", "myPartyId" : "4332@12345"

}

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@12345"

},

"v1options:callRequest" : {

"href" : "/api/v1/enums/callrequest"

}

},

"callId" : "3501-0-1669924617622-3:4332@12345",

"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

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response Description

This resource provides a mechanism to poll the silhouette API to interrogate the current presence status of an extension.

 

Supported Operations

 

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)

Resource Details

Properties

 

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

 

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 287

 

{

"_links" : {

"self" : {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/3235"

}

},

"accountId" : "4332@12345", "acdAvailability" : "signedOutAcd", "availability" : "available", "callStatus" : "busy",

"dndStatus" : "dndOff", "groupStatus" : { }

}


 

 

PresenceStatusBySubscriptionSet Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Embedded Representations

         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.

 

Supported Operations

 

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

Resource Details

Embedded Representations

 

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


 

 

Sample GET Response

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/12345/extensions/{extension}", "templated" : true

} ]

},

"_embedded" : { "presenceStatus" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/3235"

}

},

"accountId" : "3235@12345", "acdAvailability" : "signedOutAcd", "availability" : "unavailable", "callStatus" : "idle",

"dndStatus" : "dndOff", "groupStatus" : {

"6001" : "groupJoined",

"6041" : "groupLeft"

}

} ]

}

}


 

 

PresenceStatusTenantAccounts Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Resource Details

         Embedded Representations

         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.

 

Supported Operations

 

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

List Details

 

The Presence Status Tenant Account list returns a list of presenceStatusByExtension resources.

 

Resource Details

Embedded Representations

 

Name

Description

Visibility

Expandable

 

presenceStatus

 

Each presenceStatus element of the _embedded list contains the Presence Status of the account.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

n


 

 

Sample GET Response

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/12345/extensions"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/{extension}", "templated" : true

} ]

},

"_embedded" : { "presenceStatus" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/4332"

}

},

"accountId" : "4332@12345", "acdAvailability" : "signedOutAcd", "availability" : "available", "callStatus" : "busy",

"dndStatus" : "dndOff", "groupStatus" : { }

}, {

"_links" : {

"self" : {

"href" : "/api/v1/presencestatus/tenants/12345/extensions/3235"

}

},

"accountId" : "3235@12345", "acdAvailability" : "signedOutAcd", "availability" : "available", "callStatus" : "idle",

"dndStatus" : "dndOff", "groupStatus" : { }

} ]

}

}


 

 

PresenceStatusTenantParkLocations Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Embedded Representations

         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.

 

Supported Operations

 

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

Resource Details

Embedded Representations

 

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


 

 

Sample GET Response

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/12345/parklocations"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/presencestatus/tenants/12345/parklocations/{parkLocationNumber}", "templated" : true

} ]

},

"_embedded" : {

"parkStatus" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/presencestatus/tenants/12345/parklocations/PL1"

}

},

"accountId" : "PL1@12345", "parkLocationNumber" : "1", "parkedPartyName" : "Smith", "parkedPartyNumber" : "5555555555", "status" : "busy"

} ]

}

}


 

 

PresenceStatusParkLocation Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response Description

This resource provides a mechanism to poll the silhouette API to interrogate the current status of a park location.

 

Supported Operations

 

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

Resource Details

Properties

 

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

 

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 264

 

{

"_links" : {

"self" : {

"href" : "/api/v1/presencestatus/tenants/12345/parklocations/PL1"

}

},

"accountId" : "PL1@12345", "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.


 

 

ParkLocationStatus Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response Description

This resource provides a mechanism to poll the silhouette API to interrogate the current status of a park location.

 

Supported Operations

 

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

Resource Details

Properties

 

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

 

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 261

 

{

"_links" : {

"self" : {

"href" : "/api/v1/presencestatus/parklocationstatus/PL1@12345"

}

},

"accountId" : "PL1@12345", "parkLocationNumber" : "1", "parkedPartyName" : "Smith", "parkedPartyNumber" : "5555555555", "status" : "busy"

}


 

 

ParkLocationStatusBySubscriptionSet Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Embedded Representations

         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.

 

Supported Operations

 

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

Resource Details

Embedded Representations

 

Name

Description

Visibility

Expandable

 

parkStatus

 

Each presenceStatus element of the _embedded list contains the Presence Status of the account.

 

TenantAdmin, User

 

n


 

 

Sample GET Response

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@12345"

}

},

"accountId" : "PL1@12345", "parkLocationNumber" : "1", "parkedPartyName" : "Smith", "parkedPartyNumber" : "5555555555", "status" : "busy"

} ]

}

}


 

 

Provisioning Resources

Provisioning resources include

 

         AutoAttendantLanguage Resource

         AutoAttendantLanguage List Resource

         AccountCodes Resource

         ACD Resource

         ACD List Resource

         ACDCallPermissionProfile Resource

         Address Resource

         AdminSettings Resource

         AfternoonGreeting File

         AfternoonGreetingRecording Resource

         Announcement Resource

         AnnouncementSetting Resource

         AutoAttendant Resource

         AutoAttendantAction Resource

         AutoAttendantGreetingSettings Resource

         AutoAttendantMenu Resource

         AutoAttendantMenu File

         AutoAttendant List Resource

         BusinessHoursDidMembers Resource

         BusinessHoursSiteMembers Resource

         BusinessHoursProfile Resource

         BusinessHoursProfiles Resource

         CallCoverage Resource

         CallForwarding Resource

         CallForwardNoAnswer Resource

         CallGroup Resource

         CallGroups List Resource

         CallGroupMember Resource

         Call Group PIN Resource

         CallGroup CallPermissionProfile Resource

         Call Group Presence State Routing Resource

         Call Group Voicemail PIN Reset Resource

         Call Group Voicemail Settings Resource

         CallGroupMemberMgmt List Resource

         CallPermissionProfile Resource

         CallPermissionProfile List Resource

         CallPermissionProfileMember Resource

         CallPermissionProfileMember List Resource

         CallWaitingTone Resource

         ClickToCallConfirmBeforeDial Resource

         CLID Resource

         CLID Condition Resource

         CLID Condition List Resource


 

 

         CustomAnnouncement File

         DefaultAnnouncement File

         DefaultBusinessHoursProfile Resource

         Default System Announcement Resource

         DID Resource

         DID List Resource

         DidBusinessHours Resource

         DidBusinessHoursMgmt Resource

         DND Resource

         DynamicSite Resource

         DynamicSites List Resource

         DynamicSiteSettings Resource

         E.164 Calls Display Resource

         EmergencyOverride Resource

         EveningGreeting File

         EveningGreetingRecording Resource

         Extension Resource

         Extensions List Resource

         ExternalContact Resource

         ExternalContact List Resource

         Features Resource

         FeatureSettings Embedded

         FinalTarget Resource

         HandsfreeAnswerback Resource

         HolidayHoursProfile Resource

         HolidayHoursProfiles Resource

         HolidayDidRouting Resource

         HolidayDidRoutings Resource

         Intermediate Target Resource

         Intermediate Target List Resource

         KeyFeature Resource

         KeyFeatures List Resource

         KeyProfileMemberMgmt Resource

         KeyProfile Resource

         KeyProfiles List Resource

         Language Resource

         Language List Resource

         Location Resource

         LocationFeatureSettings Resource

         Locations List Resource

         Login ACD Resource

 

 

 

 

 

         MemberCallGroupMgmt List Resource


 

 

         MemberKeyProfile Resource

         MemberKeyProfileMgmt Resource

         MitelRingTones Resource

         MitelRingToneTest Resource

         MonitoredByExtension Resource

         MonitoredByExtension List Resource

         MonitoringExtension Resource

         MonitoringExtension List Resource

         MorningGreeting File

         MorningGreetingRecording Resource

         My Phone Resource

         My Phones List Resource

         NameAnnouncement Resource

         NameAnnouncement File

         NameAnnouncementRecording Resource

         OutgoingCallPrivacy Resource

         PersonalContact Resource

         PersonalContact List Resource

         PersonalContactField Resource

         PersonalContactField List Resource

         PersonalKeyMapping Resource

         PersonalKeyMapping List Resource

         Personal Voicemail PIN Reset Resource

         Personal Voicemail Settings Resource

         Phone Resource

         Phones List Resource

         Phone Extension Resource

         Phone Extension Management Resource

 

         PhoneReset Resource

         PIN Management Resource

         PIN Notification Method Resource

         PolycomRingTones Resource

         ProfileKeyMapping Resource

         ProfileKeyMapping List Resource

         QueueSettings Resource

         resetPin Resource

         SCR Rule Resource

         SCR Rule List Resource

         StaticSite Resource

         StaticSites List Resource

         SiteBusinessHours Resource

         SiteBusinessHoursMgmt Resource

         SiteType Resource

         SiteTypes List Resource

         System Announcement List Resource

         Tenant Resource


 

 

         Tenant Announcement List Resource

         Tenant Default Announcement Resource

         TenantMitelRingTones Resource

         TenantPhoneModel Resource

         TenantPhoneModel List Resource

         Twinning Resource

         User Resource

         Users List Resource

         UserCallPermissionProfile Resource

         UserDynamicSite Resource

         UserFeatureSettings Resource

         User Phones Resource

         VoicemailLanguage 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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response Description

The AutoAttendantLanguage resource provides information about a supported Auto Attendant Language.

 

Supported Operations

 

GET

 

View AutoAttendantLanguage Details HEAD

Get just the header response

 

Permitted Authorities (as defined in API Guide)

 

Telco User

 

GET

TenantAdmin User

 

GET

Resource Details

Properties

 

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


 

 

Sample GET Response

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response Description

This relation returns a list of supported AutoAttendantLanguage of the system.

 

Supported Operations

 

GET

 

View list of AutoAttendantLanguages HEAD

Get just the header response

 

Permitted Authorities (as defined in API Guide)

 

Telco User

 

GET

TenantAdmin User

 

GET

List Details

 

The AutoAttendantLanguage list resource provides a list of AutoAttendantLanguage resources.

 

Request Parameters

 

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 Filter Support


 

 

 

Parameter

Description

Constraints

 

and the result will be filtered by all

filters based on the provided order in rhe query parameter.

 

 

Link Relations

 

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 Representations

 

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

 

aaLanguage

 

Each element of the AutoAttendantLanguage list represents a single supported AutoAttendant Language of the system.

 

Telco(TenantBasicOr AdvanceManagement, SystemManagement), TenantAdmin

 

n

 

Sample GET Response

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"

} ]

}

}


 

 

AccountCodes Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 199

 

{

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/accountcodes"

}

},

"accountCodesEnabledByTenant" : false, "accountCodesMaxLength" : 10,

"accountCodesMinLength" : 5

}

Modify Request

 

Use a PUT request with the following properties in the payload to modify the tenant’s account codes settings.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/accountcodes HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:40873

Content-Length: 105

 

{

"accountCodesEnabledByTenant" : true, "accountCodesMinLength" : 5,

"accountCodesMaxLength" : 10

}

Sample PUT Response

 

Same as "GET response"


 

 

ACD Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The ACD resource provides information about a specific ACD Application. Deleting a ACD is supported.

Supported Operations

 

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

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

Link Relations

 

Relation

Description

Visibility

 

v1:acdCallPermissionProfile

 

call permission profile management.

 

Telco(TenantBasicOrAdvance Management), TenantAdmin


 

 

Embedded Representations

 

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

 

callPermission Profile

 

The CallPermissionProfile currently associated with the ACD.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

Sample GET Response

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/12345/acds/136"

},

"v1:acdCallPermissionProfile" : {

"href" : "/api/v1/tenants/12345/acds/136/callpermissionprofile"

}

},

"acdId" : 136,

"extension" : "5001",

"name" : "Sales ACD", "_embedded" : {

"callPermissionProfile" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116"

}

},

"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"

}

}

}

Modify Request

 

Use a PUT request to modify the properties of a ACD.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/acds/136 HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:46873

Content-Length: 26

 

{

"name" : "Sales ACD"

}

Sample PUT Response

 

Same as "GET response"


 

 

ACD List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response

         Sample POST Request

         Sample POST Response Description

This relation returns a list of configured ACDs for the tenant.

 

Supported Operations

 

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

List Details

 

The ACD list resource provides a list of ACD resources in summarized form.


 

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

acd

 

Each element of the ACD list represents a single ACD, and indicates the ACD extension and name.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User

 

y


 

 

Sample GET Response

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/12345/acds"

},

"v1:extensions" : [ {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/acds/{acdId}", "templated" : true

} ]

},

"count" : {

"acd" : 1

},

"total" : {

"acd" : 1

},

"_embedded" : {

"acd" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/acds/136"

}

},

"acdId" : 136,

"extension" : "5001", "name" : "Sales ACD"

} ]

}

}

Modify List Request

 

Use a POST request to add a new ACD.

 

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

 

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)

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/acds HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:46873

Content-Length: 50

 

{

"extension" : "5001", "name" : "Sales ACD"

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/acds/34


 

 

ACDCallPermissionProfile Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The ACDCallPermissionProfile resource provides information about the assigned call permission profile of the ACD.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

Path

Type

Description

Visibility

 

callPermission ProfileId

 

Number

 

Identifier the call permission profile currently associated with the ACD.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

Link Relations

 

Relation

Description

Visibility

 

v1:callPermissionProfiles

 

List of call permission profiles for the tenant.

 

Telco(TenantBasicOrAdvance Management), TenantAdmin

Embedded Representations

 

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

 

callPermission Profile

 

The CallPermissionProfile currently associated with the ACD.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

Sample GET Response

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/12345/acds/136/callpermissionprofile"

},

"v1:callPermissionProfiles" : {


 

 

"href" : "/api/v1/tenants/12345/callpermissionprofiles{?expand,filter}", "templated" : true

}

},

"callPermissionProfileId" : 116, "_embedded" : {

"callPermissionProfile" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116"

}

},

"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"

}

}

}

Modify Request

 

Use a PUT request to modify the ACD Call Permission Profile setting.

 

PUT Request Properties

 

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

 

Sample PUT Request

PUT /api/v1/tenants/12345/acds/136/callpermissionprofile HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:46873 Content-Length: 37

 

{

"callPermissionProfileId" : 116

}


 

 

Sample PUT Response

 

"Same as GET response"


 

 

Address Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The Address resource provides the street address information about a site.

 

Supported Operations

 

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

Resource Details

Properties

 

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

 

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 321

 

{

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/staticsites/5/address"

}


 

 

},

"address1" : "1 Jones Road", "address2" : "Suite 10", "city" : "Kanata",

"country" : "Canada", "faxNumber" : "6135552030",

"phoneNumber" : "6135552000", "postalCode" : "K2M 3PC", "state" : "Ontario"

}

Modify Request

 

Use a PUT request to modify the properties of a address.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}

Sample PUT Response

 

Same as "GET response"


 

 

AdminSettings Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

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)

 

Link Relations

 

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 Representations

 

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

 

dynamicSiteSettings

 

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

Sample GET Response

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/12345/users/4332/adminsettings"

},

"v1:clid" : {

"href" : "/api/v1/tenants/12345/users/4332/clid"

},

"v1:dids" : {

"href" : "/api/v1/tenants/12345/dids{?expand,filter,assigned}", "templated" : true

},

"v1:dynamicSiteSettings" : {

"href" : "/api/v1/tenants/12345/users/4332/dynamicsitesettings"

},

"v1:manageCLID" : {

"href" : "/api/v1/tenants/12345/users/4332/clid"

},

"v1:manageDynamicSiteSettings" : {

"href" : "/api/v1/tenants/12345/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/12345/users/4332/clid"

}

}

},

"dynamicSiteSettings" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/users/4332/dynamicsitesettings"

}

},

"clid" : "6132802000",

"defaultZoneId" : 3,

"maxCallCount" : 4

}

}

}

Modify Request

 

Use a PUT request to modify user/location Admin Settings.


 

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/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

}


 

 

Sample PUT Response

 

Same as "GET response"


 

 

AfternoonGreeting File

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Modify Request Description

The file containing the AutoAttendant prompt to be played in the afternoon.

 

Supported Operations

 

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

Resource Details

 

Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.


 

 

Modify Request

 

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Modify Request

         POST Request Properties

         POST Response

         Sample POST Request

         Sample POST Response Description

The AfternoonGreetingRecording resource provides support for recording afternoon greeting prompt of an AutoAttendant via phone.

 

Supported Operations

 

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

Modify Request

 

Use a POST request to record afternoon greeting prompt of an AutoAttendant via phone.

 

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. 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.

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/autoattendants/186/greetingsettings/afternoonrecording HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:42629 Content-Length: 31

 

{

"phoneExtension" : "4332"

}

Sample POST Response

HTTP/1.1 200 OK


 

 

Announcement Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The Announcement resource provides information about a Announcement, include System Announcement and Tenant Announcement.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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)

Link Relations

 

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

Sample GET Response

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/12345"

}

},

"deleting" : false, "tenantId" : 12345,

"tenantName" : "Dave's Moose Hunting Supply", "webLoginUrl" : "/mooseByDave"

}

}

}

Modify Request

 

Use a PUT request to modify the properties of Announcement.

 

PUT Request Properties

 

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

Sample PUT Request

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"

}

Sample PUT Response

 

include the sample generated http-response snippet, or (if identical to GET response) reference GET response above Same as "GET response"


 

 

AnnouncementSetting Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The AnnouncementSetting resource provides information about the announcement setting of the User or Location.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

Link Relations

 

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 Representations

 

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

 

announcement

 

The announcement detail which is currently used as the announcement of this User or Location.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

n

Sample GET Response

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/12345/users/4332/announcementsetting"

},

"v1:systemAnnouncements" : {

"href" : "/api/v1/systemannouncements{?expand,filter}", "templated" : true

},

"v1:tenantAnnouncements" : {

"href" : "/api/v1/tenants/12345/announcements{?expand,filter}", "templated" : true

}

},

"announcementId" : 2, "useDefault" : false, "_embedded" : {

"announcement" : { "_links" : {

"self" : {

"href" : "/api/v1/announcements/2"

}

},

"announcementId" : 2, "name" : "Comfort Tone"

}

}

}

Modify Request

 

Use a PUT request to modify the User or Location Announcement Setting.

 

PUT Request Properties

 

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

 

Sample PUT Request

PUT /api/v1/tenants/12345/users/4332/announcementsetting HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:45463 Content-Length: 50

 

{

"useDefault" : false, "announcementId" : 2

}

Sample PUT Response

 

"Same as GET response"


 

 

AutoAttendant Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The AutoAttendant resource provides information about a specific Auto Attendant.

 

Supported Operations

 

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

 

Resource Details

Request Parameters

 

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

.

Properties

 

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 Representations

 

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

 

autoAttendant GreetingSettings

 

The greetings settings for the auto attendant.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

n


 

 

 

Name

Description

Visibility

Expandable

 

autoAttendantMenu

 

The menu associated with this level of the auto attendant.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 976

 

{

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/autoattendants/186"

}

},

"autoAttendantId" : 186,

"extension" : "7001",

"name" : "Support Auto Attendant", "_embedded" : {

"autoAttendantGreetingSettings" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/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/12345/autoattendants/186/autoattendantmenus/187"

}

},

"menuId" : 187,

"name" : "OurAA"

}

}

}

Modify Request

 

Use a PUT request to modify the properties of an AutoAttendant.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/autoattendants/186 HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:42629 Content-Length: 50

 

{

"extension" : "103", "name" : "Shotgun AA"

}

Sample PUT Response

 

Same as "GET response"


 

 

AutoAttendant List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response

         Sample POST Request

         Sample POST Response Description

This relation returns a list of configured AutoAttendants for the tenant.

 

Supported Operations

 

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

List Details

 

The AutoAttendant list resource provides a list of AutoAttendant resources in summarized form.


 

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

autoAttendant

 

Each element of the Auto Attendant list represents a single AutoAttendant, and indicates the AutoAttendant extension and name.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User

 

y

 

Sample GET Response

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/12345/autoattendants"

},

"v1:extensions" : [ {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/autoattendants/{autoAttendantId}", "templated" : true

} ]

},

"count" : { "autoAttendant" : 1

},

"total" : { "autoAttendant" : 1

},

"_embedded" : { "autoAttendant" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/autoattendants/186"

}

},

"autoAttendantId" : 186,

"extension" : "7001",

"name" : "Support Auto Attendant"

} ]

}

}

Modify List Request

 

Use a POST request to add a new AutoAttendant.

 

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

 

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.

 

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/autoattendants HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:42629

Content-Length: 50

 

{

"extension" : "103", "name" : "Shotgun AA"

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/autoattendants/14


 

 

AutoAttendantAction Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The AutoAttendantAction resource provides information about a specific Auto Attendant Action when press a menu key.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

Link Relations

 

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 Representations

 

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

 

autoAttendantMenu

 

Optional, the sub menu associated with this action, only exist when the action type is

 

subMenu

.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

Sample GET Response

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/12345/autoattendants/186/autoattendantmenus/187/actions/5"

},

"v1:extensions" : {

"href" : "/api/v1/tenants/12345/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/12345/autoattendants/186/autoattendantmenus/188"

}

},

"menuId" : 0,

"name" : "SubMenu"

}

}

}


 

 

Modify Request

 

Use a PUT request to modify the properties of an AutoAttendantAction.

 

PUT Request Properties

 

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.

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}

Sample PUT Response

 

Same as "GET response"


 

 

AutoAttendantGreetingSettings Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The AutoAttendantGreetingSettings resource provides information about the greetings for a menu within an AutoAttendant.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

Link Relations

 

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

 

Sample GET Response

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/12345/autoattendants/186/greetingsettings"

},

"v1:afternoonGreetingRecording" : {

"href" : "/api/v1/tenants/12345/autoattendants/186/greetingsettings/afternoonrecording"

},

"v1:eveningGreetingRecording" : {

"href" : "/api/v1/tenants/12345/autoattendants/186/greetingsettings/eveningrecording"

},

"v1:morningGreetingRecording" : {

"href" : "/api/v1/tenants/12345/autoattendants/186/greetingsettings/morningrecording"

},

"v1mediafile:afternoonGreetingFile" : {

"href" : "/api/v1/tenants/12345/autoattendants/186/greetingfiles/afternoon"

},

"v1mediafile:eveningGreetingFile" : {

"href" : "/api/v1/tenants/12345/autoattendants/186/greetingfiles/evening"

},

"v1mediafile:morningGreetingFile" : {

"href" : "/api/v1/tenants/12345/autoattendants/186/greetingfiles/morning"

}

},

"afternoonGreeting" : { "recorded" : false,

"greetingText" : "Good afternoon"

},

"eveningGreeting" : { "recorded" : false,

"greetingText" : "Good evening"

},

"morningGreeting" : { "recorded" : false,

"greetingText" : "Good morning"

},

"timeOfDayGreetingEnabled" : false

}


 

 

Modify Request

 

Use a PUT request to modify the properties of Greeting Settings for an AutoAttendant.

 

PUT Request Properties

 

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.

 

 

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}

}

Sample PUT Response

 

Same as "GET response"


 

 

AutoAttendantMenu Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The AutoAttendantMenu resource provides information about a single menu within an AutoAttendant.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

Link Relations

 

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 Representations

 

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

 

autoAttendantAction

 

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

Sample GET Response

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/12345/autoattendants/186/autoattendantmenus/187"

},

"v1:aaLanguages" : {

"href" : "/api/v1/aalanguages{?filter}", "templated" : true

},

"v1:autoAttendantMenuRecording" : {

"href" : "/api/v1/tenants/12345/autoattendants/186/autoattendantmenus/187/menurecording"

},

"v1mediafile:autoAttendantMenuFile" : {

"href" : "/api/v1/tenants/12345/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/12345/autoattendants/186/autoattendantmenus/187/actions/1"

}

},

"actionData" : "6001", "autoAttendantActionType" : "CallGroup", "key" : "1",

"promptWording" : "prompt"

}

}

}

Modify Request

 

Use a PUT request to modify the properties of an AutoAttendantMenu.

 

PUT Request Properties

 

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.

Sample PUT Request

PUT /api/v1/tenants/12345/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

}

Sample PUT Response

 

Same as "GET response"


 

 

AutoAttendantMenu File

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Modify Request Description

The AutoAttendantMenu File is the audio file for a single menu of an AutoAttendantMenu.

 

Supported Operations

 

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

Resource Details

 

Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.


 

 

Modify Request

 

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Modify Request

         POST Request Properties

         POST Response

         Sample POST Request

         Sample POST Response Description

The AutoAttendantMenuRecording resource provides support for recording prompt of an AutoAttendantMenu via phone.

 

Supported Operations

 

HEAD

 

Get just the header response POST

Recording prompt of an AutoAttendantMenu via phone.

 

Permitted Authorities (as defined in API Guide)

 

TenantAdmin User

 

POST

Modify Request

 

Use a POST request to record prompt of an AutoAttendantMenu via phone.

 

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. 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.

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/autoattendants/186/autoattendantmenus/187/menurecording HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:42629 Content-Length: 31

 

{

"phoneExtension" : "4332"

}

Sample POST Response

HTTP/1.1 200 OK


 

 

BusinessHoursDidMembers Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response Properties

         Sample POST Request

         Sample POST Response Description

Resources that are associated with the relationship between a Business Hours Profile and the DIDs that use it. The relationships can be managed.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

didBusinessHours

 

The list of the tenant’s DIDs and the business hours associated with each

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y


 

 

Sample GET Response

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/12345/businesshours/2/didmembers"

},

"v1:dids" : [ {

"href" : "/api/v1/tenants/12345/dids{?expand,filter,assigned}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/didbusinesshours/{didId}", "templated" : true

} ]

},

"count" : { "didBusinessHours" : 1

},

"total" : { "didBusinessHours" : 1

},

"_embedded" : { "didBusinessHours" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/didbusinesshours/3"

}

},

"businessHoursProfileId" : 2,

"didId" : 3

} ]

}

}

Modify List Request

 

Use a POST request to add a new set of business hours.

 

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

 

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

 

POST Response Properties

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/businesshours/2/didmembers HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:36915 Content-Length: 49

 

{

"businessHoursProfileId" : 2,

"didId" : 3

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/businesshours/2/didmembers


 

 

BusinessHoursSiteMembers Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response Properties

         Sample POST Request

         Sample POST Response Description

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.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

siteBusinessHours

 

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.

 

 

 

Sample GET Response

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/12345/businesshours/2/sitemembers"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/sitebusinesshours/{siteId}", "templated" : true

} ],

"v1:staticSites" : [ {

"href" : "/api/v1/tenants/12345/staticsites{?expand,filter,siteTypeId}", "templated" : true

} ]

},

"count" : { "siteBusinessHours" : 1

},

"total" : { "siteBusinessHours" : 1

},

"_embedded" : { "siteBusinessHours" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/sitebusinesshours/5"

}

},

"businessHoursProfileId" : 2,

"siteId" : 5

} ]

}

}

Modify List Request

 

Use a POST request to add a new set of business hours.

 

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

 

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

 

POST Response Properties

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/businesshours/2/sitemembers HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:36915 Content-Length: 50

 

{

"businessHoursProfileId" : 2,

"siteId" : 5

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/businesshours/2/sitemembers


 

 

BusinessHoursProfile Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

 

Link Relations

 

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

Sample GET Response

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/12345/businesshours/2"

},

"v1:bhDidMembers" : {

"href" : "/api/v1/tenants/12345/businesshours/2/didmembers{?expand,filter}", "templated" : true

},

"v1:bhSiteMembers" : {

"href" : "/api/v1/tenants/12345/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

}

}

Modify Request

 

Use a PUT request to modify the properties of a BusinessHoursProfile.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}

}

Sample PUT Response

 

Same as "GET response"


 

 

BusinessHoursProfiles Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response Properties

         Sample POST Request

         Sample POST Response Description

This relation returns a list of configured BusinessHoursProfiles for the tenant.

 

Supported Operations

 

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

List Details

 

The BusinessHoursProfile list resource provides a list of BusinessHoursProfile resources in summarized form.


 

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

businessHoursProfile

 

Each element of the list represents a single set of business hours for the tenant.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET Response

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/12345/businesshours"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/businesshours/{businessHourId}", "templated" : true

} ]

},

"count" : { "businessHoursProfile" : 1

},

"total" : { "businessHoursProfile" : 1

},

"_embedded" : { "businessHoursProfile" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/businesshours/2"

}

},

"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"

} ]

}

}

Modify List Request

 

Use a POST request to add a new BusinessHoursProfile.

 

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

 

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.


 

 

POST Response Properties

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/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"

}

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/businesshours/4


 

 

CallCoverage Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         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.

 

Supported Operations

 

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)


 

 

Resource Details

Properties

 

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

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 152

 

{

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/users/4332/coverage"

}

},

"numberOfRings" : 5,

"targetNumber" : "3235"

}


 

 

CallForwarding Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Link Relations

         Properties

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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)

 

Resource Details

Request Parameters

 

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

.

Link Relations

 

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

Properties

 

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 Representations

 

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

 

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

Sample GET Response

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/12345/users/4332/callforward"

},

"v1:extensions" : {

"href" : "/api/v1/tenants/12345/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/12345/extensions/3235"

}


 

 

},

"accountId" : "3235@12345", "enabled" : true, "extension" : "3235",

"extensionType" : "locationExt", "name" : "Kitchen"

}

}

}

Modify Request

 

Use a PUT request to modify the properties of Call Forwarding feature state.

 

PUT Request Properties

 

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

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}


 

 

Sample PUT Response

 

Same as "GET response"


 

 

CallForwardNoAnswer Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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)

 

Resource Details

Request Parameters

 

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

.

Properties

 

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


 

 

Link Relations

 

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 Representations

 

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

 

Optional, details of the extension that the target is associated with when the callTarget is an extension.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User

 

y

Sample GET Response

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/12345/callfwdnoanswers/6001"

},

"v1options:callTargetType" : {

"href" : "/api/v1/enums/calltargettype"

}

},

"callTarget" : "4332", "callTargetType" : "SubscriberVM", "numberOfRings" : 4,

"_embedded" : {

"extension" : {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/extensions/4332"

}

},

"accountId" : "4332@12345", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"

}

}

}


 

 

Modify Request

 

Use a PUT request to modify the CallForwardNoAnswer configuration for an extension.

 

PUT Request Properties

 

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

 

Sample PUT Request

PUT /api/v1/tenants/12345/callfwdnoanswers/6001 HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:45761 Content-Length: 87

 

{

"callTarget" : "4332", "callTargetType" : "SubscriberVM", "numberOfRings" : 4

}

Sample PUT Response

 

Same as "GET response"


 

 

CallGroup Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

 

Link Relations

 

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 Representations

 

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

 

queueSettings

 

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

 

callForwardNoAnswer

 

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

 

callPermission Profile

 

The allocated permission Profile of this user.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET Response

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/12345/callinggroups/3"

},

"v1:callGroupMemberMgmt" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/members{?expand,filter}", "templated" : true

},

"v1:callGroupPermissionProfile" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/callpermissionprofile"

},

"v1:callGroupPin" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/pin"

},


 

 

"v1:callGroupPresenceStateRouting" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/presencestaterouting"

},

"v1:callGroupVoicemailPinReset" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/voicemailpinreset"

},

"v1:callGroupVoicemailSettings" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/voicemailsettings"

},

"v1:queueSettings" : {

"href" : "/api/v1/tenants/12345/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/12345/callfwdnoanswers/6001"

}

},

"callTarget" : "4332", "callTargetType" : "SubscriberVM", "numberOfRings" : 4

},

"queueSettings" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/queue"

}

},

"announcementDurationMins" : 10,

"positionAnnouncementInterval" : 30, "positionEnabled" : false,

"rings" : 2

},

"callPermissionProfile" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/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"

}


 

 

}

}

Modify Request

 

Use a PUT request to modify the properties of a call group.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/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

}

Sample PUT Response

 

Same as "GET response"


 

 

CallGroups List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response

         Sample POST Request

         Sample POST Response Description

This relation returns a list of configured call groups for the tenant.

 

Supported Operations

 

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

List Details

 

The Call Group list resource provides a list of CallGroup resources in summarized form.


 

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

callGroup

 

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

 

Sample GET Response

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/12345/callinggroups"

},

"v1:extensions" : [ {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/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/12345/callinggroups/3"

}

},

"callGroupId" : 3,

"callGroupType" : "BroadcastGroup",


 

 

"extension" : "6001",

"name" : "Moose Call Horn Sales Team", "queueEnabled" : true, "voicemailEnabled" : true

} ]

}

}

Modify List Request

 

Use a POST request to add a new call group.

 

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

 

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

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/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

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/callinggroups/4


 

 

CallGroupMember Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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)

 

Resource Details

Request Parameters

 

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

.

Properties

 

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 Representations

 

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

 

callGroup

 

The call group

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

extension

 

The extension

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET Response

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/12345/callinggroups/3/members/4332"

}

},

"extension" : "4332", "loggedIn" : true, "twinningEnabled" : true, "_embedded" : {

"extension" : {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/extensions/4332"

}

},

"accountId" : "4332@12345", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"

},

"callGroup" : {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callinggroups/3"

}

},

"callGroupId" : 3,

"callGroupType" : "BroadcastGroup", "extension" : "6001",

"name" : "Moose Call Horn Sales Team", "voicemailEnabled" : true

}

}

}

Modify Request

 

Use a PUT request to modify the properties of a Call Group Member.


 

 

PUT Request Properties

 

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

 

Sample PUT Request

PUT /api/v1/tenants/12345/callinggroups/3/members HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:39407 Content-Length: 51

 

{

"loggedIn" : true, "twinningEnabled" : true

}

Sample PUT Response

 

"Same as GET response"


 

 

CallGroup CallPermissionProfile Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The CallGroup CallPermissionProfile resource provides information about the assigned call permission profile of the CallGroup.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

Path

Type

Description

Visibility

 

callPermission ProfileId

 

Number

 

Identifier the call permission profile currently associated with the CallGroup.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

Link Relations

 

Relation

Description

Visibility

 

v1:callPermissionProfiles

 

List of call permission profiles for the tenant.

 

Telco(TenantBasicOrAdvance Management), TenantAdmin

Embedded Representations

 

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

 

callPermission Profile

 

The CallPermissionProfile currently associated with the CallGroup.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

Sample GET Response

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/12345/callinggroups/3/callpermissionprofile"


 

 

},

"v1:callPermissionProfiles" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles{?expand,filter}", "templated" : true

}

},

"callPermissionProfileId" : 0, "_embedded" : {

"callPermissionProfile" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/0"

}

},

"callPermissionProfileId" : 0, "name" : "Call Permission - Sales"

}

}

}

Modify Request

 

Use a PUT request to modify the Call Group Call Permission Profile setting.

 

PUT Request Properties

 

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

 

Sample PUT Request

PUT /api/v1/tenants/12345/callinggroups/3/callpermissionprofile HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:39407 Content-Length: 35

 

{

"callPermissionProfileId" : 0

}


 

 

Sample PUT Response

 

"Same as GET response"


 

 

Call Group PIN Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Modify Request

         POST Request Properties

         Sample POST Request

         Sample POST Response Description

The Call Group PIN resource provides the ability to set a new PIN for Call Group.

 

Supported Operations

 

HEAD

 

Get just the header response POST

Set Call Group’s PIN

 

Permitted Authorities (as defined in API Guide)

 

Telco User

 

POST

TenantAdmin

 

POST

Modify Request

 

Use a POST request with the following properties in the payload to set new PIN.

 

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

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/callinggroups/3/pin HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:37061 Content-Length: 20

 

{

"pin" : "3546"

}

Sample POST Response

HTTP/1.1 200 OK


 

 

Call Group Presence State Routing Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The Call Group Presence State Routing resource provides information about the Presence State Routing configuration of the supporting group types: Broadcast, Hunt, and Rollover.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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


 

 

Link Relations

 

Relation

Description

Visibility

 

v1options:presenceState RoutingOverrideType

 

List of valid Routing Override types that can be set for Presence State Routing.

 

Telco(TenantBasicOrAdvance Management), TenantAdmin

Sample GET Response

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/12345/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"

}

}

Modify Request

 

Use a PUT request to modify Presence State Routing of Call Group.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}

Sample PUT Response

 

Same as "GET response"


 

 

Call Group Voicemail PIN Reset Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Modify Request

         POST Request Properties

         Sample POST Request

         Sample POST Response Description

The Call Group Voicemail PIN Reset resource provides the ability to set a new PIN for Call Group’s voicemail.

 

Supported Operations

 

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

Modify Request

 

Use a POST request with the following properties in the payload to set new voicemail PIN.

 

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

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/callinggroups/3/voicemailpinreset HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:33359 Content-Length: 23

 

{

"newPIN" : "3621"

}

Sample POST Response

HTTP/1.1 200 OK


 

 

Call Group Voicemail Settings Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The Call Group Voicemail Settings resource provides information about the voicemail settings of the Call Group.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

Link Relations

 

Relation

Description

Visibility

 

v1:vmLanguages

 

Link to get a list of available Voicemail Languages in system.

 

Telco(TenantBasicOrAdvance Management), TenantAdmin


 

 

Sample GET Response

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/12345/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"

}

Modify Request

 

Use a PUT request to modify voicemail settings of Call Group.

 

PUT Request Properties

 

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.

 

 

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}

Sample PUT Response

 

Same as "GET response"


 

 

CallGroupMemberMgmt List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request

         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.

 

Supported Operations

 

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

 

List Details

 

The CallGroupMember list resource provides a list of CallGroupMember resources for the specified CallGroup.

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

callGroupMember

 

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

 

Sample GET 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/12345/callinggroups/3/members"

},

"v1:extensions" : [ {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/callinggroups/3/members/{extension}", "templated" : true

} ]

},

"count" : { "callGroupMember" : 1

},

"total" : { "callGroupMember" : 1

},

"_embedded" : { "callGroupMember" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/members/4332"

}

},

"extension" : "4332", "loggedIn" : true, "twinningEnabled" : true

} ]

}

}


 

 

Modify List Request

POST Request

 

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/12345/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/12345/callinggroups/3/members/4111 Content-Length: 0


 

 

PUT Request

 

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/12345/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/12345/callinggroups/3/members"

},

"v1:extensions" : [ {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/callinggroups/3/members/{extension}", "templated" : true

} ]

},

"count" : { "callGroupMember" : 1

},

"total" : { "callGroupMember" : 1

},

"_embedded" : { "callGroupMember" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callinggroups/3/members/4332"

}

},

"extension" : "4332", "loggedIn" : true, "twinningEnabled" : true

} ]

}

}


 

 

CallPermissionProfile Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The CallPermissionProfile resource provides information about a specific Call Permission Profile.

 

Deleting a CallPermissionProfile is supported.

 

Supported Operations

 

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

 

Resource Details

Properties

 

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

 

Link Relations

 

Relation

Description

Visibility

 

v1:callPermissionProfile Members

 

List members of the call permission profile.

 

Telco(TenantBasicOrAdvance Management), TenantAdmin

Sample GET Response

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/12345/callpermissionprofiles/116"

},

"v1:callPermissionProfileMembers" : {

"href" : "/api/v1/tenants/12345/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

}

}

Modify Request

 

Use a PUT request to modify the properties of a CallPermissionProfile.

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/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

}

}

Sample PUT Response

 

Same as "GET response"


 

 

CallPermissionProfile List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response

         Sample POST Request

         Sample POST Response Description

This relation returns a list of configured CallPermissionProfiles for the tenant.

 

Supported Operations

 

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

List Details

 

The CallPermissionProfile list resource provides a list of CallPermissionProfile resources in summarized form.


 

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

callPermission Profile

 

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

 

callPermission ProfileForUnassigned

 

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

 

Sample GET Response

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/12345/callpermissionprofiles"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/{callPermissionProfileId}", "templated" : true

} ]

},

"count" : { "callPermissionProfile" : 1,

"callPermissionProfileForUnassigned" : 1

},

"total" : { "callPermissionProfile" : 1,

"callPermissionProfileForUnassigned" : 1

},

"_embedded" : { "callPermissionProfileForUnassigned" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/110"

}

},

"callPermissionProfileId" : 110, "name" : "Unassigned"

} ],

"callPermissionProfile" : [ { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116"

}

},

"callPermissionProfileId" : 116, "name" : "Call Permission - Sales"

} ]

}

}

Modify List Request

 

Use a POST request to add a new CallPermissionProfile.


 

 

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

 

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.

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/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

}

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/callpermissionprofiles/34


 

 

CallPermissionProfileMember Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Embedded Representations

         Sample GET Response Description

The CallPermissionProfileMember resource provides information about a specific member of a call permission profile.

 

Supported Operations

 

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.



 

 

Resource Details

Request Parameters

 

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

.

Properties

 

Path

Type

Description

Visibility

 

extension

 

String

 

The extension of the Call PermissionProfileMember.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

Embedded Representations

 

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

 

Extension of the Call PermissionProfileMember, could be a User or Location or ACD extension.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

Sample GET Response

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/12345/callpermissionprofiles/116/members/4332"

}

},

"extension" : "4332", "_embedded" : {

"extension" : {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/extensions/4332"

}

},


 

 

"accountId" : "4332@12345", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"

}

}

}


 

 

CallPermissionProfileMember List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify List Request

         POST Request

         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.

 

Supported Operations

 

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.


 

List Details

 

The CallPermissionProfileMember list resource provides a list of CallPermissionProfileMember resources for the specified CallPermissionProfile.

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

callPermission ProfileMember

 

Each element of the Call PermissionProfileMember list represents a Call PermissionProfileMember.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET 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/12345/callpermissionprofiles/116/members"

},

"v1:extensions" : [ {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116/members/{extension}", "templated" : true

} ]

},

"count" : { "callPermissionProfileMember" : 2

},

"total" : { "callPermissionProfileMember" : 2

},

"_embedded" : { "callPermissionProfileMember" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116/members/4332"

}

},

"extension" : "4332"

}, {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116/members/5001"

}


 

 

},

"extension" : "5001"

} ]

}

}

Modify List Request

POST Request

 

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/12345/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/12345/callpermissionprofiles/116/members/4332

PUT Request

 

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/12345/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/12345/callpermissionprofiles/116/members"

},

"v1:extensions" : [ {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116/members/{extension}",


 

 

"templated" : true

} ]

},

"count" : { "callPermissionProfileMember" : 2

},

"total" : { "callPermissionProfileMember" : 2

},

"_embedded" : { "callPermissionProfileMember" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116/members/4332"

}

},

"extension" : "4332"

}, {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/callpermissionprofiles/116/members/5001"

}

},

"extension" : "5001"

} ]

}

}


 

 

CallWaitingTone Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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)

 

Resource Details

Properties

 

Path

Type

Description

Visibility

 

active

 

Boolean

 

Indicates whether the Call Waiting Tone feature is Active for this user/location.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 117

 

{

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/users/4332/cwt"

}

},

"active" : false

}

Modify Request

 

Use a PUT request to modify the properties of Call Waiting Tone.

 

PUT Request Properties

 

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.

Sample PUT Request

PUT /api/v1/tenants/12345/users/4332/cwt HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463

Content-Length: 21

 

{

"active" : true

}


 

 

Sample PUT Response

 

Same as "GET response"


 

 

ClickToCallConfirmBeforeDial Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The ClickToCallConfirmBeforeDial resource contains the User’s Default ClickToCallConfirmBeforeDial setting.

 

Supported Operations

 

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


 

 

Resource Details

Properties

 

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

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 142

 

{

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/users/4332/clicktocallconfirmbeforedial"

}

},

"active" : false

}

Modify Request

 

Use a PUT request with the following properties in the payload to modify the user’s ClickToCallConfirmBeforeDial setting.

 

PUT Request Properties

 

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

Sample PUT Request

PUT /api/v1/tenants/12345/users/4332/clicktocallconfirmbeforedial HTTP/1.1 Content-Type: application/json; charset=UTF-8

Content-Length: 21

 

{

"active" : true

}

Sample PUT Response

 

Same as "GET response"


 

 

CLID Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

Link Relations

 

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 Representations

 

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

 

did

 

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.

 

 

 

Sample GET Response

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/12345/users/4332/clid"

},

"v1:dids" : {

"href" : "/api/v1/tenants/12345/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/12345/dids/3"

}

},

"assigned" : false, "didId" : 3,

"phoneNumber" : "6132802000"

}

}

}

Modify Request

 

Use a PUT request to modify the properties of Calling Line ID settings.

 

PUT Request Properties

 

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'.

 

Sample PUT Request

PUT /api/v1/tenants/12345/users/4332/clid HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463

Content-Length: 49

 

{

"subscriberClidType" : "DID", "didId" : 3

}

Sample PUT Response

 

Same as "GET response"


 

 

CLID Condition Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Link Relations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The CLID Condition resource provides detail information about a CLID Condition.

 

Supported Operations

 

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)

 

Resource Details

Properties

 

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

Link Relations

 

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

Sample GET Response

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/12345/users/4332/scrrules/1001/clidconditions/1001"

},

"v1:extensions" : {

"href" : "/api/v1/tenants/12345/extensions{?expand,filter,extensionType,agent}", "templated" : true

},

"v1options:clidMatchType" : {

"href" : "/api/v1/enums/clidmatchtype"

}

},

"condId" : 1001,

"digitPattern" : "100", "label" : "Ext100", "matchingType" : "Extension"

}

Modify Request

 

Use a PUT request to modify the properties of a CLID Condition.

 

PUT Request Properties

 

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.

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}


 

 

Sample PUT Response

 

Same as "GET response"


 

 

CLID Condition List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         POST Request

         POST Request Properties

         POST Response

         Sample POST Request

         Sample POST Response

         PUT Request Description

This relation returns a list of CLID Conditions configured for the specified SCR Rule.

 

Supported Operations

 

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)

 

List Details

 

The CLID Condition list resource provides a list of CLID Condition resources.

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

Link Relations

 

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 Representations

 

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

 

clidCondition

 

Each element of the list represents a single CLID Condition.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User

 

y

 

Sample GET Response

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/12345/users/4332/scrrules/1001/clidconditions"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/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/12345/users/4332/scrrules/1001/clidconditions/1001"

}

},

"condId" : 1001,

"digitPattern" : "100", "label" : "Ext100", "matchingType" : "Extension"


 

 

} ]

}

}

POST Request

 

Use a POST request to add a new CLID Condition.

 

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

 

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.

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/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"

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/users/4332/scrrules/1001/clidconditions/4

PUT Request

 

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/12345/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/12345/users/4332/scrrules/1001/clidconditions"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/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/12345/users/4332/scrrules/1001/clidconditions/1001"

}

},

"condId" : 1001,

"digitPattern" : "1888", "label" : "New label", "matchingType" : "StartsWith"

} ]

}

}


 

 

CustomAnnouncement File

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         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.

 

Supported Operations

 

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

Resource Details

 

Use the GET request to download the binary audio file if exist, it not exist, will get a 404 Not Found error.


 

 

Modify Request

 

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.


 

 

DefaultAnnouncement File

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details Description

The DefaultAnnouncement File is the default announcement audio file.

 

Supported Operations

 

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

Resource Details

 

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

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         PUT Response Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

Link Relations

 

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 Representations

 

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

 

businessHoursProfile

 

Current default business hours for the tenant.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y


 

 

Sample GET Response

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/12345/defaultbusinesshours"

},

"v1:businessHoursProfiles" : {

"href" : "/api/v1/tenants/12345/businesshours{?expand,filter}", "templated" : true

}

},

"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours", "_embedded" : {

"businessHoursProfile" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/businesshours/2"

}

},

"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"

}

}

}

Modify Request

 

Use a PUT request to add a new set of business hours.

 

PUT Request Properties

 

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


 

 

PUT Response Properties

 

A successful PUT returns a 200 (OK) and the new default Business Hours.

 

Sample PUT Request

PUT /api/v1/tenants/12345/defaultbusinesshours HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:40873 Content-Length: 34

 

{

"businessHoursProfileId" : 2

}

Sample PUT Response

 

Same as "GET response"


 

 

Default System Announcement Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

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.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

Path

Type

Description

Visibility

 

announcementId

 

Number

 

Identifier for the Announcement which is currently set as Default System Announcement.

 

Telco(SystemManagement, TenantBasicOrAdvance Management)

Link Relations

 

Relation

Description

Visibility

 

v1:systemAnnouncements

 

Acceptable announcement values from System Announcement which can be set as Default System Announcement.

 

Telco(SystemManagement, Tenant BasicOrAdvanceManagement)

Embedded Representations

 

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

 

announcement

 

The announcement which is currently set as Default System Announcement.

 

Telco(SystemManagement, TenantBasicOrAdvance Management), Tenant Admin

 

y

Sample GET Response

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"

}

}

}

Modify Request

 

Use a PUT request to modify the setting of DefaultSystemAnnouncement.

 

PUT Request Properties

 

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.

 

 

Sample PUT Request

PUT /api/v1/defaultsystemannouncement HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:34865

Content-Length: 26

 

{

"announcementId" : 2

}

Sample PUT Response

 

Same as "GET response"


 

 

DID Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

Each DID (aka Incoming Call Routing) resource provides the tenant’s routing configuration for a specific phone number.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

 

Link Relations

 

Relation

Description

Visibility

 

v1:didBusinessHoursMgmt

 

Use this link to change the business hours associated with this Did.

 

Telco(TenantBasicOrAdvance Management), TenantAdmin

Embedded Representations

 

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

 

openHoursExtension

 

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

 

closedHoursExtension

 

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

 

lunchHoursExtension

 

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

 

specialHours Extension

 

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

 

emergencyOverride

 

Defines the Emergency Override configuration for the DID, and indicates whether it is active.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

businessHoursProfile

 

Identifies the Business HoursProfile associated with the DID.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET Response

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/12345/dids/3"

},

"v1:didBusinessHoursMgmt" : {

"href" : "/api/v1/tenants/12345/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/12345/businesshours/2"

}

},

"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"

},

"emergencyOverride" : { "_links" : {

"self" : {


 

 

"href" : "/api/v1/tenants/12345/dids/3/emergencyoverride"

}

},

"active" : true,

"name" : "Emergency Number", "number" : "16132802000"

},

"lunchHoursExtension" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/extensions/4332"

}

},

"accountId" : "4332@12345", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"

},

"specialHoursExtension" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/extensions/4332"

}

},

"accountId" : "4332@12345", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"

},

"closedHoursExtension" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/extensions/4332"

}

},

"accountId" : "4332@12345", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"

},

"openHoursExtension" : { "_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/extensions/4332"

}

},

"accountId" : "4332@12345", "enabled" : true, "extension" : "4332", "extensionType" : "userExt", "name" : "Smith, Dave"

}

}

}

Modify Request

 

Use a PUT request to modify the properties of a DID.


 

 

PUT Request Properties

 

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.

 

Sample PUT Request

PUT /api/v1/tenants/12345/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"

}

Sample PUT Response

 

Same as "GET response"


 

 

DID List Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         List Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Request

         Sample GET Response

         Modify List Request

         POST Request Properties

         POST Response

         Sample POST Request

         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

 

 

Supported Operations

 

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

List Details

 

The DID list resource provides a list of DID resources in summarized form.

 

Request Parameters

 

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.

 

Optional, see details at Filter Support

 

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.


 

 

Link Relations

 

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 Representations

 

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

 

did

 

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

 

Sample GET Request

 

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/12345/dids?assigned=true HTTP/1.1 Host: localhost:34413

Sample GET Response

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/12345/dids?assigned=true"

},

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/dids/{didId}", "templated" : true


 

 

} ]

},

"count" : {

"did" : 1

},

"total" : {

"did" : 1

},

"_embedded" : {

"did" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/dids/3"

}

},

"assigned" : true, "didId" : 3,

"phoneNumber" : "6132802000"

} ]

}

}

Modify List Request

 

Use a POST request to add a new DID.

 

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

 

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

 

POST Response

 

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.

 

Sample POST Request

POST /api/v1/tenants/12345/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

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/dids/41


 

 

DidBusinessHours Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Link Relations

         Embedded Representations

         Sample GET Response

         PUT Request Properties

         PUT Response Properties

         Sample PUT Request

         Sample PUT Response Description

This resource allows the relationship between the DID and its Business Hour Profile to be managed.

 

Supported Operations

 

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

 

Resource Details

Request Parameters

 

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

.

Properties

 

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

Link Relations

 

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 Representations

 

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

 

did

 

Information about the DID.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y


 

 

 

Name

Description

Visibility

Expandable

 

businessHoursProfile

 

Information about the business hours.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET Response

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/12345/didbusinesshours/3"

},

"v1:businessHoursProfiles" : {

"href" : "/api/v1/tenants/12345/businesshours{?expand,filter}", "templated" : true

}

},

"businessHoursProfileId" : 2,

"didId" : 3,

"_embedded" : { "businessHoursProfile" : {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/businesshours/2"

}

},

"businessHoursProfileId" : 2, "businessHoursProfileName" : "Standard Business Hours"

},

"did" : {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/dids/3"

}

},

"assigned" : false, "didId" : 3,

"phoneNumber" : "6132802000"

}

}

}

PUT Request Properties

 

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

 

PUT Response Properties

 

A successful PUT returns a 200 (OK) and the updated Did Business Hour Profile relationship.

 

Sample PUT Request

PUT /api/v1/tenants/12345/didbusinesshours/3 HTTP/1.1 Content-Type: application/json; charset=UTF-8

Host: localhost:40873 Content-Length: 34

 

{

"businessHoursProfileId" : 2

}

Sample PUT Response

 

Same as "GET response"


 

 

DidBusinessHoursMgmt Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Link Relations

         Embedded Representations

         Sample GET Response

         POST Request Properties

         POST Response Properties

         Sample POST Request

         Sample POST Response Description

This resource shows the Business Hour Profile associated with the DID.

 

Supported Operations

 

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


 

 

Resource Details

Request Parameters

 

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

.

Link Relations

 

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 Representations

 

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

 

didBusinessHours

 

The business hours for the DID.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin

 

y

 

Sample GET Response

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/12345/dids/3/businesshourmgmt"

},

"v1:businessHoursProfiles" : [ {

"href" : "/api/v1/tenants/12345/businesshours{?expand,filter}", "templated" : true

} ],

"v1:itemTemplate" : [ {

"href" : "/api/v1/tenants/12345/didbusinesshours/3"

} ]

},

"count" : { "didBusinessHours" : 1

},

"total" : { "didBusinessHours" : 1

},

"_embedded" : { "didBusinessHours" : [ {

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/didbusinesshours/3"

}

},

"businessHoursProfileId" : 2,

"didId" : 3

} ]

}

}

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

 

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

 

POST Response Properties

 

A successful POST returns a 201 (created) and the added Business Hour Profile

 

Sample POST Request

POST /api/v1/tenants/12345/dids/3/businesshourmgmt HTTP/1.1 Content-Type: application/json; charset=UTF-8


 

 

Host: localhost:34413 Content-Length: 34

 

{

"businessHoursProfileId" : 2

}

Sample POST Response

HTTP/1.1 201 Created

Location: /api/v1/tenants/12345/didbusinesshours/3


 

 

DND Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Properties

         Sample GET Response

         Modify Request

         PUT Request Properties

         Sample PUT Request

         Sample PUT Response Description

The DND resource indicates whether the User/Location has activated the Do Not Disturb feature.

 

Supported Operations

 

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)


 

 

 

Resource Details

Properties

 

Path

Type

Description

Visibility

 

active

 

Boolean

 

Indicates whether the Do Not Disturb feature is active for this user/location.

 

Telco(TenantBasicOr AdvanceManagement), TenantAdmin, User

Sample GET Response

HTTP/1.1 200 OK

Content-Type: application/hal+json Content-Length: 117

 

{

"_links" : {

"self" : {

"href" : "/api/v1/tenants/12345/users/4332/dnd"

}

},

"active" : false

}

Modify Request

 

Use a PUT request to modify the properties of a call group.

 

PUT Request Properties

 

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.

Sample PUT Request

PUT /api/v1/tenants/12345/users/4332/dnd HTTP/1.1 Content-Type: application/json; charset=UTF-8 Host: localhost:45463

Content-Length: 21

 

{

"active" : true

}

Sample PUT Response

 

Same as "GET response"


 

 

DynamicSite Resource

Table of Contents

         Description

         Supported Operations

         Permitted Authorities (as defined in API Guide)

         Resource Details

         Request Parameters

         Properties

         Embedded Representations

         Sample GET Response Description

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.

 

Supported Operations

 

GET

 

View Dynamic Site Details HEAD

Get just the header response

 

Permitted Authorities (as defined in API Guide)