Poly Studio X70 Reference guide
Advertisement
Advertisement
REFERENCE GUIDE Software 3.8.0 | November2021 | 3725-86572-008A
Poly VideoOS REST API
Poly G7500, Studio X70, Studio X50, and
Studio X30
PLANTRONICS + POLYCOM
NOW TOGETHER AS POLY
GETTING HELP
For more information about installing, configuring, and administering Poly products or services, go to Poly Online Support
Center .
Plantronics, Inc. (Poly – formerly Plantronics and Poly)
345 Encinal Street
Santa Cruz, California
95060
© 2021 Plantronics, Inc. All rights reserved. Poly, the propeller design, and the Poly logo are trademarks of Plantronics, Inc. All other trademarks are the property of their respective owners.
Contents
1
Before You Begin
This guide describes the REST (Representational State Transfer) API feature, which provides a convenient, scalable, portable, and reliable API for interacting with Poly video systems, enabling users to execute certain functions and retrieve information.
The information in this guide applies to the following Poly video systems:
● Poly G7500
●
●
●
Poly Studio X70
Poly Studio X50
Poly Studio X30
Prerequisite Information
Before you begin working with the REST API, note the following:
● The REST API feature is never disabled.
● Administrator credentials are required for access authentication before REST API commands can be sent. Poly recommends changing the default administrator password before using the REST
API.
● All request and response bodies should be processed as JSON formatted data, unless specifically stated otherwise.
● The REST API cannot accept more than 10 MB of data.
Audience and Purpose of This Guide
The primary audience for this manual is systems integrators who intend to enable configuration and management of the system features through integrated systems. This manual is not intended for end users.
Related Poly and Partner Resources
See the following sites for information related to this product.
● The Poly Online Support Center is the entry point to online product, service, and solution support information including Video Tutorials, Documents & Software, Knowledge Base, Community
Discussions, Poly University, and additional services.
●
●
The Poly Document Library provides support documentation for active products, services, and solutions. The documentation uses responsive HTML5 so you can access and view installation, configuration, or administration content from any online device.
The Poly Community provides access to the latest developer and support information. Create an account to access Poly support personnel and participate in developer and support forums. You can find the latest information on hardware, software, and partner solutions topics, share ideas, and solve problems with your colleagues.
2
Before You Begin
●
●
The Poly Partner Network is an ecosystem of industry leaders who natively integrate the Poly standards-based RealPresence Platform with their customers' current UC infrastructures. Poly
Partners make it easy for you to communicate on a human-to-human level with the applications and devices you use every day.
Poly Software and Services solutions help your business succeed and get the most out of your investment through the benefits of collaboration.
3
REST API Commands
This section describes the configuration parameters and API commands for Poly VideoOS, version 3.
8 .0.
Commands and Structure
Audio
audio
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides details about the system’s audio information.
Protocol: HTTPS
Method: GET
Path: /rest/audio
JSON
Admin
None
Body:
{
"muteLocked": false,
"muted": true,
"numOfMicsConnected": 1,
"volume": 62
}
Applicable return codes 200 OK, 500 Server Error
4
REST API Commands audio
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an audio action on the system related to pressed DTMF characters.
Protocol: HTTPS
Method: POST
Path: /rest/audio
JSON
Admin
Body:
{
"action": < string>,
"dtmfChar": < string>,
"speaker": < string >
} action – The action to complete on the system. Valid strings include “ start ” ,
“ playDTMF ” , “ playTestTone ” , “ stopPlayingTestTone ” , and
“ itpSegmentDetection ” . dtmfChar – Characters provided as the DTMF keypad input. speaker – The speaker selection that plays the tone. Valid strings include
“ SPEAKER_LEFT ” , “ SPEAKER_RIGHT ” , and “ SPEAKER_BOTH ” .
None
200 OK, 400 Bad Request, 500 Server Error
5
REST API Commands audio/acousticfence
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs acoustic fence actions and broadcasts audio fence indicators.
Protocol: HTTPS
Method: POST
Path: /rest/audio/acousticfence
JSON
Admin
Body:
{
"action": < string>,
"dtmfChar": < string>,
"speaker": < string >
} action – The action to complete on the system. Valid strings include “start” ,
“playDTMF” , “playTestTone” , “stopPlayingTestTone” , and
“itpSegmentDetection” . dtmfChar – Characters provided as the DTMF keypad input. speaker – The speaker selection to play the tone. Valid strings include
“SPEAKER_LEFT” , “SPEAKER_RIGHT” , and “SPEAKER_BOTH” .
None
200 OK, 400 Bad Request, 500 Server Error
6
REST API Commands audio/audiometers
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides system audio meter information.
Protocol: HTTPS
Method: GET
Path: /rest/audio/audiometers
JSON
Admin
None
Body:
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 0,
"portName": "FAR_IN",
"validChanMode": "left_and_righ t"
},
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 1,
"portName": "CAMERA_MIC",
"validChanMode": "left_and_right"
},
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 2,
"portName": "IP_TABLE_MIC",
"validChanMode": "left_and_right_and_center"
},
7
REST API Commands
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 2,
"nameInstance": 2,
"portDirection": "IN",
"portInstance": 3,
"portName": "POLYCOM_MIC",
"validChanMode": "left_and_right_and_center"
},
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 3,
"nameInstance": 3,
"portDirection": "IN",
"portInstance": 4,
"portName": "POLYCOM_MIC",
"validChanMode": "left_and_right_and_center"
},
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"me terIndex": 4,
"nameInstance": 4,
"portDirection": "IN",
"portInstance": 5,
"portName": "POLYCOM_MIC",
"validChanMode": "left_and_right_and_center"
},
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 6,
"portName": "MIC_IP_ADAPTER",
"validChanMode": "left_and_right"
},
{
"isValid": false,
8
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 7,
"portName": "CAMERA_MIC",
"validChanMode": "left_and_right"
},
{
"isValid": true,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 9,
"portName": "THREE_POINT_FIVE",
"validChanMode": "left_and_right"
},
{
"isValid": true,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 10,
"portName": "HDMI",
"validChanMode": "left_and_right"
},
{
"isValid": true,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "OUT",
"portInstance": 0,
"portName": "LINE_OUT",
"validChanMode": "left_and_right"
},
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
REST API Commands
9
Applicable return codes
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "IN",
"portInstance": 11,
"portName": "HEADSET_IN",
"validChanMode": "left_and_right"
},
{
"isValid": false,
"levelBack": 20,
"levelCenter": 20,
"levelLeft": 20,
"levelRight": 20,
"meterIndex": 1,
"nameInstance": 1,
"portDirection": "OUT",
"portInstance": 1,
"portName": "HEADSET_OUT",
"validChanMode": "left_and_right"
}
200 OK, 500 Server Error
REST API Commands
10
REST API Commands audio/microphones
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the list of microphones with relevant information for each one.
Protocol: HTTPS
Method: GET
Path: /rest/audio/microphones
JSON
Admin
None
Body:
{
"number": 0,
"mute": "boolean",
"type": 0,
"typeInString": "Polycom IP Table Microphone",
"hwVersion": "string",
"swVersion": "string",
"parentID": 0,
"state": "MIC_STATE_GREEN"
}
200 OK, 500 Server Error Applicable return codes
11
audio/muted
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the microphone mute status.
Protocol: HTTPS
Method: GET
Path: /rest/audio/muted
JSON
Admin
None
Body:
< boolean >
200 OK, 500 Server Error Applicable return codes
REST API Commands
12
REST API Commands audio/muted
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an audio action on the system to mute or unmute microphones.
Protocol: HTTPS
Method: POST
Path: /rest/audio/muted
JSON
Admin
Body:
< boolean >
<b oolean> – True mutes the microphones. False unmutes the microphones.
None
200 OK, 400 Bad Request, 500 Server Error
13
REST API Commands audio/volume
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides information on the microphone volume level.
Protocol: HTTPS
Method: GET
Path: /rest/audio/volume
JSON
Admin
None
Body:
< integer >
200 OK, 500 Server Error Applicable return codes
14
REST API Commands audio/volume
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an audio action on the system to set volume level.
Protocol: HTTPS
Method: POST
Path: /rest/audio/volume
JSON
Admin
Body:
< integer >
<integer> – An integer representing the volume level.
None
200 OK, 400 Bad Request, 500 Server Error
15
REST API Commands
Calendar
calendar
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the status of the meetings calendar server.
Protocol: HTTPS
Method: GET
Path: /rest/calendar
JSON
Admin
None
Body:
{
Status: "ONLINE"
}
Valid status strings include DISABLED , OFFLINE , ONLINE , CONNECTING ,
ERR_AUTHENTICATION , and ERR_UNKNOWN .
200 OK, 500 Server Error
16
REST API Commands calendar/meetings
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides a list of meetings in the calendar. The query parameters may specify either a start and end time range, or a maximum number of upcoming events from the current time. The default query returns all upcoming meetings within 24 hours of the current time.
Protocol: HTTPS
Method: GET
Path: /rest/calendar/meetings
JSON
Admin
The following query parameters are accepted:
?number=<integer>
?
start=<number>&end=<number>
Example Queries:
/rest/calendar/meetings?number=<integer>
/rest/calendar/meetings?start=<number>&end=<number> number=<integer> – An integer representing the maximum number of meeting items to return. Can’t be combined with start and end parameters. start=<number> – The number representing the meeting query start time, in seconds since the epoch (1/1/1970 GMT). The default is the current time. end =<number> – The number representing the meeting query end time, in seconds since the epoch (1/1/1970 GMT). The default is 24 hours after start time.
Body:
{
"actions": [
"sip: #####@ gatewayaddress.com",
"h323:#####@gatewayaddress.com ",
""
],
"body": "",
"canDial": true,
"canceled": false,
"duration": 3600,
"id": "unique meeting ID string",
"inCall": false,
"location": "location string",
"optionalAttendees": [string],
"organizer": "organizer string",
"privateMeeting": false,
"recurring": true,
"requiredAttendees": [
" unique attendee”,
" unique attendee "
],
17
Applicable return codes
"startTime": 1572274800,
"subject": "subject string",
"lastSyncTime": 1572277393
}
200 OK, 500 Server Error
REST API Commands
18
REST API Commands calendar/meetings/{meetingId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides details for a single meeting in the calendar.
Protocol: HTTPS
Method: GET
Path: /rest/calendar/meetings/<meetingId>
JSON
Admin
The following query parameters are accepted:
< meetingId > meetingId – The unique meeting identifier to retrieve from the calendar.
Body:
{
"actions": [
“ sip:#####@gatewayaddress.com",
“ h323:#####@gatewayaddress.com ",
""
],
"body": "",
"canDial": true,
"canceled": false,
"duration": 3600,
"id": "unique meeting ID string",
"inCall": false,
"location": "location string",
"optionalAttendees": [string],
"organizer": "organizer string",
"privateMeeting": false,
"recurring": true,
"requiredAttendees": [
"unique attendee”,
"unique attendee"
],
"startTime": 1572274800,
"subject": "subject string",
"lastSyncTime": 1572277393
}
200 OK, 500 Server Error
19
REST API Commands calendar/meetings/{meetingId}
Description
Protocol and Method
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API dials the calendar meeting specified by meetingId .
Protocol: HTTPS
Method: POST
Path: /rest/calendar/meetings/<meetingId>
JSON
Admin
The following query parameters are accepted:
< meetingId > meetingId – The unique meeting identifier to retrieve from the calendar.
Body:
{
"connectionId": 1,
"success": true
}
200 OK, 404 Unavailable, 500 Server Error
20
REST API Commands calendar/discover
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API retrieves information about the calendar server based on the specified email address and credentials.
Protocol: HTTPS
Method: POST
Path: /rest/calendar/discover
JSON
Admin
Body:
{
"domain": < string>,
"email": < string>,
"username": < string>,
"password": < string>,
"userdomain": < string >
} domain – The domain discovery method. Valid strings include “sip” and
“email” . If SIP is configured, the system attempts to discover the calendar server using the system's configured SIP username, versus using the specified email address. email – The e-mail address of the account that displays calendaring information. username – The user name credential of the account that displays calendaring information. password – The password credential of the account that displays calendaring information. userdomain – The domain of the account that displays calendaring information.
Body:
{
"error": "NOERROR",
"serverUrl": "server address string"
}
200 OK, 500 Server Error
21
REST API Commands
Cameras
cameras/sourceselectable
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the selection availability of the near source camera.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/sourceselectable
JSON
Admin
None
Body: true
200 OK, 404 Unavailable, 500 Server Error
22
cameras/contentstatus
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the system content status.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/contentstatus
JSON
Admin
None
Body:
"CONTENT_IDLE"
200 OK, 500 Server Error Applicable return codes
REST API Commands
23
REST API Commands cameras/near/all
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the index number and information for all near camera sources.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/all
JSON
Admin
None
Body:
{
"cameraIndex": 1,
"iconName": null,
"model": "",
"name": "Main",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": false,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": false,
"hasTilt": false,
"hasZoom": false,
"nearCamera": true,
"ptzcapable": false,
"selected": false,
"trackable": false
} ,
{
"cameraIndex": 2,
"iconName": null,
"model": "",
"name": "Aux",
"sessionID": 0,
"sourceType": "SRC_CONTENT",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": false,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": false,
24
Applicable return codes
"hasTilt": false,
"hasZoom": false,
"nearCamera": true,
"ptzcapable": false,
"selected": false,
"trackable": false
} ,
{
"cameraIndex": 3,
"iconName": null,
"model": "EAGLEEYE_CUBE_USB",
"name": "EagleEye Cube USB",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": true,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": true,
"hasTilt": true,
"hasZoom": true,
"nearCamera": true,
"ptzcapable": true,
"selected": true,
"trackable": true
}
200 OK, 500 Server Error
REST API Commands
25
REST API Commands cameras/near/people
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the index number and information for all near people camera sources.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/people
JSON
Admin
None
Body:
[
{
"cameraIndex": 1,
"iconName": null,
"model": "",
"name": "Main",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": false,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": false,
"hasTilt": false,
"hasZoom": false,
"nearCamera": true,
"ptzcapable": false,
"selected": false,
"trackable": false
},
{
"cameraIndex": 3,
"iconName": null,
"model": "EAGLEEYE_CUBE_USB",
"name": "EagleEye Cube USB",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": true,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
26
Applicable return codes
"hasPan": true,
"hasTilt": true,
"hasZoom": true,
"nearCamera": true,
"ptzcapable": true,
"selected": true,
"trackable": true
}
]
200 OK, 500 Server Error
REST API Commands
27
REST API Commands cameras/near/content
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the index number and information for all near content camera sources.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/content
JSON
Admin
None
Body:
[
{
"cameraIndex": 3,
"iconName": null,
"model": "EAGLEEYE_CUBE_USB",
"name": "EagleEye Cube USB",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": true,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": true,
"hasTilt": true,
"hasZoom": true,
"nearCamera": true,
"ptzcapable": true,
"selected": true,
"trackable": true
}
]
200 OK, 500 Server Error Applicable return codes
28
REST API Commands cameras/near/{sourceID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides information for the near camera specified by sourceID .
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/<sourceID>
JSON
Admin
< sourceID > sourceID – The unique identifier for the camera index.
Body:
{
"cameraIndex": 2,
"iconName": null,
"model": "",
"name": "Aux",
"sessionID": 0,
"sourceType": "SRC_CONTENT",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": false,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": false,
"hasTilt": false,
"hasZoom": false,
"nearCamera": true,
"ptzcapable": false,
"selected": false,
"trackable": false
}
200 OK, 404 Unavailable, 500 Server Error Applicable return codes
29
REST API Commands cameras/near/{sourceID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs the move operation for the near camera specified by sourceID .
Protocol: HTTPS
Method: POST
Path: /rest/cameras/near/<sourceID>
JSON
Admin
The following query parameters are accepted:
< sourceID > sourceID – The unique identifier for the camera index.
Body:
{
"action": < string>,
"direction": < string>,
"message": < string>,
"withImage": < string >
} action – Controls either the selected near people camera or controls the near people camera preset. Valid strings are “ moveStart” , “moveStop” , “store” ,
“clear” , and “activate” . direction – Defines the camera direction for action moveStart . Valid strings are “MOVE_LEFT” , “MOVE_RIGHT” , “MOVE_UP” , “MOVE_DOWN” ,
“MOVE_ZOOMIN” , “MOVE_ZOOMOUT” , “MOVE_FOCUSNEAR” , and
“MOVE_FOCUSFAR” . message – Defines the camera to select. Valid strings are “ LeftCamera” ,
“RightCamera” , and “BothCamera” . withImage – Defines whether or not to store camera presets with an image.
Valid strings are “Yes” and “No” .
None
200 OK, 404 Unavailable, 500 Server Error
30
REST API Commands cameras/near/selectedpeople
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides information for the selected near people camera source.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/selectedpeople
JSON
Admin
None
Body:
{
"cameraIndex": 3,
"iconName": null,
"model": "EAGLEEYE_CUBE_USB",
"name": "EagleEye Cube USB",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": true,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": true,
"hasTilt": true,
"hasZoom": true,
"nearCamera": true,
"ptzcapable": true,
"selected": true,
"trackable": true
}
200 OK, 500 Server Error
31
REST API Commands cameras/near/selectedpeople
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs the move operation for the selected near people camera source.
Protocol: HTTPS
Method: POST
Path: /rest/cameras/near/selectedpeople
JSON
Admin
Body:
{
"action": < string>,
"direction": < string>,
"message": < string>,
"withImage": < string >
} action – Controls either the selected near people camera or controls the near people camera preset. Valid strings are “moveStart” , “moveStop” , “store” ,
“clear” , and “activate” . direction – Defines the camera direction for action moveStart . Valid strings are “MOVE_LEFT” , “MOVE_RIGHT” , “MOVE_UP” , “MOVE_DOWN” ,
“MOVE_ZOOMIN” , “MOVE_ZOOMOUT” , “MOVE_FOCUSNEAR” , and
“MOVE_FOCUSFAR” . message – Defines the camera to select. Valid strings are “LeftCamera” ,
“RightCamera” , and “BothCamera” . withImage – Defines whether or not to store camera presets with an image.
Valid strings are “Yes” and “No” .
None
200 OK, 500 Server Error
32
REST API Commands cameras/near/selectedcontent
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides information for the selected near content camera source.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/selectedcontent
JSON
Admin
None
Body:
{
"cameraIndex": 2,
"iconName": null,
"model": "",
"name": "Aux",
"sessionID": 0,
"sourceType": "SRC_CONTENT",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": false,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": false,
"hasTilt": false,
"hasZoom": false,
"nearCamera": true,
"ptzcapable": false,
"selected": false,
"trackable": false
}
200 OK, 500 Server Error
33
REST API Commands cameras/near/selectedcontent
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs the move operation for the selected near content camera source.
Protocol: HTTPS
Method: POST
Path: /rest/cameras/near/selectedcontent
JSON
Admin
Body:
{
"action": <string>,
"direction": <string>,
"message": < string>,
"withImage": <string>
} action – Controls either the selected near people camera or controls the near people camera preset. Valid strings are “moveStart” , “moveStop” , “store” ,
“clear” , and “activate” .
direction – Defines the camera direction for action moveStart . Valid strings are “MOVE_LEFT” , “MOVE_RIGHT” , “MOVE_UP” , “MOVE_DOWN” ,
“MOVE_ZOOMIN” , “MOVE_ZOOMOUT” , “MOVE_FOCUSNEAR” , and
“MOVE_FOCUSFAR” .
message – Defines the camera to select. Valid strings are “LeftCamera” ,
“RightCamera” , and “BothCamera” .
withImage – Defines whether or not to store camera presets with an image.
Valid strings are “Yes” and “No” .
None
200 OK, 500 Server Error
34
cameras/near/presets/all
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the list of near camera presets.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/presets/all
JSON
Admin
None
Body:
[
{
"imageLocation": < string>,
"index": 1,
"sessionId": 0,
"near": true,
"stored": true
},
{
"imageLocation": < string>,
"index": 2,
"sessionId": 0,
"near": true,
"stored": true
},
{
"imageLocation": < string>,
"index": 3,
"sessionId": 0,
"near": true,
"stored": true
}
]
200 OK, 500 Server Error Applicable return codes
REST API Commands
35
REST API Commands cameras/near/presets/{index}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the near camera presets information for a specified camera stored in the index.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/near/presets/<index>
JSON
Admin
The following query parameters are accepted:
< index > index – The unique identifier of the near camera to retrieve from the index.
Body:
{
"imageLocation": < string>,
"index": 1,
"sessionId": 0,
"near": true,
"stored": true
}
200 OK, 400 Bad Request, 500 Server Error
36
REST API Commands cameras/near/presets/{index}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API updates the near camera presets information for a specified camera stored in the index.
Protocol: HTTPS
Method: POST
Path: /rest/cameras/near/presets/<index>
JSON
Admin
The following query parameters are accepted:
< index > index – The unique identifier of the near camera to retrieve from the index.
Body:
{
"action": < string>,
"direction": < string>,
"message": " string>,
"withImage": < string >
} action – Controls either the selected near people camera or controls the near people camera preset. Valid strings are “moveStart” , “moveStop” , “store” ,
“clear” , and “activate” . direction – Defines the camera direction for action moveStart . Valid strings are “MOVE_LEFT” , “MOVE_RIGHT” , “MOVE_UP” , “MOVE_DOWN” ,
“MOVE_ZOOMIN” , “MOVE_ZOOMOUT” , “MOVE_FOCUSNEAR” , and
“MOVE_FOCUSFAR” . message – Defines the camera to select. Valid strings are “LeftCamera” ,
“RightCamera” , and “BothCamera” . withImage – Defines whether or not to store camera presets with an image.
Valid strings are “Yes” and “No” .
None
200 OK, 400 Bad Request, 500 Server Error
37
REST API Commands cameras/near/position/{sourceID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs the move operation for the selected near camera source, using the exact given coordinates or the coordinates as an offset from the current position.
Protocol: HTTPS
Method: POST
Path: /rest/cameras/near/position/<sourceID>
JSON
Admin
The following query parameters are accepted:
< sourceID > sourceID – The available value is SELECTED_PEOPLE .
Body:
{
“camPosition”: {
" pan": <integer>,
" tilt": < integer>,
" zoom": <integer>,
} ,
“relative”: <b oolean >
} pan – Pan coordinate ranges from 50000 to +50000 . tilt – Tilt coordinate ranges from 50000 to +50000 . zoom – Zoom coordinate ranges from 50000 to +50000 . relative – True sets the given coordinates. False sets an offset of the given coordinates from current position.
None
200 OK, 400 Bad Request, 500 Server Error
38
REST API Commands cameras/far/all
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the list and information for all far camera sources.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/far/all
JSON
Admin
None
Body:
[
{
"cameraIndex": 1,
"iconName": null,
"model": "",
"name": "Main",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": false,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": false,
"hasTilt": false,
"hasZoom": false,
"nearCamera": true,
"ptzcapable": false,
"selected": false,
"trackable": false
}
]
200 OK, 404 Unavailable, 500 Server Error Applicable return codes
39
REST API Commands cameras/far/selectedpeople
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides information for the selected far people camera source.
Protocol: HTTPS
Method: GET
Path: /rest/cameras/far/selectedpeople
JSON
Admin
None
Body:
{
"cameraIndex": 3,
"iconName": null,
"model": "EAGLEEYE_CUBE_USB",
"name": "EagleEye Cube USB",
"sessionID": 0,
"sourceType": "SRC_PEOPLE",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": true,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": true,
"hasTilt": true,
" hasZoom": true,
"nearCamera": true,
"ptzcapable": true,
"selected": true,
"trackable": true
}
200 OK, 500 Server Error Applicable return codes
40
REST API Commands cameras/far/selectedpeople
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs the move operation for the selected far people camera source.
Protocol: HTTPS
Method: POST
Path: /rest/cameras/far/selectedpeople
JSON
Admin
Body:
{
"action": < string>,
"direction": < string>,
"message": < string>,
"withImage": < string >
} action – Controls either the selected near people camera or controls the near people camera preset. Valid strings are “moveStart” , “moveStop” , “store” ,
“clear” , and “activate” . direction – Defines the camera direction for action moveStart . Valid strings are “MOVE_LEFT” , “MOVE_RIGHT” , “MOVE_UP” , “MOVE_DOWN” ,
“MOVE_ZOOMIN” , “MOVE_ZOOMOUT” , “MOVE_FOCUSNEAR” , and
“MOVE_FOCUSFAR” . message – Defines the camera to select. Valid strings are “LeftCamera” ,
“RightCamera” , and “BothCamera” . withImage – Defines whether or not to store camera presets with an image.
Valid strings are “Yes” and “No” .
None
200 OK, 400 Bad Request, 500 Server Error
41
REST API Commands cameras/far/{sourceID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides information for the far camera specified by sourceID .
Protocol: HTTPS
Method: GET
Path: /rest/cameras/far/<sourceID>
JSON
Admin
The following query parameters are accepted:
< sourceID > sourceID – The unique identifier for the camera index.
Body:
{
"cameraIndex": 2,
"iconName": null,
"model": "",
"name": "Aux",
"sessionID": 0,
"sourceType": "SRC_CONTENT",
"stateAutoFocus": "off",
"stateFreeze": "off",
"stateMarker": "off",
"connected": false,
"hasAutoFocus": false,
"hasFocus": false,
"hasFreeze": false,
"hasMarker": false,
"hasPan": false,
"hasTilt": false,
"hasZoom": false,
"nearCamera": true,
"ptzcapable": false,
"selected": false,
"trackable": false
}
200 OK, 400 Bad Request, 500 Server Error Applicable return codes
42
REST API Commands cameras/far/{sourceID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs the move operation for the far camera specified by sourceID .
Protocol: HTTPS
Method: POST
Path: /rest/cameras/far/<sourceID>
JSON
Admin
The following query parameters are accepted:
< sourceID > sourceID – The unique identifier for the camera index.
Body:
{
"action": < string>,
"direction": < string>,
"message": < string>,
"withImage": < string >
} action – Controls either the selected near people camera or controls the near people camera preset. Valid strings are “moveStart” , “moveStop” , “store” ,
“clear” , and “activate” . direction – Defines the camera direction for action moveStart . Valid strings are “MOVE_LEFT” , “MOVE_RIGHT” , “MOVE_UP” , “MOVE_DOWN” ,
“MOVE_ZOOMIN” , “MOVE_ZOOMOUT” , “MOVE_FOCUSNEAR” , and
“MOVE_FOCUSFAR” . message – Defines the camera to select. Valid strings are “LeftCamera” ,
“RightCamera” , and “BothCamera” . withImage – Defines whether or not to store camera presets with an image.
Valid strings are “Yes” and “No” .
None
200 OK, 400 Bad Request, 500 Server Error
43
REST API Commands cameras/snapshot/{snapshotID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API returns a stored snapshot specified by snapshotID .
Protocol: HTTPS
Method: GET
Path: /rest/cameras/snapshot/<snapshotID>
JSON
Admin
The following query parameters are accepted:
< snapshotID > snapshotID – The available values are near_image_1.jpg
, far_image_1.jpg
, or content_image_1.jpg
.
None
200 OK, 400 Bad Request, 500 Server Error
44
REST API Commands
Collaboration
collaboration
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the current state of the collaboration session.
Protocol: HTTPS
Method: GET
Path: /rest/collaboration
JSON
Admin
None
Body:
{
"SessionId": <string>,
" sessionState": "ACTIVE"
}
200 OK, 404 Unavailable, 500 Server Error
45
REST API Commands collaboration
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an action on the active collaboration session.
Protocol: HTTPS
Method: POST
Path: /rest/collaboration
JSON
Admin
Body:
{
"action": < string>,
} action – The action to perform on the collaboration session. The only valid string is “END” .
None
200 OK, 204 No Content, 400 Bad Request, 500 Server Error
46
REST API Commands collaboration/content
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API returns a context ID and begins the content save process.
Protocol: HTTPS
Method: POST
Path: /rest/collaboration/content
JSON
Admin
The following query parameters are accepted:
?pin=<string>
Example Query:
/rest/collaboration/content?pin=<string> pin=<string> – The room pin to authorize access to content session
Body:
{
"context_id": "1572362187453"
}
200 OK, 204 No Content, 403 Forbidden, 500 Server Error
47
REST API Commands collaboration/content
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides previously-saved content as an attachment, using context_id from the collaboration/content POST command.
Protocol: HTTPS
Method: GET
Path: /rest/collaboration/content
JSON
Admin
The following query parameters are accepted:
?pin=<string>&context id=<string>
Example Query:
/rest/collaboration/content?pin=<string>&context id=<string> pin=<string > – The room pin to authorize access to content session. context id=<string> – The context_id provided from the collaboration/content POST command.
None
200 OK, 204 No Content, 500 Server Error
48
REST API Commands collaboration/contentsavestatus
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the content save enable/disable status.
Protocol: HTTPS
Method: GET
Path: /rest/collaboration/contentsavestatus
JSON
Admin
The following query parameters are accepted:
?pin=<string>&context id=<string>
Example Query:
/rest/collaboration/contentsavestatus?pin=<string>&status=<s tring> pin=<string> – The room pin to authorize access to content session. status=<string> – True enables save. False disables save.
None
200 OK, 500 Server Error
49
REST API Commands collaboration/content/all
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides and downloads a ZIP file containing saved content from the active collaboration session.
Protocol: HTTPS
Method: GET
Path: /rest/collaboration/content/all
JSON
Admin
The following query parameters are accepted:
?pin=<string>
Example Query:
/rest/collaboration/content/all?pin=<string> pin=<string> – The room pin to authorize access to content session.
None
200 OK, 204 No Content, 403 Forbidden, 500 Server Error
50
REST API Commands
Conferences
conferences
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides a list of all current conference calls on the system.
Protocol: HTTPS
Method: GET
Path: /rest/conferences
JSON
Admin
None
Body:
[
{
"capabilities": {
"canAcquireChair": false,
"canAcquireFloor": false,
"canAddTerminal": false,
"canAddVideo": false,
"canBlastDial": false,
"canEscalateCall": false,
"canGetRoster": false,
"canHangupConference": true,
"canHoldConf": false,
"canJoinCCCP": false,
"canJoinChairControlConf": false,
"canJoinInternalConf": false,
"canJoinMRC": false,
"canLeaveConference": true,
"canMuteConference": false,
"canMuteTerminal": false,
"canPresent": true,
"canRemoveTerminal": true,
"canShowCloseWide": false,
"canSupportSecurityClassification": false,
"cannotJoinConf": false
},
"connections": [
{
"address": " ######@ gatewayaddress.com",
"answerable": false,
"authState": "NONE",
"callInfo": "SIP",
"callType": "SIP",
"canAddVideo": false,
"causeCode": 0,
"duration": 16,
"encrypted": true,
51
REST API Commands
"groupname": "",
"grouptype": "NONE",
"id": "2",
"incoming": false,
"mediaCount": 0,
"mediaType": "AUDIOVIDEO",
"parentConfId": "0",
"percentConnected": 100,
"rate": 2048,
"referredBy": "",
"startTime": 1572444157000,
"state": "CONNECTED",
"terminals": [
{
"href": "/rest/conferences/0/terminals/1
"rel": "item"
}
],
"type": "MCU",
"videoEscalationState": "NONE"
}
],
"duration": 16,
"holdStartTime": 0,
"holdState": "NOTHELD",
"id": "0",
"isActive": true,
"isHolding": false,
"isMute": false,
"isSvcConference": false,
"isWaitingInLobby": false,
"mediaServerControlEvent": "MediaServerUnknown",
"mediaServerType": "MediaUnknown",
"startTime": 1572444157000,
"terminals": [
{
"address": "######@gatewayaddress.com ",
"callerID": "######@gatewayaddress.com ",
"canSupportMediaStatus": false,
"fullDescription": false,
"holdState": "NOTHELD",
"id": "1",
"mediaServerType": "MediaUnknown",
"muteLocked": false,
"muted": false,
"name": "participant_name",
"parentConfId": "0",
"parentConnectionId": "2",
"streamsState": "AVC",
"systemID": "bridge_identification",
"termType": "REAL"
}
]
}
52
Applicable return codes
]
200 OK, 500 Server Error
REST API Commands
53
REST API Commands conferences
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs a single participant conference call.
Protocol: HTTPS
Method: POST
Path: /rest/conferences
JSON
Admin
Body:
{
"address": < string>,
"rate": < integer>,
"dialType": < string>,
"password": < string >
} address – The address, hostname, or URI to dial. rate – An integer representing the call bitrate. dialType – The type of call specified in a conference dial request. Not all types may be supported on a given system. Valid strings include “ LOOPBACK” ,
“AUTO” , “VIDEO” , “VOICE” , “H320” , “H323” , “SIP” , “GATEWAY” , “POTS” ,
“ISDN_VOICE” , “SIP_SPEAKERPHONE” , “POTS_SPEAKERPHONE” ,
“VOICE_H323” , “VOICE_SIP” , and “VOICE_GATEWAY” . password – The conference password, when required to connect to the conference call.
Body:
[
{
"rel": "string",
"href": "string"
}
]
200 OK, 415 Error
54
REST API Commands conferences/blast
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
This API performs a blast dial to establish a multiple participant conference call.
Protocol: HTTPS
Method: POST
Path: /rest/conferences/blast
JSON
Admin
Body:
{
"endPointList": [
{
"addresses": [
{
"address": < string>,
"rate": < integer>,
"dialType": < string >
},
{
"address": < string>,
"rate": < integer>,
"dialType": < string >
}
]
},
{
"addresses": [
{
"address": < string>,
"rate": < integer>,
"dialType": < string >
},
{
"address": < string>,
"rate": < integer>,
"dialType": < string >
}
]
}
],
"password": < string >
} address – The address, hostname, or URI to dial. rate – An integer representing the call bitrate. dialType – The type of call specified in a conference dial request. Not all types may be supported on a given system. Valid strings include “LOOPBACK” ,
“AUTO” , “VIDEO” , “VOICE” , “H320” , “H323” , “SIP” , “GATEWAY” , “POTS” ,
55
REST API Commands
Output
Applicable return codes
“ISDN_VOICE” , “SIP_SPEAKERPHONE” , “POTS_SPEAKERPHONE” ,
“VOICE_H323” , “VOICE_SIP” , and “VOICE_GATEWAY” . password – The conference password, when required to connect to the conference call.
Body:
{
"rel": "string",
"href": "string"
}
200 OK, 400 Bad Request, 415 Error
56
conferences/capabilities
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the system’s conference call capabilities.
Protocol: HTTPS
Method: GET
Path: /rest/conferences/capabilities
JSON
Admin
None
Body:
{
"canBlastDial": true,
"canMakeAudioCall": true,
"canMakeVideoCall": true
}
200 OK Applicable return codes
REST API Commands
57
REST API Commands conferences/{confID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides information for the specified conference call.
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>
JSON
Admin
The following query parameters are accepted:
< confID > confID – The unique identifier of the conference to retrieve.
Body:
{
"id": "string",
"connections": [
{
"id": "string",
"type": "ENDPOINT",
"state": "INACTIVE",
"callType": "UNKNOWN",
"mediaType": "UNKNOWN",
"callInfo": "string",
"causeCode": 0,
"rate": 0,
"address": "string",
"percentConnected": 0,
"incoming": true,
"encrypted": true,
"authState": "NONE",
"mediaCount": 0,
"terminals": [
{
"rel": "self",
"href": "string"
}
],
"startTime": 0,
"duration": 0,
"parentConfId": "string",
"answerable": true,
"groupname": "string",
"grouptype": "string",
"canAddVideo": true,
"videoEscalationState": "string",
"referredBy": "string"
}
],
"terminals": [
58
REST API Commands
{
"id": "string",
"name": "string",
"callerID": "string",
"address": "string",
"systemID": "string",
"muted": true,
"holdState": "NOTHELD",
"termType": "REAL",
"muteLocked": true,
"canSupportMediaStatus": true,
"parentConfId": "string",
"parentConnectionId": "string",
"fullDescription": true,
"mediaServerType": "string",
"streamsState": "string"
}
],
"capabilities": {
"canGetRoster": true,
"canMuteConference": true,
"canMuteTerminal": true,
"canPresent": true,
"canAddTerminal": true,
"canRemoveTerminal": true,
"canAcquireChair": true,
"canAcquireFloor": true,
"canHangupConference": true,
"canLeaveConference": true,
"canBlastDial": true,
"canEscalateCall": true,
"canHoldConf": true,
"canShowCloseWide": true,
"canJoinChairControlConf": true,
"canJoinCCCP": true,
"canJoinMRC": true,
"canJoinInternalConf": true,
"cannotJoinConf": true,
"canSupportSecurityClassification": true,
"canAddVideo": true
},
"startTime": 0,
"duration": 0,
"isSvcConference": true,
"isActive": true,
"isHolding": true,
"isMute": true,
"holdState": "NOTHELD",
"holdStartTime": 0,
"mediaServerType": "string",
"mediaServerControlEvent": "string",
"isWaitingInLobby": true
}
59
Applicable return codes 200 OK, 400 Bad Request, 404 Unavailable
REST API Commands
60
REST API Commands conferences/{confID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API hangs up and disconnects the specified conference call.
Protocol: HTTPS
Method: DELETE
Path: /rest/conferences/<confID>
JSON
Admin
The following query parameters are accepted:
< confID > confID – The unique identifier of the conference to retrieve.
Body:
0
200 OK, 404 Unavailable, 500 Server Error Applicable return codes
61
REST API Commands conferences/{confID}/connections
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides a list of connections associated to the specified conference.
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/connections
JSON
Admin
The following query parameters are accepted:
?filter=<string>
Example Query:
/rest/conferences/<confID>/connections?filter=<string> confID – The unique identifier of the conference to retrieve.
?filter=<string> – Available values are ALL , ACTIVE , ANSWERABLE ,
INCOMING , and PENDING .
Body:
[
{
"address": "######@gatewayaddress.com",
"answerable": false,
"authState": "NONE",
"callInfo": "SIP",
"callType": "SIP",
"canAddVideo": false,
"causeCode": 0,
"duration": 16,
"encrypted": true,
"groupname": "",
"grouptype": "NONE",
"id": "2",
"incoming": false,
"mediaCount": 0,
"mediaType": "AUDIOVIDEO",
"parentConfId": "0",
"percentConnected": 100,
"rate": 2048,
"referredBy": "",
"startTime": 1572444157000,
"state": "CONNECTED",
"terminals": [
{
"href": "/rest/conferences/0/terminals/1
"rel": "item"
}
],
"type": "MCU",
62
REST API Commands
Applicable return codes
"videoEscalationState": "NONE"
}
]
200 OK, 404 Unavailable
63
REST API Commands conferences/{confID}/connections
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API dials and adds a new endpoint connection to an active conference specified by confID .
Protocol: HTTPS
Method: POST
Path: /rest/conferences/<confID>/connections
JSON
Admin
The following query parameters are accepted:
?filter=<string>
Example Query:
/rest/conferences/<confID>/connections confID – The unique identifier of the conference to retrieve.
Body:
{
"address": "string",
"rate": 0,
"dialType": "LOOPBACK",
"password": "string"
}
Body:
[
{
"rel": "self",
"href": "string"
}
]
200 OK, 404 Unavailable, 415 Error
64
REST API Commands conferences/{confID}/connections/{connID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides information for a specific connection using specified conference call using confID .
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/connections/<connID>
JSON
Admin
The following query parameters are accepted:
<confID>/connections/<connID> confID – The unique identifier of the conference to retrieve. connID – The unique identifier for the connection to retrieve.
Body:
{
"id": "string",
"type": "ENDPOINT",
"state": "INACTIVE",
"callType": "UNKNOWN",
"mediaType": "UNKNOWN",
"callInfo": "string",
"causeCode": 0,
"rate": 0,
"address": "string",
"percentConnected": 0,
"incoming": true,
"encrypted": true,
"authState": "NONE",
"mediaCount": 0,
"terminals": [
{
"rel": "self",
"href": "string"
}
],
"startTime": 0,
"duration": 0,
"parentConfId": "string",
"answerable": true,
"groupname": "string",
"grouptype": "string",
"canAddVideo": true,
"videoEscalationState": "string",
"referredBy": "string"
}
200 OK, 404 Unavailable connID , on the
65
REST API Commands conferences/{confID}/connections/{connID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API hangs up and disconnects a specific connection using specified conference call using confID .
Protocol: HTTPS
Method: DELETE
Path: /rest/conferences/<confID>/connections/<connID>
JSON
Admin
The following query parameters are accepted:
<confID>/connections/<connID> confID – The unique identifier of the conference to retrieve. connID – The unique identifier for the connection to retrieve.
Body:
0
200 OK, 404 Unavailable, 500 Server Error connID , on the
66
REST API Commands conferences/{confID}/terminals
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides a list of terminals associated with the specified conference call using confID .
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/terminals
JSON
Admin
The following query parameters are accepted:
< confID > confID – The unique identifier of the conference to retrieve.
Body:
[
{
"id": "string",
"name": "string",
"callerID": "string",
"address": "string",
"systemID": "string",
"muted": true,
"holdState": "NOTHELD",
"termType": "REAL",
"muteLocked": true,
"canSupportMediaStatus": true,
"parentConfId": "string",
"parentConnectionId": "string",
"fullDescription": true,
"mediaServerType": "string",
"streamsState": "string"
}
]
200 OK, 404 Unavailable
67
REST API Commands conferences/{confID}/terminals/{termID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides a specific terminal using specified conference call using confID . termID , associated with the
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/terminals/<termID>
JSON
Admin
The following query parameters are accepted:
<confID>/terminals/<termID> confID – The unique identifier of the conference to retrieve. termID – The unique identifier for the terminal to retrieve.
Body:
{
"id": "string",
"name": "string",
"callerID": "string",
"address": "string",
"systemID": "string",
"muted": true,
"holdState": "NOTHELD",
"termType": "REAL",
"muteLocked": true,
"canSupportMediaStatus": true,
"parentConfId": "string",
"parentConnectionId": "string",
"fullDescription": true,
"mediaServerType": "string",
"streamsState": "string"
}
200 OK, 404 Unavailable
68
REST API Commands conferences/{confID}/terminals/{termID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API hangs up and disconnects a specific terminal using with the specified conference call using confID .
Protocol: HTTPS
Method: DELETE
Path: /rest/conferences/<confID>/terminals/<termID>
JSON
Admin
The following query parameters are accepted:
<confID>/terminals/<termID> confID – The unique identifier of the conference to retrieve. termID – The unique identifier for the terminal to retrieve.
Body:
0
200 OK, 404 Unavailable, 500 Server Error termID , associated
69
REST API Commands conferences/{confID}/mediastats
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
This API provides a list of connections associated to the specified conference.
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/mediastats
JSON
Admin
The following query parameters are accepted:
<confID> confID – The unique identifier of the conference to retrieve.
Output
Body:
[
{
"activeAnnexes": " --",
"actualBitRate": 64,
"actualFrameRate": 0,
"address": "none",
"bitRate": 64,
"connectionID": "2",
"encryptionAlgorithm": "AES 256",
"encryptionMode": "ctr",
"encryptionType": "TLS/SDES",
"errorConcealment": " --",
"frameRate": 0,
"index": 0,
"jitter": 0,
"latency": 126,
"maxJitter": 0,
"mediaAlgorithm": "SirenLPR",
"mediaDirection": "TX",
"mediaFormat": " --",
"mediaState": "OPENED",
"mediaStream": "audioTx",
"mediaType": "AUDIO",
"numberOfErrors": 0,
"packetLoss": 1,
"percentPacketLoss": 0.0,
"prevTermId": " 1",
"quality": 100,
"reservationError": "err0",
"reservationProtocol": "rsvp",
"reservationState": "reserving",
"termId": "1",
"totalPackets": 763,
"uniqueId": null
},
{
70
"activeAnnexes": " --",
"actualBitRate": 64,
"actualFrameRate": 0,
"address": "none",
"bitRate": 64,
"connectionID": "2",
"encryptionAlgorithm": "AES 256",
"encryptionMode": "ctr",
"encryptionType": "TLS/SDES",
"errorConcealment": " --",
"frameRate": 0,
"index": 0,
"jitter": 3,
"latency": 0,
"maxJitter": 3,
"mediaAlgorithm": "SirenLPR",
"mediaDirection": "RX",
"mediaFormat": " --",
"mediaState": "OPENED",
"mediaStream": "audioRx",
"mediaType": "AUDIO",
"numberOfErrors": 0,
"packetLoss": 0,
"percentPacketLoss": 0.0,
"prevTermId": " 1",
"quality": 100,
"reservationError": "err0",
"reservationProtocol": "rsvp",
"reservationState": "notReserved",
"termId": "1",
"totalPackets": 759,
"uniqueId": null
},
{
"activeAnnexes": " --",
"actualBitRate": 1,
"actualFrameRate": 0,
"address": "none",
"bitRate": 1984,
"connectionID": "2",
"encryptionAlgorithm": "AES 256",
"encryptionMode": "ctr",
"encryptionType": "TLS/SDES",
"errorConcealment": " --",
" frameRate": 0,
"index": 0,
"jitter": 0,
"latency": 152,
"maxJitter": 0,
"mediaAlgorithm": "H.264
HP",
"mediaDirection": "TX",
"mediaFormat": "1080p",
"mediaState": "OPENED",
"mediaStream": "videoTx",
REST API Commands
71
Applicable return codes
"mediaType": "VIDEO",
"numberOfErrors": 0,
"packetLoss": 0,
"percentPacketLoss": 0.0,
"prevTermId": " 1",
"quality": 100,
"reservationError": "err0",
"reservationProtocol": "rsvp",
"reservationState": "reserving",
"termId": "1",
"totalPackets": 3132,
"uniqueId": null
}
{
"activeAnnexes": " --",
"actualBitRate": 1535,
"actualFrameRate": 7,
"address": "none",
"bitRate": 1984,
"connectionID": "2",
"encryptionAlgorithm": "AES 256",
"encryptionMode": "ctr",
"encryptionType": "TLS/SDES",
"errorConcealment": "LPRv1",
"frameRate": 7,
"index": 0,
"jitter": 0,
"latency": 152,
"maxJitter": 16,
"mediaAlgorithm": "H.264
HP",
"mediaDirection": "RX",
"mediaFormat": "1080p",
"mediaState": "OPENED",
"mediaStream": "videoRx",
"mediaType": "VIDEO",
"numberOfErrors": 0,
"packetLoss": 19,
"percentPacketLoss": 0.0,
"prevTermId": " 1",
"quality": 100,
"reservationError": "err0",
"reservationProtocol": "rsvp",
"reservationState": "notReserved",
"termId": "1",
"totalPackets": 1249,
"uniqueId": null
}
]
200 OK, 404 Unavailable
REST API Commands
72
REST API Commands conferences/{confID}/connections/{connID}/mediastat
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides media statistics for a specific connection using specified conference call using confID .
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/connections/<connID>/mediastat
JSON
Admin
The following query parameters are accepted:
<confID>/connections/<connID>/mediastat confID – The unique identifier of the conference to retrieve. connID – The unique identifier for the connection to retrieve.
Body:
[
{
"connectionID": "string",
"mediaDirection": "string",
"mediaType": "string",
"index": 0,
"mediaState": "string",
"mediaStream": "string",
"mediaAlgorithm": "string",
"mediaFormat": "string",
"encryptionType": "string",
"encryptionAlgorithm": "string",
"encryptionMode": "string",
"errorConcealment": "string",
"numberOfErrors": 0,
"bitRate": 0,
"actualBitRate": 0,
"frameRate": 0,
"actualFrameRate": 0,
"totalPackets": 0,
"packetLoss": 0,
"percentPacketLoss": 0,
"jitter": 0,
"maxJitter": 0,
"latency": 0,
"address": "string",
"activeAnnexes": "string",
"reservationProtocol": "string",
"reservationState": "string",
"reservationError": "string",
"termId": "string",
"prevTermId": "string",
"quality": 0, connID , on the
73
Applicable return codes
"uniqueId": "string"
}
]
200 OK, 404 Unavailable
REST API Commands
74
REST API Commands conferences/{confID}/mediastats/terminals/{termID}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides media statistics for a specific terminal using associated with the specified conference call using confID .
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/mediastats/terminals/<termID>
JSON
Admin
The following query parameters are accepted:
<confID>/mediastats/terminals/<termID> confID – The unique identifier of the conference to retrieve. termID – The unique identifier for the terminal to retrieve.
Body:
[
{
"connectionID": "string",
"mediaDirection": "string",
"mediaType": "string",
"index": 0,
"mediaState": "string",
"mediaStream": "string",
"mediaAlgorithm": "string",
"mediaFormat": "string",
"encryptionType": "string",
"encryptionAlgorithm": "string",
"encryptionMode": "string",
"errorConcealment": "string",
"numberOfErrors": 0,
"bitRate": 0,
"actualBitRate": 0,
"frameRate": 0,
"actualFrameRate": 0,
"totalPackets": 0,
"packetLoss": 0,
"percentPacketLoss": 0,
"jitter": 0,
"maxJitter": 0,
"latency": 0,
"address": "string",
"activeAnnexes": "string",
"reservationProtocol": "string",
"reservationState": "string",
"reservationError": "string",
"termId": "string",
"prevTermId": "string",
"quality": 0, termID ,
75
Applicable return codes
"uniqueId": "string"
}
]
200 OK, 404 Unavailable
REST API Commands
76
REST API Commands conferences/{confID}/termmediastats
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides quality metrics for all terminal endpoints associated with the specified conference call using confID .
Protocol: HTTPS
Method: GET
Path: /rest/conferences/<confID>/termmediastats
JSON
Admin
The following query parameters are accepted:
<confID> confID – The unique identifier of the conference to retrieve.
Body:
[
{
"id": "string",
"quality": 0
}
]
200 OK, 404 Unavailable
77
REST API Commands
Directory
directory/favorites
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides a list of favorite directory entries, sorted by the favorite’s index value.
Protocol: HTTPS
Method: GET
Path: /rest/directory/favorites
JSON
Admin
The following query parameters are accepted:
?start=<integer>&limit=<integer>
Example Query:
/rest/directory/favorites?start=<integer>&limit=<integer> start=<integer> – An integer representing the starting (1-based) index of the search results. Defaults to 1 , if not specified. limit=<integer> – An integer representing the maximum number of search results to return. Defaults to 1 , if not specified.
Body:
{
"entries": [
{
"index": 1,
"firstName": "string",
"lastName": "string",
"displayName": "string",
"id": "string",
"serverId": "string",
"link": {
"rel": "self",
"href": "string"
}
}
],
"next": {
"rel": "self",
"href": "string"
}
}
200 OK, 400 Bad Request, 500 Server Error
78
REST API Commands directory/global/server
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides information about the configured global directory server.
Protocol: HTTPS
Method: GET
Path: /rest/directory/global/server
JSON
Admin
None
Body:
{
"id": "string",
"address": "string",
"protocol": "LOCAL",
Status: "DISABLED",
"presenceServer": {
"protocol": "NONE",
Status: "DISABLED"
},
"link": {
"rel": "self",
"href": "string"
}
}
200 OK, 500 Server Error Applicable return codes
79
REST API Commands directory/global/mtddefaultgroupentry
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides information about the multi-tier directory group entry, if configured.
Protocol: HTTPS
Method: GET
Path: /rest/directory/global/mtddefaultgroupentry
JSON
Admin
None
Body:
{
"id": "string",
"serverId": "string",
"type": "SINGLE",
"displayName": "string",
"firstName": "string",
"lastName": "string",
"fullName": "string",
"presence": "OFFLINE",
"favorite": true,
"readOnly": true,
"addedLocally": true,
"link": {
"rel": "self",
"href": "string"
}
}
200 OK, 404 Unavailable, 500 Server Error
80
REST API Commands directory/local/server
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides information about the configured local directory server.
Protocol: HTTPS
Method: GET
Path: /rest/directory/local/server
JSON
Admin
None
Body:
{
"id": "string",
"address": "string",
"protocol": "LOCAL",
Status: "DISABLED",
"presenceServer": {
"protocol": "NONE",
Status: "DISABLED"
},
"link": {
"rel": "self",
"href": "string"
}
}
200 OK, 500 Server Error Applicable return codes
81
directory/local/entries
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
This API adds a new entry to the local directory server.
Protocol: HTTPS
Method: POST
Path: /rest/directory/local/entries
JSON
Admin
Body:
{
"type": < string>,
"displayName": < string>,
"firstName": < string>,
"lastName": < string>,
"fullName": < string>,
"email": < string>,
"homePhone": < string>,
"workPhone": < string>,
"mobilePhone": < string>,
"imageLocation": < string>,
"favorite": < boolean>,
"devices": [
{
"name": < string>,
"addressList": [
{
"type": < string>,
"number": < string>,
"extension": < string>,
"rate": < string >
},
{
"type": < string>,
"number": < string>,
"extension": < string>,
"rate": < string >
}
]
},
{
"name": < string>,
"addressList": [
{
"type": < string>,
"number": < string>,
"extension": < string>,
"rate": < string >
},
{
"type": < string>,
REST API Commands
82
REST API Commands
Output
Applicable return codes
"number": < string>,
"extension": < string>,
"rate": < string >
}
]
}
]
} type – The type of directory entry. Valid strings include “ SINGLE ” and
“GROUP” . displayName – Display name of the directory entry. firstName – First name of the directory entry. lastName – Last name of the directory entry. fullName – Full name of the directory entry. email – E-mail address of the directory entry. homePhone – Home phone number of the directory entry. workPhone – Work phone number of the directory entry. mobilePhone – Mobile phone number of the directory entry. imageLocation – Location of an image associated with the directory entry.
Usually a URL to an avatar, icon, or portrait. favorite – True sets the favorite status. False unsets the favorite status. device name – Name of the directory entry device. addressList type – Type of address for the dialable directory entry device.
Valid strings include “ IP_ADDRESS” , “IP_EXTENSION” , “H323_NAME” ,
“SIP” , “POTS” , “ISDN” , “EMAIL” , “TELEPHONE” , and “MOBILE” . addressList number – Number of the directory entry device address. addressList extension – Extension for the number of the directory entry device address. addressList rate – Rate to use when dialing the directory entry device address.
None
201 Created, 400 Bad Request, 405 Not Allowed, 500 Server
Error, 507 Insufficient Storage
83
REST API Commands directory/local/entries/{entryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
This API provides information about the configured local directory server.
Protocol: HTTPS
Method: GET
Path: /rest/directory/local/entries/<entryId>
JSON
Admin
The following query parameters are accepted:
<entryId> entryId - The unique identifier of the entry to retrieve.
Output
Body:
{
"id": "string",
"serverId": "string",
"type": "SINGLE",
"displayName": "string",
"firstName": "string",
"lastName": "string",
"fullName": "string",
"presence": "OFFLINE",
"email": "string",
"homePhone": "string",
"workPhone": "string",
"mobilePhone": "string",
"imageLocation": "string",
"serverProtocol": "string",
"devices": [
{
"id": "string",
"name": "string",
"addressList": [
{
"type": "IP_ADDRESS",
"nu mber": "string",
"extension": "string",
"rate": "string"
}
]
}
],
"favorite": true,
"readOnly": true,
"addedLocally": true,
"link": {
"rel": "self",
"href": "string"
}
84
Applicable return codes
}
200 OK, 404 Unavailable, 500 Server Error
REST API Commands
85
REST API Commands directory/local/entries/{entryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API removes an entry from the local directory server.
Protocol: HTTPS
Method: DELETE
Path: /rest/directory/local/entries/<entryId>
JSON
Admin
The following query parameters are accepted:
<entryId> entryId - The unique identifier of the entry to retrieve.
None
204 No Content, 404 Unavailable, 500 Server Error
86
REST API Commands directory/local/entries/{entryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
This API performs an update to an existing entry within the local directory server.
Protocol: HTTPS
Method: PUT
Path: /rest/directory/local/entries/<entryId>
JSON
Admin
The following query parameters are accepted:
<entryId> entryId – The unique identifier of the entry to retrieve.
Body:
{
"type": < string>,
"displayName": < string>,
"firstName": < string>,
"lastName": < string>,
"fullName": < string>,
"email": < string>,
"homePhone": < string>,
"workPhone": < string>,
"mobilePhone": < string>,
"imageLocation": < string>,
"favorite": < boolean>,
"devices": [
{
"name": < string>,
"addressList": [
{
"type": < string>,
"number": < string>,
"extension": < string>,
"rate": < string >
},
{
"type": < string>,
"number": < string>,
"extension": < string>,
"rate": < string >
}
]
},
{
"name": < string>,
"addressList": [
{
"type": < string>,
"number": < string>,
87
REST API Commands
"extension": < string>,
"rate": < string >
},
{
"type": < string>,
"number": < string>,
"extension": < string>,
"rate": < string >
}
]
}
]
} type – The type of directory entry. Valid strings include “SINGLE” and
“GROUP” . displayName – Display name of the directory entry. firstName – First name of the directory entry. lastName – Last name of the directory entry. fullName – Full name of the directory entry. email – E-mail address of the directory entry. homePhone – Home phone number of the directory entry. workPhone – Work phone number of the directory entry. mobilePhone – Mobile phone number of the directory entry. imageLocation – Location of an image associated with the directory entry.
Usually a URL to an avatar, icon, or portrait. favorite – True sets the favorite status. False unsets the favorite status. device name – Name of the directory entry device. addressList type – Type of address for the dialable directory entry device.
Valid strings include “IP_ADDRESS” , “IP_EXTENSION” , “H323_NAME” ,
“SIP” , “POTS” , “ISDN” , “EMAIL” , “TELEPHONE” , and “MOBILE” . addressList number – Number of the directory entry device address. addressList extension – Extension for the number of the directory entry device address. addressList rate – Rate to use when dialing the directory entry device address.
88
REST API Commands
Output
Applicable return codes
None
204 No Content, 400 Bad Request, 404 Unavailable, 500 Server
Error
89
REST API Commands directory/local/entries/{entryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an action on the specified entry within the local directory server.
Protocol: HTTPS
Method: POST
Path: /rest/directory/local/entries/<entryId>
JSON
Admin
The following query parameters are accepted:
<entryId> entryId – The unique identifier of the entry to retrieve.
Body:
{
"action": < string>,
“deviceId”: < string >
} action – The action to perform on the directory entry. The only valid string is
“dial”.
deviceId – Optional property for dial actions to specify the entry's device ID from which to dial.
None
20 4 No Content, 40 4 Unavailable, 500 Server Error
90
REST API Commands directory/local/entries/{entryId}/favorite
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an action to set or unset favorite status on an existing entry within the local directory server.
Protocol: HTTPS
Method: PUT
Path: /rest/directory/local/entries/<entryId>/favorite
JSON
Admin
The following query parameters are accepted:
<entryId> entryId – The unique identifier of the entry to retrieve.
Body:
{
"favorite": < boolean >
} favorite – True sets the favorite status. False unsets the favorite status.
None
200 OK, 400 Bad Request, 404 Unavailable, 500 Server Error
91
REST API Commands directory/local/entries/{entryId}/favorite
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an update to the position order of an existing favorite entry within the local directory server.
Protocol: HTTPS
Method: POST
Path: /rest/directory/local/entries/<entryId>/favorite
JSON
Admin
The following query parameters are accepted:
<entryId> entryId – The unique identifier of the entry to retrieve.
Body:
{
"index": < integer >
} index – An integer to set the favorite position order index.
None
200 OK, 400 Bad Request, 404 Unavailable, 500 Server Error
92
REST API Commands directory/local/entries/{entryId}/members
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an action on the members of the specified directory group within the local directory server.
Protocol: HTTPS
Method: POST
Path: /rest/directory/local/entries/<entryId>/members
JSON
Admin
The following query parameters are accepted:
<entryId> entryId – The unique identifier of the entry to retrieve.
Body:
{
"action": < string>,
“entryId”: < string >
} action – The action to perform on the directory group. Valid strings include
“ query ” , “add” , and “remove” . entryId – Optional property for group add/remove actions that may specify an entry ID.
None
201 Created, 20 4 No Content, 400 Bad Request, 404
Unavailable, 500 Server Error
93
REST API Commands directory/queries
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API performs a new asynchronous directory entries search query.
Protocol: HTTPS
Method: POST
Path: /rest/directory/queries
JSON
Admin
Body:
{
"searchString": < string>,
"serverScope": < string>,
"entryScope": < string>,
"groupScope": < string>,
"order": < string>,
"groupID": < string >
} searchString – The value for the query search. If this property is empty in the query then all entries are returned. serverScope – The server search scope of the query. Defaults to "ALL" if not specified. Valid strings include “ ALL” , “LOCAL” , “GLOBAL” , and
“FAVORITES” . entryScope – The entry type search scope of the query. Defaults to "ANY" if not specified. Valid strings include “ SINGLE” , “GROUP” , “ANY_TIERED” , and
“ANY” . groupScope – The group search scope of the query. Defaults to "ONE_LEVEL" if not specified. Valid strings include “ONE_LEVEL” and “RECURSIVE” . order – The order of the results. Defaults to "DISPLAY_NAME" if not specified.
Valid strings include “ FIRST_NAME ” , “ LAST_NAME ” , and “ DISPLAY_NAME” . groupID – A unique identifier of the group.
Body:
{
"id": "string"
}
201 Created, 500 Server Error Applicable return codes
94
REST API Commands directory/queries/initial
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides a new asynchronous directory entries search query, used to retrieve a default list of directory entries.
Protocol: HTTPS
Method: GET
Path: /rest/directory/queries/initial
JSON
Admin
None
Body:
{
"id": "string"
}
201 Created, 500 Server Error Applicable return codes
95
REST API Commands directory/queries/{queryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides results of a directory entries search for a specified query ID.
Protocol: HTTPS
Method: GET
Path: /rest/directory/queries/<queryId>
JSON
Admin
The following query parameters are accepted:
?start=<integer>&limit=<integer>
Example Query:
/rest/directory/queries/<queryId>?start=<integer>&limit=<int eger> queryId – The query ID of the directory search to retrieve. start=<integer> – The starting index of the search query results to return.
Defaults to 1 if not specified. limit=<integer> – The maximum number of search query results to return.
Defaults to 1 if not specified.
Body:
{
"entries": [
{
"id": "string",
"serverId": "string",
"type": "SINGLE",
"displayName": "string",
"firstName": "string",
"lastName": "string",
"fullName": "string",
"presence": "OFFLINE",
"favorite": true,
"readOnly": true,
"addedLocally": true,
"link": {
"rel": "self",
"href": "string"
}
}
],
"next": {
"rel": "self",
"href": "string"
}
}
96
REST API Commands
Applicable return codes 200 OK, 20 4 No Content, 400 Bad Request, 404 Unavailable,
500 Server Error
97
REST API Commands directory/queries/{queryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API removes a directory entry search query for a specified query ID.
Protocol: HTTPS
Method: DELETE
Path: /rest/directory/queries/<queryId>
JSON
Admin
The following query parameters are accepted:
<queryId > queryId – The query ID of the directory search to delete.
None
20 4 No Content, 404 Unavailable, 500 Server Error
98
REST API Commands directory/{serverId}/entries/{entryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
This API provides a specified directory entry from the specified directory server.
Protocol: HTTPS
Method: GET
Path: /rest/directory/<serverId>/entries/<entryId>
JSON
Admin
The following query parameters are accepted:
<serverId> / entries/<entryId> serverId – The unique identifier of the directory server. entryId – The unique identifier of the entry to retrieve.
Output
Body:
{
"id": "string",
"serverId": "string",
"type": "SINGLE",
"displayName": "string",
"firstName": "string",
"lastName": "string",
"fullName": "string",
"presence": "OFFLINE",
"email": "string",
"homePhone": "string",
"workPhone": "string",
"mobilePhone": "string",
"imageLocation": "string",
"serverProtocol": "string",
"devices": [
{
"id": "string",
"name": "string",
"addressList": [
{
"type": "IP_ADDRESS",
"number": "string",
"extension": "string",
"rate": "string"
}
]
}
],
"favorite": true,
"readOnly": true,
"addedLocally": true,
"link": {
"rel": "self",
99
Applicable return codes
"href": "string"
}
200 OK, 404 Unavailable, 500 Server Error
REST API Commands
100
REST API Commands directory/{serverId}/entries/{entryId}
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an action on the specified entry within the specified directory server.
Protocol: HTTPS
Method: POST
Path: /rest/directory/<serverId>/entries/<entryId>
JSON
Admin
The following query parameters are accepted:
< serverId> / entries/<entryId> serverId – The unique identifier of the directory server. entryId – The unique identifier of the entry to retrieve.
Body:
{
"action": < string>,
" deviceId " : < string >
} action – The action to perform on the directory entry. The only valid string is
“dial” . deviceId – Optional property for dial actions to specify the entry's device ID from which to dial.
None
20 4 No Content, 400 Bad Request, 40 4 Unavailable, 500 Server
Error, 501 Not Implemented, 507 Insufficient Storage
101
REST API Commands directory/{serverId}/entries/{entryId}/favorite
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an action to set or unset favorite status on the specified entry within the specified directory server.
Protocol: HTTPS
Method: PUT
Path: /rest/directory/<serverId>/entries/<entryId>/favorite
JSON
Admin
The following query parameters are accepted:
< serverId> / entries/<entryId>/favorite serverId – The unique identifier of the directory server. entryId – The unique identifier of the entry to retrieve.
Body:
{
"favorite": < boolean >
} favorite – True sets the favorite status. False unsets the favorite status.
Body:
{
"success": true,
"reason": "string"
}
200 OK, 400 Bad Request, 404 Unavailable, 500 Server Error
102
REST API Commands directory/{serverId}/entries/{entryId}/favorite
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an update to the position order of the specified entry within the specified directory server.
Protocol: HTTPS
Method: POST
Path: /rest/directory/<serverId>/entries/<entryId>/favorite
JSON
Admin
The following query parameters are accepted:
< serverId> / entries/<entryId>/favorite serverId – The unique identifier of the directory server. entryId – The unique identifier of the entry to retrieve.
Body:
{
"index": < integer >
} index – An integer to set the favorite position order index.
Body:
{
" success": true,
“reason”: "string"
}
200 OK, 400 Bad Request, 404 Unavailable, 500 Server Error
103
REST API Commands directory/{serverId}/entries/{entryId}/members
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an action on the members of the specified directory group within the specified directory server.
Protocol: HTTPS
Method: POST
Path: /rest/directory/<serverId>/entries/<entryId>/members
JSON
Admin
The following query parameters are accepted:
< serverId> / entries/<entryId>/members serverId – The unique identifier of the directory server. entryId – The unique identifier of the entry to retrieve.
Body:
{
"action": < string>,
“entryId”: < string >
} action – The action to perform on the directory group. Valid strings include
“query” , “add” , and “remove” . entryId – Optional property for group add/remove actions that may specify an entry ID.
Body:
{
“id”: “string”
}
201 Created, 20 4 No Content, 400 Bad Request, 404
Unavailable, 500 Server Error
104
REST API Commands directory/import
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an import of an XML file containing directory entries.
Protocol: HTTPS
Method: PUT
Path: /rest/directory/import
JSON
Admin
None
None
204 No Content, 400 Bad Request, 500 Server Error
105
REST API Commands directory/export
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs an export of directory entries to an XML file and makes them available for download.
Protocol: HTTPS
Method: GET
Path: /rest/directory/export
JSON
Admin
None
None
200 OK, 400 Bad Request, 500 Server Error
106
REST API Commands
Session
session
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API creates and authenticates a session on the system.
Protocol: HTTPS
Method: POST
Path: /rest/session
JSON
Admin
Body:
{
" user ": < string>,
" password ": < string >
} user – The user ID for signing into the system. password – The password for signing into the system.
Body:
{
" success": true,
" loginStatus": {
“loginResult”: “NOLOCKOUT”,
“lastLoginClinet”: “198.168.1.1”,
“lastLoginTime”: 1,
“lastLoginClientType”: “WEB”,
“failedLogins”: 0,
“ispasswordAgeLimitReached”: false
}
“session”: {
“sessionId”: “POWODrZMt/Y4yyMhOo0FXvs5yDdehGAapFhoB”,
“role”: “ADMIN”,
“clientType”: “WEB”,
“location”: “192.168.1.2”,
“userId”: “admin”,
“creationTime”: 1,
“isAuthenticated”: true,
“isStale”: false,
“isNew”: true,
“isConnected”: false
}
}
200 SUCCESS, 403 LOG IN ATTEMPT FAILED
107
REST API Commands
System
system/controller
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the MAC address of the factory-default touch controller that will be automatically paired with this device during out-of-box setup.
Protocol: HTTPS
Method: GET
Path: /rest/system/controller
JSON
Admin
None
Body:
{
" macAddr " : < string >
}
200 OK Applicable return codes
108
REST API Commands system/controller
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API sets the MAC address of the factory-default touch controller that will be automatically paired with this device during out-of-box setup.
Protocol: HTTPS
Method: POST
Path: /rest/system/controller
JSON
Admin
Body:
{
" macAddr ": < string >
} macAddr – The touch controller network MAC address.
Body:
{
" success " : < boolean >
}
200 OK Applicable return codes
109
REST API Commands system/h323gatekeepers
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the status and information of the H323 gatekeeper servers.
Protocol: HTTPS
Method: GET
Path: /rest/system/h323gatekeepers
JSON
Admin
None
Body:
[
{
“state”: “ON”,
“model”: “string”
}
]
“address”: “string” ,
“version”: “string” ,
200 OK, 500 Server Error
110
REST API Commands system/logs
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the system logs in a .tar file as an octet stream file attachment response.
Protocol: HTTPS
Method: GET
Path: /rest/system/logs
JSON
Admin
None
None
200 OK, 500 Server Error
111
REST API Commands system/apps/environment
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API starts the Environment Control app on a paired touch controller. This
API only supports one connected TC8 device.
Protocol: HTTPS
Method: POST
Path: /rest/system/apps/environment
JSON
Admin
None
Body:
{
"result": true
}
200 OK, 500 Server Error Applicable return codes
112
REST API Commands system/apps/environment
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API hides the Environment Control app on a paired touch controller. This
API only supports one connected TC8 device.
Protocol: HTTPS
Method: DELETE
Path: /rest/system/apps/environment
JSON
Admin
None
Body:
{
"result": true
}
200 OK, 500 Server Error Applicable return codes
113
REST API Commands system/apps/environment
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API gets the status of the Environment Control app on a paired touch controller in the form of a list. This API only supports one connected TC8 device.
Protocol: HTTPS
Method: GET
Path: /rest/system/apps/environment
JSON
Admin
None
Body:
[
{
"macAddress": "00e0db54d243",
"environmentControlAppActive": true
}
]
200 OK, 500 Server Error Applicable return codes
114
REST API Commands system/mode/device
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the status of whether the Device Mode application is currently running.
Protocol: HTTPS
Method: GET
Path: /rest/system/mode/device
JSON
Admin
None
Body:
{
“result”: true
}
200 OK
115
system/mode/device
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API starts Device Mode if it isn’t running.
Protocol: HTTPS
Method: POST
Path: /rest/system/mode/device
JSON
Admin
None
Body:
{
"success”: true,
“reason”: “string”
}
200 OK
REST API Commands
116
system/mode/device
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API stops Device Mode if it is running.
Protocol: HTTPS
Method: DELETE
Path: /rest/system/mode/device
JSON
Admin
None
Body:
{
"success”: true,
“reason”: “string”
}
200 OK
REST API Commands
117
REST API Commands system/mode/signage
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the status of whether the Digital Signage application is currently running.
Protocol: HTTPS
Method: GET
Path: /rest/system/mode/signage
JSON
Admin
None
Body:
{
“result”: true
}
200 OK
118
system/mode/signage
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API starts Digital Signage if it isn’t running.
Protocol: HTTPS
Method: POST
Path: /rest/system/mode/signage
JSON
Admin
None
Body:
{
"success”: true,
“reason”: “string”
}
200 OK
REST API Commands
119
system/mode/signage
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API stops Digital Signage if it is running.
Protocol: HTTPS
Method: DELETE
Path: /rest/system/mode/signage
JSON
Admin
None
Body:
{
"success”: true,
“reason”: “string”
}
200 OK
REST API Commands
120
REST API Commands system/network/ping
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API performs an ICMP echo ping to the destination network host.
Protocol: HTTPS
Method: POST
Path: /rest/system/network/ping
JSON
Admin
Body:
{
" destination": < string>,
} destination – The IP address of the destination network host.
Body:
{
"icmpReachable": true,
"responseTime": 0,
"h323Reachable": true,
"sipReachable": true
}
200 OK, 500 Server Error Applicable return codes
121
REST API Commands system/network/traceroute
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API performs network traceroute to the destination network host.
Protocol: HTTPS
Method: GET
Path: /rest/system/network/traceroute
JSON
Admin
Body:
{
"destination": < string>,
} destination – The IP address of the destination network host.
Body:
{
"success": true,
“totalHops": 0,
"hops": [
{
"hopNumber": 0,
"address": "string",
"dnsName": "string",
"responseTimes": [
0
]
}
]
}
200 OK, 500 Server Error Applicable return codes
122
system/reboot
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs a reboot of the system.
Protocol: HTTPS
Method: POST
Path: /rest/system/reboot
JSON
Admin
Body:
{
"action": "reboot"
}
None
200 OK, 500 Server Error
REST API Commands
123
REST API Commands system/resetsettings
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs a reset of configurations and settings of the system.
Protocol: HTTPS
Method: POST
Path: /rest/system/resetsettings
JSON
Admin
Body:
{
"action": "resetsettings",
“keepCertificates”: <boolean>,
“keepCdr”: <boolean>,
“keepDirectory”: <boolean>,
“keepLogs”: <boolean>
}
<boolean> – True retains the setting. False resets the setting.
None
200 OK, 500 Server Error
124
REST API Commands system/sipservers
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the status and information of the SIP servers.
Protocol: HTTPS
Method: GET
Path: /rest/system/sipservers
JSON
Admin
None
Body:
{
“state”: “ON”,
“address”: “string” ,
“version”: “string” ,
“model”: “string”
}
200 OK, 500 Server Error
125
REST API Commands system/status
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the status and information of important areas of the system.
Protocol: HTTPS
Method: GET
Path: /rest/system/status
JSON
Admin
None
Body:
{
"langtag": "PRIMARY_NETWORK_HEADING",
"name": "system.status.ipnetwork",
"stateList": [
"up"
]
},
{
"langtag": "SIP_SERVER_HEADING",
"name": "system.status.sipserver",
"stateList": [
"up"
]
},
{
"langtag": "GATEKEEPER_HEADING",
"name": "system.status.gatekeeper",
"stateList": [
"up"
]
},
{
"langtag": "CALENDAR_SERVICE_HEADING",
"name": "system.status.calendar",
"stateList": [
"up"
]
},
{
"langtag": "MICROPHONES80",
"name": "system.status.microphones",
"stateList": [
"up"
]
},
{
"langtag": "REMOTE_CONTROL_HEADING",
"name": "system.status.remotecontrol",
"stateList": [
126
REST API Commands
Applicable return codes
"up"
]
},
{
"langtag": "AUTO_ANSWER_P2P_HEADING",
"name": "system.status.autoanswerp2p",
"stateList": [
"off"
]
},
{
"langtag": "PROVISIONING_SERVICE_HEADING",
"name": "system.status.provisioning",
"stateList": [
"off"
]
},
{
"langtag": "SYSTEM_STATUS_GLOBALDIRECTORY_SERVER",
"name": "system.status.globaldirectory",
"stateList": [
"off"
]
},
{
"langtag": "MICROPHONES_HEADING",
"name": "system.status.mr.audio",
"stateList": [
"all_up"
]
},
{
"langtag": "CAMERAS_HEADING",
"name": "system.status.mr.camera",
"stateList": [
"none_up"
]
}
200 OK, 500 Server Error
127
REST API Commands system/time
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the current time in milliseconds of the system, using the UTC time zone and the time offset for the currently-set time zone.
Protocol: HTTPS
Method: GET
Path: /rest/system/time
JSON
Admin
None
Body:
{
" time”: 1487369530000,
“tzOffset”: 300
}
200 OK, 500 Server Error Applicable return codes
128
REST API Commands system/time
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API performs a set of the current system time using Unix Epoch Time format
(milliseconds).
Protocol: HTTPS
Method: POST
Path: /rest/system/time
JSON
Admin
Body:
{
"time": <long>,
"tzOffset": <integer>
} time – The current system time using Unix Epoch Time format in milliseconds. tzOffset – An integer that represents the system time zone offset from GMT in minutes (+/-). This isn't required for a POST request.
None
200 OK
129
REST API Commands system/time/local
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the current time in a single ISO 8601 formatted string value.
Protocol: HTTPS
Method: GET
Path: /rest/system/time/local
JSON
Admin
None
Body:
{
"time”: “2018 08 10T15:00:59.000
0700”
}
200 OK, 500 Server Error Applicable return codes
130
REST API Commands
SysTracker
mediastats
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the media status value(s) associated with all shared content.
Protocol: HTTPS
Method: GET
Path: /rest/mediastats
JSON
Admin
None
Body:
{
"vars": [
{
"bitrate": 0,
"clientID": "cast3",
"duration": 256,
"framerate": 0,
"height": 1440,
"sourceID": 2,
"sourceType": "MIRACAST",
"start": 1505416756873,
"width": 1088
}
]
}
200 OK
131
Video
video/local/mute
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the status of whether the video is hidden.
Protocol: HTTPS
Method: GET
Path: /rest/video/local/mute
JSON
Admin
None
Body:
{
“result”: true
}
200 OK
REST API Commands
132
REST API Commands video/local/mute
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API performs a hide or unhide action on the local video.
Protocol: HTTPS
Method: POST
Path: /rest/video/local/mute
JSON
Admin
Body:
{
" mute”: <boolean>
}
< boolean> – True hides local video. False unhides local video.
Body:
{
" success”: true,
“reason”: “string”
}
200 OK Applicable return codes
133
REST API Commands video/remote/{confID}/mute
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
This API provides the status of whether the video is hidden on a specified conference.
Protocol: HTTPS
Method: GET
Path: /rest/video/remote/<confID>/mute
JSON
Admin
The following query parameters are accepted:
<confID>/mute confID – The conference ID to retrieve video hidden state from.
Body:
{
“result”: true
}
200 OK, 404 Unavailable Applicable return codes
134
REST API Commands video/remote/{confID}/mutelock
Description
Protocol, Method, and
Path
Input and Output Syntax
Access Level
Input
Output
Applicable return codes
This API provides the status of whether the video hidden with a mute lock is applied to a specified conference.
Protocol: HTTPS
Method: GET
Path: /rest/video/remote/<confID>/mutelock
JSON
Admin
The following query parameters are accepted:
<confID> confID – The conference ID to retrieve video hidden state from.
Body:
{
“result”: true
}
200 OK, 404 Unavailable
135
Diagnostics
Diagnostics
This section describes REST API error codes and logging information.
Error Codes
Error Codes and Descriptions
Error Code
Success
Number Code
200 OK
201 Created
204 No Content
Failed
Success
400 Bad Request
403 Forbidden
404 Unavailable
405 Not Allowed
415 Error
500 Server Error
501 Not Implemented
507 Insufficient Storage
200 OK
Description
API executed successfully
Entry was created
Content is not ready, content has been removed, or updated
Request not recognized, could not be executed
Forbidden, authentication denied, pin invalid
Operation or source unavailable
Requested action is not supported
Payload invalid or missing one or more required fields
Unexpected error encountered
No support for performing requested action
Insufficient storage on the server
API executed successfully
136
6
4
5
2
3
Level
0
1
Logging
The following table provides examples of the type of logging available at each level.
Log Levels
Description
Debug
Detailed events
Flow events
High-level flow events
Minor, recoverable events
Major, eventually fatal errors
Immediately fatal events
Diagnostics
137
Download
Advertisement