The following resources for the Configuration API are available for all users:

Calls

Initiate calls

Resource URI: /my/call/{to}, /call/{to}
Default Resource Properties: N/A
Specific Response Codes: Error 400 (When {to} is not a valid sip uri)
HTTP Method: PUT
PUT method requires non empty body which is ignored. Supported as GET for clients that do not handle PUT.
Unsupported HTTP Method: GET, POST, DELETE

View or modify user call forwarding

Resource URI: /my/forward
Default Resource Properties
The resource is represented by the following properties when the GET request is performed:

Property

Description





Specific Response Codes: N/A
HTTP Method: GET
Retrieves user call forwarding XML, JSON (without schedule)
HTTP Method: PUT
Modifies user call forwarding XML, JSON (without schedule)
Unsupported HTTP Method: POST, DELETE

View or modify call forwarding

Resource URI: /my/callfwd
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

Expiration

The time measured in seconds that the phone will ring

Type

Option are:

  • If no response - if the previous call won't respond.
  • In the same time - the number will ring in the same time as the previous true if the ring scheme is enabled the phone number to ring

Enabled


number


Specific Response Codes: N/A
HTTP Method: GET
Retrieves user call forwarding scheme, with the schedule.
Example: XML format
<callsequence>
<rings>
<ring>
<expiration>30</expiration>
<type>If no response</type>
<enabled>true</enabled>
<number>333</number>
</ring>
<ring>
<expiration>30</expiration>
<type>At the same time</type>
<enabled>true</enabled>
<number>232</number>
</ring>
</rings>
<expiration>20</expiration>
<withVoicemail>true</withVoicemail>
</callsequence>
JSON format
{"callsequence": {

"rings": [


{
"expiration": 30,
"type": "If no response",
"enabled": true,
"number": "333"
},
{
"expiration": 30,
"type": "At the same time",
"enabled": true,
"number": "232"
}
],
"expiration": 20,
"withVoicemail": true
}}
HTTP Method: PUT
Modifies user call forwarding scheme.

curl -v -k -X PUT -H "Content-Type: application/json" -d '{"expiration":20,"rings":[{"expiration":30,"type":"If no response","enabled":true,"number":"5551212"}]}' https://201:password@192.168.1.14/sipxconfig/rest/my/callfwd


Unsupported HTTP Method: POST, DELETE


View or modify call forwarding schedules

Resource URI: /my/callfwdsched
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

Expiration

The time measured in seconds that the phone will ring

Type

Option are:

  • If no response - if the previous call won't respond.
  • In the same time - the number will ring in the same time as the previous true if the ring scheme is enabled the phone number to ring

enabled


number


scheduleID

The schedule ID to be applied for the specified ring.

Specific Response Codes:
Error 422 (When schedule save/update failed)
Error 403 (on PUT or DELETE and id not specified)
HTTP Method: GET
Retrieves call forwarding schedules
Example for GET/PUT: JSON format only

{"expiration":20,"rings":[{"expiration":30,"type":"If no response","enabled":true,"number":"11112","scheduleId":1},{"expiration":30,"type":"At the same time","enabled":true,"number":"444333","scheduleId":2}],"withVM":true}


HTTP Method: PUT
Saves call forwarding schedules (includes schedule ID)
Unsupported HTTP Method: POST, DELETE


View or modify a schedule ID

Resource URI: /my/callfwdsched/{id}
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

description

Short description of the schedule.

periods

The start and the end dates of the period. The format is hours/minutes

scheduleId

The ID of the schedule

name

Alternative name of the schedule

Specific Response Codes: N/A
HTTP Method: GET
Retrieves call forwarding schedules
Example: JSON format only
id=3

{"description":"Desc","periods":[{"start":{"hrs":9,"min":0},"end":{"hrs":18,"min":0},"scheduledDay":7}],"scheduleId":3,"name":"Sunday"}


HTTP Method: PUT
Updates existing schedule given {id}
HTTP Method: DELETE
Deletes existing schedule given {id}
Unsupported HTTP Method: POST


View active calls

Resource URI: /my/activecdrs
Default Resource Properties
The resource is represented by the following properties when the GET request is performed:

Property

Description

description

Short description of the schedule.

periods

The start and the end dates of the period. The format is hours/minutes

scheduleId

The ID of the schedule

name

Alternative name of the schedule

Specific Response Codes: N/A
HTTP Method: GET
Retrieves user active calls in XML or JSON format
Example: XML format
<cdrs>
<cdr>
<from>2011</from>
<from-aor>"2011" <sip:2011@Uniteme.ezuce.com></from-aor>
<to>32011</to>
<to-aor><sip:32011@Uniteme.ezuce.com></to-aor>
<direction>INCOMING</direction>
<recipient>32011</recipient>
<internal>false</internal>
<type>Unknown</type>
<start-time>1400239363000</start-time>
<duration>45976</duration>
</cdr>
</cdrs>scheduledDay":7}],"scheduleId":3,"name":"Sunday"}
JSON format

{"cdrs": [


{
"from": "2011",
"from-aor": "\"2011\" <sip:2011@Uniteme.ezuce.com>",
"to": "32011",
"to-aor": "<sip:32011@Uniteme.ezuce.com>",
"direction": "INCOMING",
"recipient": "32011",
"internal": false,
"type": "Unknown",
"start-time": 1400240496000,
"duration": 483896
}
]}
Unsupported HTTP Method: POST, PUT, DELETE


Voicemail

Change voicemail pin

Resource URI: /my/voicemail/pin/{pin}
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

description

Short description of the schedule.

periods

The start and the end dates of the period. The format is hours/minutes.

scheduleId

The ID of the schedule.

name

Alternative name of the schedule.

Specific Response Codes: Error 400 - on PUT, when the new {pin} cannot be saved
HTTP Method: GET
Retrieves call forwarding schedules
Example: JSON format only
id=3

{"description":"Desc","periods":[{"start":{"hrs":9,"min":0},"end":{"hrs":18,"min":0},"scheduledDay":7}],"scheduleId":3,"name":"Sunday"}


HTTP Method: PUT
Updates existing schedule given {id}
HTTP Method: DELETE
Deletes existing schedule given {id}
Unsupported HTTP Method: POST


View or modify voicemail settings

Resource URI: /my/vmprefs
Default Resource Properties
The resource is represented by the following properties when the GET request is performed:

Property

Description

voicemailPermission

Determines whether the recipient of the call has the permission to receive voice mail. Displays True if the user has permission and False if he is not permitted.

emailformat

Determines the email format type for the main email address. Options are:

  • Null- no email is sent
  • Full – a detailed email is sent
  • Medium

altEmailFormat

Determines the email format type for the secondary email address. Options are:

  • Null- no email is sent
  • Full – a detailed email is sent
  • Medium

greeting

Voicemail prompt callers hear before leaving a message.

emailAttachType

Determines whether the email has an attachment. Displays Yes or No.

emailIncludeAudioAttachemnt

Determines whether the voice mail message can be attached as an attachment Displays True if the user has permission and False if he is not permitted.

email


Specific Response Codes: N/A
HTTP Method: GET
Retrieves call forwarding schedules.
Example: JSON format only for GET/PUT
{"voicemailPermission":true,"emailFormat":"FULL","altEmailFormat":null,"greeting":"STANDARD","emailAttachType":"YES","emailIncludeAudioAttachment":true,"altEmail":null,"altEmailAttachType":null,"altEmailIncludeAudioAttachment":false,"email":"aaa@bbb"}
HTTP Method: PUT
Saves user voicemail settings
Unsupported HTTP Method: POST, DELETE

View voicemail folder as RSS feed

Resource URI: /my/feed/voicemail/{folder}
Default Resource Properties: N/A
Specific Response Codes: N/A
HTTP Method: GET
Rthe voicemail folder is presented as an RSS feed.
Example:
<?xml version="1.0" encoding="UTF8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
<channel>
<title>Voicemail: 205</title>
<link>http://localhost/sipxconfig/rest/my/feed/voicemail/inbox</link>
<description>Voicemail Inbox for 205</description>
<item>
<title>Voice Message 100000007 from 205</title>
<link>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000007</link>
<description>5 seconds received at 12:02 on 08/07/14</description>
<enclosure url="http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000007"
type="audio/wav" />
<pubDate>Thu, 07 Aug 2014 09:02:06 GMT</pubDate>
<guid>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000007</guid>
<dc:date>20140807T09:02:06Z</dc:date>
</item>
<item>
<title>Voice Message 100000006 from 205</title>
<link>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000006</link>
<description>4 seconds received at 15:36 on 08/06/14</description>
type="audio/wav" />
<pubDate>Wed, 06 Aug 2014 12:36:25 GMT</pubDate>
<guid>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000006</guid>
<dc:date>20140806T12:36:25Z</dc:date>
</item>
<item>
<title>Voice Message 100000009 from 205</title>
<link>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000009</link>
<description>4 seconds received at 10:16 on 08/08/14</description>
type="audio/wav" />
<pubDate>Fri, 08 Aug 2014 07:16:43 GMT</pubDate>
<guid>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000009</guid>
<dc:date>20140808T07:16:43Z</dc:date>
</item>
<item>
<title>Voice Message 100000008 from 205</title>
<link>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000008</link>
<description>2 seconds received at 12:02 on 08/07/14</description>
type="audio/wav" />
<pubDate>Thu, 07 Aug 2014 09:02:49 GMT</pubDate>
<guid>http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000008</guid>
<dc:date>20140807T09:02:49Z</dc:date>
</item>
</channel>
</rss>
<enclosure url="http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000006"
<enclosure url="http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000009"
<enclosure url="http://localhost/sipxconfig/rest/private/eMMlJIsSz4LL9M3OkUXVJfqNS7x2WRSH/voicemail/inbox/100000008"
Unsupported HTTP Method: PUT, POST, DELETE

View or modify voicemail personal attendant

Resource URI: /my/voicemail/attendant
Default Resource Properties
The resource is represented by the following properties when the GET request is performed:

Property

Description

personalAttandantPermission


language


operator


menu


ovverrideLanguage


depositVM


playVMDefaultOptions


Specific Response Codes: N/A
HTTP Method: GET
Retrieves the personals' attandant settings
Example: JSON format only for GET/PUT
{
"personalAttendantPermission":true,
"language":null,
"operator":null,
"menu":{},
"overrideLanguage":false,
"depositVM":true,
"playVMDefaultOptions":true
}
HTTP Method: PUT
Updates the personal attendants' settings
Unsupported HTTP Method: POST, DELETE

Set operators' personal attendant settings

Resource URI: /my/voicemail/operator/{operator}
Default Resource Properties: N/A
Specific Response Codes:
HTTP Method: PUT
Sets personal attendant operator user setting given 'operator' value
Example: JSON format
???
Unsupported HTTP Method: GET, POST, DELETE

Reset operators' personal attendant settings

Resource URI: /my/voicemail/operator/
Default Resource Properties: N/A
Specific Response Codes:
HTTP Method: PUT
Resets personal attendant operator user setting given 'operator' value
Unsupported HTTP Method: GET, POST, DELETE

Phone Book

Export phone book

Resource URI: /my/phonebook
Default Resource Properties
The resource is represented by the following properties when the GET request is performed:

Property

Description

entry

The phone book entry.

first-name


last-name


number


contact-information


homeAdress


officeAddress


imID


imDisplayName


avatar

The avatars' RST URL

Status Values:
Specific Response Codes:
HTTP Method: GET
Retrieves the personals' attandant settings
Example: XML format
<phonebook>
<entry>
<first-name>John</first-name>
<last-name>Smith</last-name>
<number>200</number>
<contact-information>
<homeAddress/>
<officeAddress/>
<imId>jhons</imId>
<imDisplayName>John Smith</imDisplayName>
<avatar>
https://john.work-ezuce.ro/sipxconfig/rest/avatar/200
</avatar>
</contact-information>
</entry>
<entry>
<first-name>Mike</first-name>
<last-name>Doe</last-name>
<number>201</number>
<contact-information>
<homeAddress/>
<officeAddress/>
<imId>miked</imId>
<imDisplayName>Mike Doe</imDisplayName>
<avatar>
https://mike.work-ezuce.ro/sipxconfig/rest/avatar/201
</avatar>
</contact-information>
</entry>
</phonebook>u
JSON format

{"phonebook": [


{
"number": "205",
"contactinformation": {
"homeAddress": {},
"officeAddress": {},
"imId": "205",
"imDisplayName": "205",
"avatar": "https://mircea.workezuce.ro/sipxconfig/rest/avatar/205"
}
}
]}
Unsupported HTTP Method: PUT, POST, DELETE


View phone book page by page

Resource URI: /my/pagedphonebook?start={start-row}&end={end-row}"
Default Resource Properties
The resource is represented by the following properties when the GET request is performed:

Property

Description

size

Total entries number

filtered-size

Returned entries number

strat-row

First returned entry number

End-row

End returned entry number

Show-on-phone


Google-domain


entries


Specific Response Codes: N/A
HTTP Method: GET
Phonebook representation, page by page, returns users from start-row to end-row. Useful for large size phonebooks (thousands of users)
Example: XML format
<phonebook>
<size>5</size>
<filtered-size>5</filtered-size>
<start-row>1</start-row>
<end-row>2</end-row>
<show-on-phone>n/a</show-on-phone>
<google-domain>gmail.com</google-domain>
<entries>
<entry>
<id>-1</id>
<first-name>John</first-name>
<last-name>Smith</last-name>
<number>201</number>
<contact-information>
<homeAddress/>
<officeAddress/>
<imId>georgen</imId>
<imDisplayName>John Smith</imDisplayName>
<avatar>
https://john.work-ezuce.ro/sipxconfig/rest/avatar/201
</avatar>
</contact-information>
</entry>
</entries>
</phonebook>
JSON format
{"phonebook": {
"size": 1,
"filteredsize": 1,
"startrow": 0,
"endrow": 1,
"showonphone": "n/a",
"googledomain": "gmail.com",

"entries": [


{
"id": "1",
"number": "205",
"contactinformation": {
"homeAddress": {},
"officeAddress": {},
"imId": "205",
"imDisplayName": "205",
"avatar": "https://mircea.workezuce.ro/sipxconfig/rest/avatar/205"
}
}
]
}}
Unsupported HTTP Method: PUT, POST, DELETE


Private phone book entries

Resource URI: /my/phonebook/entry/{entryId}
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

pb


internalID


uid


vcard


username


Specific Response Codes: Error 747 - when entryId is duplicated during save (POST)
HTTP Method: GET
Retrieves all the entries from the private phone book.
HTTP Method: PUT
Changes entries in private phone book
<entry>
<firstname>name</firstname>
<lastname>lastName</lastname>
<number>200</number>
<contactinformation>
<jobTitle>title</jobTitle>
<companyName>company</companyName>
<homeAddress>
<street>street</street>
</homeAddress>
<officeAddress>
<zip>1234</zip>
</officeAddress>
</contactinformation>
</entry>
Example JSON
{"entry": {
"firstname": "name",
"lastname": "lastName",
"number": "200",
"contactinformation": {
"jobTitle": "title",
"companyName": "company",
"homeAddress": {
"street": "street"
},
"officeAddress": {
"zip": "1234"
}
}
}}
HTTP: POST
Ceates a new phone book entry.
HTTP Method: DELETE
Deletes the entriy with the specified ID from the private phone book .
Unsupported HTTP Method: N/A

Search for phone book contacts

Resource URI: /my/search/phonebook?query={search-term}
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

entry


Specific Response Codes: N/A
HTTP Method: GET
Searches through all the information in the phone book. A search-term can be a value of any user field like first name, last name, extension etc
Example: XML format
<phonebook>
<entry>
<first-name>FirstName1</first-name>
<last-name>LastName1</last-name>
<number>200</number>
<contact-information/>
</entry>
<entry>
<first-name>FirstName2</first-name>
<last-name>LastName2</last-name>
<number>201</number>
<contact-information/>
</entry>
</phonebook>
JSON format

{"phonebook": [


{
"first-name": "FirstName1",
"last-name": "LastName1",
"number": "200",
"contact-information": {}
},
{
"first-name": "FirstName2",
"last-name": "LastName2",
"number": "201",
"contact-information": {}
}
]}
Unsupported HTTP Method: PUT, POST, DELETE


Create or delete a private phone book

Resource URI: /my/phonebookentry/{internalId}
Default Resource Properties: N/A
Specific Response Codes: Error 404 - when {internalId} not found
HTTP Method: PUT
Creates a private phone book from a VCard template
Vcard input template example in XML:
<?xml version="1.0" encoding="UTF-8" ?>
<pb>
<internalId>XXX</internalId>
<uid></uid>
<vcard>BEGIN:VCARD
VERSION:3.0
SOURCE:privatePhonebook_1
SOURCE:
ORG:;
IMPP;TYPE=PERSONAL:
TEL;TYPE=HOME:165611111166
TEL;TYPE=FAX:
TEL;TYPE=WORK;TYPE=PREF:
EMAIL;TYPE=WORK;TYPE=PREF:aa.cc@cc.cc
EMAIL;TYPE=HOME:
ADR;TYPE=WORK:;;;;;;
ADR;TYPE=HOME:;;;;;;
AGENT:BEGIN:VCARD\\nVERSION:3.0\\nTEL\\;TYPE=cell\\,pref:\\nFN:\\nEND:VCARD
n

NOTE:private contact
UID:d5506041-522b-4810-8c31-5457be334d53
TEL;TYPE=CELL:333333
FN:DDDDD EEEEE
N:EEEEE;DDDDD;;;
PRODID:-//dmfs.org//mimedir.vcard//EN
REV:20140224T153000Z
END:VCARD
</vcard>
<userName>200</userName>
</pb>
HTTP Method: DELETE
Deletes private phone book entry
Unsupported HTTP Method: POST, DELETE

View contacts on display

Resource URI: /my/phonebook/showContactsOnPhone/{value}
Default Resource Properties: N/A
Specific Response Codes:
HTTP Method: PUT
Marks 'true' or 'false' for 'showOnPhone' flag on user private phonebook.
Unsupported HTTP Method: GET, GET, POST

Import Google contacts

Resource URI: /my/phonebook/googleImport
Default Resource Properties: N/A
Specific Response Codes:
Error 743 (POST when google authentication error)
Error 744 (POST when google service error)
Error 745 (POST when google transport error)
HTTP Method: POST
Imports google contacts into user private phone book provided XML entity:
<credentials>
<account>aaa</account>
<password>bbb</password>
</credentials>
Unsupported HTTP Method: GET, PUT, DELETE

Preferences

View user contact information

Resource URI: /my/contact-information
Default Resource Properties
The resource is represented by the following properties when the GET request is performed:

Property

Description

jobTitle


jobDept


companyName


homeAddress


officeAddress


branchAddress


imID


imDisplayName


emailAddress


useBranchAddress


salutation


twiterName


linkedinName


facebookName


xingName


timestamp


enabeled


ldapManaged

true if the user should be modified when importing from LDAP in a system with LDAP configured

firstName


lastName


Specific Response Codes: N/A
HTTP Method: GET
Retrieves the entries from the private phone book
Example: XML format
<contact-information>
 <jobTitle>Data Entry Assistant</jobTitle>
 <jobDept>Data Management Services</jobDept>
 <companyName>Museum of Science</companyName>
 <homeAddress>
   <city>NY</city>
 </homeAddress>
 <officeAddress>
   <street>1 Science Park</street>
   <city>Boston</city>
   <country>US</country>
   <state>MA</state>
   <zip>02114</zip>
 </officeAddress>
 <branchAddress/>
 <imId>myId</imId>
 <imDisplayName>myId</imDisplayName>
 <emailAddress>john.doe@example.com</emailAddress>
 <useBranchAddress>false</useBranchAddress>
 <salutation>Prof</salutation>
 <twiterName>Twitter</twiterName>
 <linkedinName>Linkedin</linkedinName>
 <facebookName>Facebook</facebookName>
 <xingName>Xing</xingName>
 <timestamp>0</timestamp>
 <enabled>true</enabled>
 <ldapManaged>false</ldapManaged>
 <firstName>John</firstName>
 <lastName>Doe</lastName>
</contact-information>
JSON format:
{"contact-information": {
 "jobTitle": "Data Entry Assistant",
 "jobDept": "Data Management Services",
 "companyName": "Museum of Science",
 "homeAddress": {
   "city": "NY"
 },
 "officeAddress": {
   "street": "1 Science Park",
   "city": "Boston",
   "country": "US",
   "state": "MA",
   "zip": "02114"
 },
 "branchAddress": {},
 "imId": "myId",
 "imDisplayName": "myId",
 "emailAddress": "john.doe@example.com",
 "useBranchAddress": false,
 "salutation": "Prof",
 "twiterName": "Twitter",
 "linkedinName": "Linkedin",
 "facebookName": "Facebook",
 "xingName": "Xing",
 "timestamp": 0,
 "enabled": true,
 "ldapManaged": false,
 "firstName": "John",
 "lastName": "Doe"
}}
HTTP Method: PUT
Updates user contact details.
Unsupported HTTP Method: POST, DELETE

View or modify IM preferences

Resource URI: /my/im/prefs
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

statusCallInfo

If true include the caller info in the busy status of the XMPP status message

otpMessage

The content of the message used as XMPP status when user is busy

voicemailOnDnd

If true, all calls received when Do Not Disturb status is set through XMPP client are forwarded directly toVoicemail

statusPhonePresence

If true advertise the user's busy status in the XMPP status message

Status Values:
Specific Response Codes:
HTTP Method: GET
Rertrieves instant messaging preferences
Example: JSON for GET/PUT
{"statusCallInfo":false,"otpMessage":"Onthe phone","voicemailOnDnd":true,"statusPhonePresence":true}
Return Values: list of settings for IM
HTTP Method: PUT
Saves the modified IM preferences
Unsupported HTTP Method: POST, DELETE

View or modify My Buddy preferences

Resource URI: /my/imbot/prefs
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

confExit

if true, conference exit messages are sent to mybuddy

vmBegin

if true, leave voicemail messages are sent to mybuddy

vmEnd

if true, left voicemail messages are sent to mybuddy

confEnter

if true conference entry messages are sent to mybuddy

Status Values:
Specific Response Codes:
HTTP Method: GET
Rertrieves My Buddypreferences
Example: JSON for GET/PUT
{"confExit":true,"vmBegin":true,"vmEnd":true,"confEnter":true}
HTTP Method: PUT
Saves the modified IM preferences
Return Values: list of settings for My Buddy
Unsupported HTTP Method: POST, DELETE

View or modify speed dial preferences

Resource URI: /my/speeddial
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

updatePhones


canSubscribeToPresence


buttons

speed dial number, label, blf (true/false)

groupSpeedDial

true to inherit group speed dials

Return Values: N/A
Status Values: list of settings for the speed dial functionality
Specific Response Codes:
HTTP Method: GET
Rertrieves the speed dial preferences
Example: JSON for GET/PUT

{"updatePhones":false,"canSubscribeToPresence":true,"buttons":[],"groupSpeedDial":false}


HTTP Method: PUT
Saves the modified speed dial preferences
Unsupported HTTP Method: POST, DELETE


Activate active greeting

Resource URI: /my/mailbox/{user}/preferences/activegreeting/{greeting}
Default Resource Properties: N/A
Return Values: plain text (stream content should be one of: none, standard, outofoffice, extendedabsence). For a content different than above, "none" greeting will be saved
Status Values: list of settings for the speed dial functionality
Specific Response Codes:
HTTP Method: PUT
Sets active greeting setting for a specific user
Note: 'greeting' could be anything but not empty. There is an issue on how this url is formed (we could skip the 'greeting' as we send input content for PUT
Unsupported HTTP Method: GET, POST, DELETE

Conferences

Filter conferences for a user ID

Resource URI: /my/conferences
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

conferences


enabeled


name


description


extension


accessCode


Status Values: list with all conferences for a specific user
Specific Response Codes:
HTTP Method: GET
Returns a list with all conferences for a specific user (enabled, name, description, extension)
Example: XML format
<conferences>
<conference>
<enabled>true</enabled>
<name>myConf</name>
<description>description</description>
<extension>22123</extension>
<accessCode>555</accessCode>
</conference>
</conferences>
JSON format

{"conferences": [


{
"enabled": true,
"name": "myConf",
"description": "description",
"extension": "22123",
"accessCode": "555"
}
]}
Unsupported HTTP Method: PUT, POST, DELETE


View conference details

Resource URI: /my/conferencedetails/{confName}
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

conference


extension


locked


members


id


name


imID


uuid


volumeIn


volumeOut


energyLevel


canHear


canSpeak


Specific Response Codes:
Error 404 - when {confName} not found
Error 403 - when authenticated user is not owner of {confName}
Error 406 - when {confName} is found but not active (no participant in conference)
HTTP Method: GET
Returns conference details including members and details about members that are participants in conference XML, JSON
If the 'confName' does not exist or the conference is not active (no participants) then an error is returned
Example: XML format
<conference>
<extension>555</extension>
<description>desc</description>
<locked>false</locked>
<members>
<member>
<id>1</id>
<name>200</name>
<imId>200im</imId>
<uuid>33ee33ee</uuid>
<volumeIn>0</volumeIn>
<volumeOut>0</volumeOut>
<energyLevel>30</energyLevel>
<canHear>true</canHear>
<canSpeak>true</canSpeak>
</member>
<member>
<id>1</id>
<name>201</name>
<imId>201im</imId>
<uuid>333eee333</uuid>
<volumeIn>0</volumeIn>
<volumeOut>0</volumeOut>
<energyLevel>30</energyLevel>
<canHear>true</canHear>
<canSpeak>false</canSpeak>
</member>
</members>
</conference>
JSON format
{"conference": {
"extension": "555",
"description": "desc",
"locked": false,

"members": [


{
"id": 1,
"name": "200",
"imId": "200im",
"uuid": "33ee33ee",
"volumeIn": 0,
"volumeOut": 0,
"energyLevel": 30,
"canHear": true,
"canSpeak": true
},
{
"id": 1,
"name": "201",
"imId": "201im",
"uuid": "333eee333",
"volumeIn": 0,
"volumeOut": 0,
"energyLevel": 30,
"canHear": true,
"canSpeak": false
}
]
}}
Unsupported HTTP Method: PUT, POST, DELETE


View conference settings for all users

Resource URI: /my/conferences/
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

conference


enabled


description


extension


accessCode


Specific Response Codes:
HTTP Method: GET
Gets user conferences settings for all user owned conferences
Example: XML format
<conferences>
<conference>
<enabled>true</enabled>
<name>myConf</name>
<description>description</description>
<extension>22123</extension>
<accessCode>555</accessCode>
</conference>
</conferences>
JSON format

{"conferences": [


{
"enabled": true,
"name": "myConf",
"description": "description",
"extension": "22123",
"accessCode": "555"
}
]}
Unsupported HTTP Method: POST, DELETE


View user conference details

Resource URI: /my/conferences/{name}
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

enabled


name


autoeRecorded


quickStart


video


sendActiveVideoOnly


maxMembers


moh


moderatedRoom


publicRoom


Status Values: N/A
Specific Response Codes: N/A
HTTP Method: GET
gets user conference details given conference name 'name'
Example: XML format for GET/PUT
<setting>
<enabled>true</enabled>
<name>MirceaConf</name>
<autorecorded>true</autorecorded>
<quickstart>true</quickstart>
<video>false</video>
<sendActiveVideoOnly>false</sendActiveVideoOnly>
<maxMembers>0</maxMembers>
<moh>FILES_SRC</moh>
<moderatedRoom>false</moderatedRoom>
<publicRoom>true</publicRoom>
</setting>
Example: JSON format for GET/PUT
{"setting": {
"enabled": true,
"name": "MirceaConf",
"autorecorded": true,
"quickstart": true,
"video": false,
"sendActiveVideoOnly": false,
"maxMembers": 0,
"moh": "FILES_SRC",
"moderatedRoom": false,
"publicRoom": true
}}
HTTP Method: PUT
Saves user conference details given conference name 'name'
Unsupported HTTP Method: POST, DELETE

FreeSwitch conference commands

Resource URI: my/conference/{confName}
This is a web service that allows you to execute FreeSwitch commands for conferences. For details, see section 3.1.4 FreeSwitch Conference Commands

System

Change user portal password

Resource URI: /my/portal/password/{password}
Default Resource Properties: N/A
Specific Response Codes: Error 400 - PUT when {password} not valid (less than 8 characters or null)
HTTP Method: PUT
Change user-portal password with 'password'.
Example: N/A
Unsupported HTTP Method: GET, POST, DELETE

View fax extensions and DID number

Resource URI: /my/faxprefs
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

extension

Extension number.

did

DID number

Specific Response Codes: N/A
HTTP Method: GET
Gets user fax extension and Direct Inward Dialing (DID) number.
Example: JSON
{"extension":"454","did":"66"}
HTTP Method: PUT
Saves user conference details given conference name 'name'
Unsupported HTTP Method: PUT, POST, DELETE

View configuration servers' time

Resource URI: /my/time
Default Resource Properties: N/A
Specific Response Codes:
HTTP Method: GET
Retrieves config server time
Example: text/plain format
May 16, 2014 11:19 AM
Unsupported HTTP Method: PUT, POST, DELETE

View log in details

Resource URI: /my/logindetails
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

login-details

Header for log in details.

userName

User name.

imID

IM name.

ldapImAuth

Determines if LDAP authentication is enabled. Displays True or False.

sipPassword

SIP password.

Specific Response Codes: N/A
HTTP Method: GET
Retrieves login detail
Example: XML format
<login-details>
<userName>200</userName>
<imId>mirceac</imId>
<ldapImAuth>false</ldapImAuth>
<sipPassword>GQjEXWCbU2hQ</sipPassword>
</login-details>
JSON format
{"login-details": {
"userName": "200",
"imId": "mirceac",
"ldapImAuth": false,
"sipPassword": "GQjEXWCbU2hQ"
}}
Unsupported HTTP Method: PUT, POST, DELETE

View user details, password and the servers' host name

Resource URI: /my/faxprefs
Default Resource Properties:
The resource is represented by the following properties when the GET request is performed:

Property

Description

logInDetails


userName


imID


ldapImAuth


sipPassword


pin


im-location


fqdn

im server fully qualified domain name

Return Values: list with details
Status Values: N/A
Specific Response Codes:
HTTP Method: GET
Retrieves login details as above and in addition user entered password and host names where instant messaging server is running (Uniteme only).
Example: XML format
<login-details>
<userName>200</userName>
<imId>mirceac</imId>
<ldapImAuth>false</ldapImAuth>
<sipPassword>GQjEXWCbU2hQ</sipPassword>
<pin>11111111</pin>
<im-locations>
<im-location>
<fqdn>mircea.work-ezuce.ro</fqdn>
</im-location>
</im-locations>
</login-details>
JSON format
{"login-details": {
"userName": "200",
"imId": "mirceac",
"ldapImAuth": false,
"sipPassword": "GQjEXWCbU2hQ",
"pin": "11111111",

"im-locations": [


{
"fqdn": "mircea.work-ezuce.ro"
}
]
}
Unsupported HTTP Method: PUT, POST, DELETE


Keep session alive

Resource URI: /my/keepalive
Default Resource Properties: N/A
Return Values: N/A
Status Values: N/A
Specific Response Codes: N/A
HTTP Method: GET
Meant to be periodically called by clients in order to keep their web session alive.
Unsupported HTTP Method: PUT, POST, DELETE