Avaya Management API IPO11 0
Avaya Management API IPO11 0
IP Office 11.0
Management API Developer
Reference Guide
Notice
While reasonable efforts have been made to ensure that the information in this document is complete and
accurate at the time of printing, Avaya assumes no liability for any errors. Avaya reserves the right to make
changes and corrections to the information in this document without the obligation to notify any person or
organization of such changes.
Documentation disclaimer
“Documentation” means information published by Avaya in varying mediums which may include product
information, operating instructions and performance specifications that Avaya may generally make available
to users of its products and Hosted Services. Documentation does not include marketing materials. Avaya
shall not be responsible for any modifications, additions, or deletions to the original published version of
documentation unless such modifications, additions, or deletions were performed by Avaya. End User
agrees to indemnify and hold harmless Avaya, Avaya's agents, servants and employees against all claims,
lawsuits, demands and judgments arising out of, or in connection with, subsequent modifications, additions
or deletions to this documentation, to the extent made by End User.
Link disclaimer
Avaya is not responsible for the contents or reliability of any linked websites referenced within this site or
documentation provided by Avaya. Avaya is not responsible for the accuracy of any information, statement
or content provided on these sites and does not necessarily endorse the products, services, or information
described or offered within them. Avaya does not guarantee that these links will work all the time and has no
control over the availability of the linked pages.
Warranty
Avaya provides a limited warranty on Avaya hardware and software. Refer to your sales agreement to
establish the terms of the limited warranty. In addition, Avaya’s standard warranty language, as well as
information regarding support for this product while under warranty is available to Avaya customers and
other parties through the Avaya Support website:
https://support.avaya.com/helpcenter/getGenericDetails?detailId=C20091120112456651010 under the link
“Warranty & Product Lifecycle” or such successor site as designated by Avaya. Please note that if You
acquired the product(s) from an authorized Avaya Channel Partner outside of the United States and
Canada, the warranty is provided to You by said Avaya Channel Partner and not by Avaya.
“Hosted Service” means a hosted service subscription that You acquire from either Avaya or an authorized
Avaya Channel Partner (as applicable) and which is described further in Hosted SAS or other service
description documentation regarding the applicable hosted service. If You purchase a Hosted Service
subscription, the foregoing limited warranty may not apply but You may be entitled to support services in
connection with the Hosted Service as described further in your service description documents for the
applicable Hosted Service. Contact Avaya or Avaya Channel Partner (as applicable) for more information.
Hosted Service
THE FOLLOWING APPLIES IF YOU PURCHASE A HOSTED SERVICE SUBSCRIPTION FROM AVAYA
OR AN AVAYA CHANNEL PARTNER (AS APPLICABLE), THE TERMS OF USE FOR HOSTED
SERVICES ARE AVAILABLE ON THE AVAYA WEBSITE,
HTTPS://SUPPORT.AVAYA.COM/LICENSEINFO UNDER THE LINK “Avaya Terms of Use for Hosted
Services” OR SUCH SUCCESSOR SITE AS DESIGNATED BY AVAYA, AND ARE APPLICABLE TO
ANYONE WHO ACCESSES OR USES THE HOSTED SERVICE. BY ACCESSING OR USING THE
HOSTED SERVICE, OR AUTHORIZING OTHERS TO DO SO, YOU, ON BEHALF OF YOURSELF AND
THE ENTITY FOR WHOM YOU ARE DOING SO (HEREINAFTER REFERRED TO INTERCHANGEABLY
AS “YOU” AND “END USER”), AGREE TO THE TERMS OF USE. IF YOU ARE ACCEPTING THE TERMS
OF USE ON BEHALF A COMPANY OR OTHER LEGAL ENTITY, YOU REPRESENT THAT YOU HAVE
THE AUTHORITY TO BIND SUCH ENTITY TO THESE TERMS OF USE. IF YOU DO NOT HAVE SUCH
AUTHORITY, OR IF YOU DO NOT WISH TO ACCEPT THESE TERMS OF USE, YOU MUST NOT
ACCESS OR USE THE HOSTED SERVICE OR AUTHORIZE ANYONE TO ACCESS OR USE THE
HOSTED SERVICE. YOUR USE OF THE HOSTED SERVICE SHALL BE LIMITED BY THE NUMBER AND
TYPE OF LICENSES PURCHASED UNDER YOUR CONTRACT FOR THE HOSTED SERVICE,
PROVIDED, HOWEVER, THAT FOR CERTAIN HOSTED SERVICES IF APPLICABLE, YOU MAY HAVE
THE OPPORTUNITY TO USE FLEX LICENSES, WHICH WILL BE INVOICED ACCORDING TO ACTUAL
USAGE ABOVE THE CONTRACT LICENSE LEVEL. CONTACT AVAYA OR AVAYA’S CHANNEL
PARTNER FOR MORE INFORMATION ABOUT THE LICENSES FOR THE APPLICABLE HOSTED
Licenses
THE SOFTWARE LICENSE TERMS AVAILABLE ON THE AVAYA WEBSITE,
HTTPS://SUPPORT.AVAYA.COM/LICENSEINFO, UNDER THE LINK “AVAYA SOFTWARE LICENSE
TERMS (Avaya Products)” OR SUCH SUCCESSOR SITE AS DESIGNATED BY AVAYA, ARE
APPLICABLE TO ANYONE WHO DOWNLOADS, USES AND/OR INSTALLS AVAYA SOFTWARE,
PURCHASED FROM AVAYA INC., ANY AVAYA AFFILIATE, OR AN AVAYA CHANNEL PARTNER (AS
APPLICABLE) UNDER A COMMERCIAL AGREEMENT WITH AVAYA OR AN AVAYA CHANNEL
PARTNER. UNLESS OTHERWISE AGREED TO BY AVAYA IN WRITING, AVAYA DOES NOT EXTEND
THIS LICENSE IF THE SOFTWARE WAS OBTAINED FROM ANYONE OTHER THAN AVAYA, AN AVAYA
AFFILIATE OR AN AVAYA CHANNEL PARTNER; AVAYA RESERVES THE RIGHT TO TAKE LEGAL
ACTION AGAINST YOU AND ANYONE ELSE USING OR SELLING THE SOFTWARE WITHOUT A
LICENSE. BY INSTALLING, DOWNLOADING OR USING THE SOFTWARE, OR AUTHORIZING OTHERS
TO DO SO, YOU, ON BEHALF OF YOURSELF AND THE ENTITY FOR WHOM YOU ARE INSTALLING,
DOWNLOADING OR USING THE SOFTWARE (HEREINAFTER REFERRED TO INTERCHANGEABLY AS
“YOU” AND “END USER”), AGREE TO THESE TERMS AND CONDITIONS AND CREATE A BINDING
CONTRACT BETWEEN YOU AND AVAYA INC. OR THE APPLICABLE AVAYA AFFILIATE (“AVAYA”).
Avaya grants You a license within the scope of the license types described below, with the exception of
Heritage Nortel Software, for which the scope of the license is detailed below. Where the order
documentation does not expressly identify a license type, the applicable license will be a Designated System
License. The applicable number of licenses and units of capacity for which the license is granted will be one
(1), unless a different number of licenses or units of capacity is specified in the documentation or other
materials available to You. “Software” means computer programs in object code, provided by Avaya or an
Avaya Channel Partner, whether as stand-alone products, pre-installed on hardware products, and any
upgrades, updates, patches, bug fixes, or modified versions thereto. “Designated Processor” means a single
stand-alone computing device. “Server” means a Designated Processor that hosts a software application to
be accessed by multiple users. “Instance” means a single copy of the Software executing at a particular
time: (i) on one physical machine; or (ii) on one deployed software virtual machine (“VM”) or similar
deployment.
License type(s)
Designated System(s) License (DS). End User may install and use each copy or an Instance of the Software
only on a number of Designated Processors up to the number indicated in the order. Avaya may require the
Designated Processor(s) to be identified in the order by type, serial number, feature key, Instance, location
or other specific designation, or to be provided by End User to Avaya through electronic means established
by Avaya specifically for this purpose.
Concurrent User License (CU). End User may install and use the Software on multiple Designated
Processors or one or more Servers, so long as only the licensed number of Units are accessing and using
the Software at any given time. A “Unit” means the unit on which Avaya, at its sole discretion, bases the
pricing of its licenses and can be, without limitation, an agent, port or user, an e-mail or voice mail account in
the name of a person or corporate function (e.g., webmaster or helpdesk), or a directory entry in the
administrative database utilized by the Software that permits one user to interface with the Software. Units
may be linked to a specific, identified Server or an Instance of the Software.
Database License (DL). End User may install and use each copy or an Instance of the Software on one
Server or on multiple Servers provided that each of the Servers on which the Software is installed
communicates with no more than one Instance of the same database.
CPU License (CP). End User may install and use each copy or Instance of the Software on a number of
Servers up to the number indicated in the order provided that the performance capacity of the Server(s)
does not exceed the performance capacity specified for the Software. End User may not re-install or operate
the Software on Server(s) with a larger performance capacity without Avaya’s prior consent and payment of
an upgrade fee.
Named User License (NU). You may: (i) install and use each copy or Instance of the Software on a single
Designated Processor or Server per authorized Named User (defined below); or (ii) install and use each
copy or Instance of the Software on a Server so long as only authorized Named Users access and use the
Software. “Named User”, means a user or device that has been expressly authorized by Avaya to access
Shrinkwrap License (SR). You may install and use the Software in accordance with the terms and conditions
of the applicable license agreements, such as “shrinkwrap” or “clickthrough” license accompanying or
applicable to the Software (“Shrinkwrap License”).
Copyright
Except where expressly stated otherwise, no use should be made of materials on this site, the
Documentation, Software, Hosted Service, or hardware provided by Avaya. All content on this site, the
documentation, Hosted Service, and the product provided by Avaya including the selection, arrangement
and design of the content is owned either by Avaya or its licensors and is protected by copyright and other
intellectual property laws including the sui generis rights relating to the protection of databases. You may not
modify, copy, reproduce, republish, upload, post, transmit or distribute in any way any content, in whole or in
part, including any code and software unless expressly authorized by Avaya. Unauthorized reproduction,
transmission, dissemination, storage, and or use without the express written consent of Avaya can be a
criminal, as well as a civil offense under the applicable law.
Virtualization
The following applies if the product is deployed on a virtual machine. Each product has its own ordering
code and license types. Note that each Instance of a product must be separately licensed and ordered. For
example, if the end user customer or Avaya Channel Partner would like to install two Instances of the same
type of products, then two products of that type must be ordered.
The following applies if the H.264 (AVC) codec is distributed with the product. THIS PRODUCT IS
LICENSED UNDER THE AVC PATENT PORTFOLIO LICENSE FOR THE PERSONAL USE OF A
CONSUMER OR OTHER USES IN WHICH IT DOES NOT RECEIVE REMUNERATION TO (i) ENCODE
VIDEO IN COMPLIANCE WITH THE AVC STANDARD (“AVC VIDEO”) AND/OR (ii) DECODE AVC VIDEO
THAT WAS ENCODED BY A CONSUMER ENGAGED IN A PERSONAL ACTIVITY AND/OR WAS
OBTAINED FROM A VIDEO PROVIDER LICENSED TO PROVIDE AVC VIDEO. NO LICENSE IS
GRANTED OR SHALL BE IMPLIED FOR ANY OTHER USE. ADDITIONAL INFORMATION MAY BE
OBTAINED FROM MPEG LA, L.L.C. SEE HTTP://WWW.MPEGLA.COM.
WITH RESPECT TO CODECS, IF THE AVAYA CHANNEL PARTNER IS HOSTING ANY PRODUCTS
THAT USE OR EMBED THE G.729 CODEC, H.264 CODEC, OR H.265 CODEC, THE AVAYA CHANNEL
PARTNER ACKNOWLEDGES AND AGREES THE AVAYA CHANNEL PARTNER IS RESPONSIBLE FOR
ANY AND ALL RELATED FEES AND/OR ROYALTIES. THE G.729 CODEC IS LICENSED BY SIPRO LAB
TELECOM INC. SEE WWW.SIPRO.COM/CONTACT.HTML. THE H.264 (AVC) CODEC IS LICENSED
UNDER THE AVC PATENT PORTFOLIO LICENSE FOR THE PERSONAL USE OF A CONSUMER OR
OTHER USES IN WHICH IT DOES NOT RECEIVE REMUNERATION TO: (I) ENCODE VIDEO IN
COMPLIANCE WITH THE AVC STANDARD (“AVC VIDEO”) AND/OR (II) DECODE AVC VIDEO THAT
WAS ENCODED BY A CONSUMER ENGAGED IN A PERSONAL ACTIVITY AND/OR WAS OBTAINED
FROM A VIDEO PROVIDER LICENSED TO PROVIDE AVC VIDEO. NO LICENSE IS GRANTED OR
SHALL BE IMPLIED FOR ANY OTHER USE. ADDITIONAL INFORMATION FOR H.264 (AVC) AND H.265
(HEVC) CODECS MAY BE OBTAINED FROM MPEG LA, L.L.C. SEE HTTP://WWW.MPEGLA.COM.
Security Vulnerabilities
Information about Avaya’s security support policies can be found in the Security Policies and Support
section of https://support.avaya.com/security. Suspected Avaya product security vulnerabilities are handled
per the Avaya Product Security Support Flow (https://support.avaya.com/css/P8/documents/100161515).
Downloading Documentation
For the most current versions of Documentation, see the Avaya Support website: https://support.avaya.com,
or such successor site as designated by Avaya.
1.2 Scope
Web Services are typically referred to as Application Programming Interfaces
(API) that are accessed via the web (or over a network) and which provide
capabilities or services offered by a remote host.
Accesses to web services APIs is provided using the HTTPS protocol and in
REST format.
The REST request consists of a URI with parameters. When the IP Office
receives a REST request, the Web Service component determines the operation
type parses the parameters and performs the requested task. The output of a
REST request is either an HTTP error status or an HTTP status of 200 OK with
XML or JSON formatted results’.
As REST is built on top of HTTP 1.1, the following table presents a mapping of
HTTP standard operations and the corresponding standard REST behaviors.
200 OK
The 200 (Ok) status code is returned to the web client due to a successful
request.
201 Created
The 201 (Created) status code is returned to the web client when a new object is
created.
401 Unauthorized
The 401 (Unauthorized) status code will be provided when the request requires
user authentication.
The above figure shows a typical IPOL solution. To access the Management
APIs the Primary server will provide the consolidated web services for the entire
solution. There will be no need to access the individual node. Authentication for
the nodes will be done against the Primary and all nodes must have same
password for service user as the Primary node. If the passwords are different for
the nodes, then the Primary node will fail to consolidate the object data and the
data from the Secondary or Expansion will not be accessible from the Primary
The above figure shows a typical IP 500 V2 solution for accessing the
Management APIs. The Application Server will provide Web services for IP500
V2 Standard Edition. Authentication will be done against the Shell IPO security
Database. Credentials of the service user on the nodes and Shell IPO must be
the same. ProvisionIPAddress Web Service is provided to provision IP
address of the IP 500 V2 standard edition so as to access the Management
APIs. For SCN solution, the IP address of the IP500 V2 should be individually
provisioned on the Application Server.
4. Add a name and assign “Management API Group” for the service user.
The following sections provides the request and response structure. Note that
many fields are enumerations, please refer the section Understanding the data
for further detailed information about the enumeration values for the respective
field value in the response.
XML Response
<?xml version='1.0' encoding='UTF-8'?>
<response status="0">
<data>
<ws_object error_node="true">
<USER>
<error>
<error_code>9020</error_code>
<error_desc>"A user or huntgroup with the specified Name Already
Exist."</error_desc>
<cause>0</cause>
<cause_data>ethel</cause_data>
<errorLocation>10.240.0.5</errorLocation>
</error>
</USER>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"USER": {
"error": [
{
"error_code": "9020",
"error_desc": "\"A user or huntgroup with the specified Name Already
Exist.\"",
"cause": "0",
"cause_data": "ethel",
"errorLocation": "10.240.0.5"
}
]
}
}
]
}
}
}
JSON Response
{
"response": {
"@status": "1",
"data": {
}
}
}
}
Method: GET
URI: https://{host}:7070/WebManagement/ws/sdk/security/authenticate
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json.
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Sample code:
JavaScript
var xhr = new XMLHttpRequest();
xhr.open("GET",
"https://{host}:7070/WebManagement/ws/sdk/security/authenticate", false);
xhr.setRequestHeader("X-User-Agent", "Avaya-SDKUser");
xhr.setRequestHeader("X-User-Client", "Avaya-WebAdmin");
xhr.setRequestHeader("Content-Type", "application/xml");
xhr.setRequestHeader("Authorization", "Basic " + btoa("username:password"));
xhr.send();
if(conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
+ conn.getResponseCode());
}
cookies = getCookies(conn);
String output;
while ((output = br.readLine()) != null) {
System.out.println(output);
}
} catch (MalformedURLException e) {
e.printStackTrace();
}catch (IOException e) {
e.printStackTrace();
}
}
.NET
ServicePointManager.ServerCertificateValidationCallback = new
System.Net.Security.RemoteCertificateValidationCallback(CertificateValidationCallback);
response.Close();
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Set-Cookie: JSESSIONID=24121E0F893E7B8A97CACF6A6DEB1469; Path=/WebManagement/;
Secure; HttpOnly
Expires: Fri, 20 Nov 2015 12:59:47 GMT
Content-Type: application/xml
Transfer-Encoding: chunked
Date: Fri, 20 Nov 2015 12:59:45 GMT
Port: 7070
Base URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1
2.8.1 ProvisionIPAddress
Method: GET
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/provisionIPAddress
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/provisionIPAddress
Output Parameters:
.
An XML document containing information on each system defined in the solution
or solution node including (but not limited to):
GET https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/provisionIPAddress
HTTP/1.1
Accept-Encoding: gzip,deflate
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=0A9E6E64F52C74F2445C1E6C8A07FCF6
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 15:58:53 GMT
Content-Type: application/xml
Content-Length: 8025
Date: Tue, 08 Dec 2015 15:58:51 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<ProvisionIPAddress>
<IPAddress>192.168.42.6</IPAddress>
</ProvisionIPAddress>
</ws_object>
</data>
</response>
Method: PUT
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/provisionIPAddress
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Cookie: JSESSIONID=<session id obtained from authenticate>
Sample code:
Refer section Sample code for PUT method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/provisionIPAddress
XML Request
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<ProvisionIPAddress>
<IPAddress>192.168.42.6</IPAddress>
</ProvisionIPAddress>
</ws_object>
</data>
</response>
2.8.2 Systems
Method: GET
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/systems
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded
Input Parameters:
ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to apply
the command. If not present in the request, query applies to the entire solution.
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/systems
Output Parameters:
.
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 15:58:53 GMT
Content-Type: application/xml
Content-Length: 8025
Date: Tue, 08 Dec 2015 15:58:51 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data set="75" totalRecords="1">
<ws_object>
<System>
<Name>IPO-Primary</Name>
<Password/>
<MajorVersion>10</MajorVersion>
<MinorVersion>1</MinorVersion>
<Configuration>11</Configuration>
<BuildVersion>45</BuildVersion>
<Telephony>
<Locale>eng</Locale>
<ModemTxLevel>0</ModemTxLevel>
<ModemCDThreshold>0</ModemCDThreshold>
<ModemNoActivityTimeout>0</ModemNoActivityTimeout>
</Telephony>
<Voicemail>
<Type>1</Type>
</Voicemail>
<LANS>
<LAN id="LAN1">
JSON Response
{
"response": {
"@status": "1",
"data": {
"@set": "75",
"@totalRecords": "1",
"ws_object": {
"System": {
"Name": "WS-Nilesh",
"Password": "",
"MajorVersion": 10,
"MinorVersion": 1,
"Configuration": 11,
"BuildVersion": 45,
"Telephony": {
"Locale": "eng",
"ModemTxLevel": 0,
"ModemCDThreshold": 0,
"ModemNoActivityTimeout": 0
},
"Voicemail": {
"Type": 1
},
"LANS": {
"LAN": [{
"@id": "LAN1",
"IPAddress": "192.168.42.1",
"IPMask": "255.255.255.0",
"PrimaryTranslationIPAddress": "0.0.0.0",
"EnableNAT": false,
"RIPMode": 0,
"dhcp_address_number": 81,
"DHCPmode": 4,
"NetworkTopologyDiscovery": {
"StunServerAddress": "",
"ConnectivityType": 7,
"RefreshTime": 0,
"PublicIPAddress": "0.0.0.0",
"PublicPortUdp": 0,
"PublicPortTcp": 0,
"PublicPortTls": 0,
"STUNPort": 3478,
"RunOnFailure": false,
"IsBehindFirewall": false
},
"VoipGatekeeper": {
"H323GatekeeperEnable": true,
"H323RemoteExtnEnable": false,
"H323RemoteExtnCallSignalPort": 1720,
"H323SignalingOverTLS": 0,
"SipTrunksEnable": true,
"SipRegistrarEnable": false,
"SipRemoteExtnEnable": false,
"DomainName": "",
"SipUdpEnable": true,
Method: PUT
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/systems
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded
Input Body:
Content body of PUT request must be of the following format:
<?xml version=’1.0’ encoding=’UTF-8’ ?>
<data>
<ws_object>
<System>
……
</System>
</ws_object>
</data>
Input Parameters:
ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to apply
the command. If not present in the request, update applies to the Primary.
Sample code:
Refer section Sample code for PUT method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/systems
Output Parameters:
.
• An XML document indicating the success or failure of the update request.
PUT https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/systems
Accept-Encoding: gzip,deflate
Content-Type: application/xml
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=A1D589D6C7F37C31648AB2F26F8EAE96
X-User-Agent: Avaya-SDKUser
Content-Length: 268
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<System>
<PBXLicense>
<EnableRemoteServer>true</EnableRemoteServer>
<LicenseServerURL>https://10.240.0.5</LicenseServerURL>
<LicenseServerID>000433</LicenseServerID>
</PBXLicense>
</System>
</ws_object>
</data>
JSON Request
{
"ws_object": {
"System": {
"PBXLicense": {
"EnableRemoteServer": "true",
"LicenseServerURL": "https://10.240.0.5",
"LicenseServerID": "000433"
}
}
}
}
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
"ModifiedEntities": ""
},
{
"reboot": {
"@type": "normal"
}
}
]
}
}
}
2.8.3 Licenses
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/licenses
Method: GET
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/licenses
Output Parameters:
.
An XML document containing information on each license in the solution or
solution node including(but not limited to):
• Response Status – A value of 1 indicates Success, 0 is a failure
• Total Number of License Records
• GUID – Global Unique Identifier which uniquely identifies the license in the
system.
• LicenseKey – Name of the license
• Source – The source of the license
o Local = 0 : Indicates the license is locally installed (usually ADI
license)
o WebLM = 1 : Indicates the license is from a WebLM server.
o MappedLocal = 2 : Indicates that the license is
o MappedRemote = 3
o MappedVirtual = 4
• Type
• Status – The status of the license.
o INVALID = 0
o VALID = 1
o EXPIRED = 2
o TOKENEXPIRED = 3
o UNKNOWN = 4
o DORMANT = 5
o OBSOLETE = 6
• Quantity – Quantity of the license
• FreeInstances – Current free instances of the license.
• ExpiryDate – Expiry Date
• Mode
o UNKNOWN= 0
o ADI = 1
o PLDS = 2
o VIRTUAL = 3
• DisplayName – License name.
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 01 Mar 2016 13:14:30 GMT
Content-Type: application/xml
Content-Length: 3501
Date: Tue, 01 Mar 2016 13:14:28 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data totalRecords="6">
<ws_object>
<License GUID="CB61B380E4B711DEB53142010AF00009">
<LicenseKey>IP Office Select Platform</LicenseKey>
<Source>3</Source>
<Type>116</Type>
<Status>1</Status>
<Quantity>1</Quantity>
<FreeInstances>1</FreeInstances>
<ExpiryDate>2016/08/27</ExpiryDate>
<Mode>2</Mode>
<DisplayName>IP Office Select</DisplayName>
<AvailableUserPackageLicenseOfType>1</AvailableUserPackageLicenseOfType>
<IsGrace>false</IsGrace>
<PBXAddress>10.240.0.9</PBXAddress>
<Last-Modified>Mon, 29 Feb 2016 16:41:31 GMT</Last-Modified>
<Etag>2016-02-29T16:41:31:000R2669</Etag>
</License>
</ws_object>
<ws_object>
<License GUID="CB61B380E4B711DEB52F42010AF00009">
<LicenseKey>CTI Link Pro</LicenseKey>
<Source>3</Source>
<Type>2</Type>
<Status>1</Status>
<Quantity>1</Quantity>
<FreeInstances>1</FreeInstances>
<ExpiryDate>2016/08/27</ExpiryDate>
<Mode>2</Mode>
<DisplayName>CTI Link Pro</DisplayName>
<AvailableUserPackageLicenseOfType>1</AvailableUserPackageLicenseOfType>
<IsGrace>false</IsGrace>
<PBXAddress>10.240.0.9</PBXAddress>
<Last-Modified>Mon, 29 Feb 2016 16:41:31 GMT</Last-Modified>
<Etag>2016-02-29T16:41:31:000R5636</Etag>
</License>
</ws_object>
JSON Response
{
"response": {
"@status": "1",
"data": {
"@totalRecords": "6",
"ws_object": [
{
"License": {
"@GUID": "CB61B380E4B711DEB53142010AF00009",
"LicenseKey": "IP Office Select Platform",
"Source": "3",
"Type": "116",
"Status": "1",
"Quantity": "1",
"FreeInstances": "1",
"ExpiryDate": "2016/08/27",
"Mode": "2",
"DisplayName": "IP Office Select",
"AvailableUserPackageLicenseOfType": "1",
"IsGrace": "false",
"PBXAddress": "10.240.0.9",
}
},
{
"License": {
"@GUID": "CB61B380E4B711DEB52F42010AF00009",
"LicenseKey": "CTI Link Pro",
"Source": "3",
"Type": "2",
"Status": "1",
"Quantity": "1",
"FreeInstances": "1",
"ExpiryDate": "2016/08/27",
"Mode": "2",
"DisplayName": "CTI Link Pro",
"AvailableUserPackageLicenseOfType": "1",
"IsGrace": "false",
"PBXAddress": "10.240.0.9",
}
},
{
"License": {
"@GUID": "CB61B380E4B711DEB53042010AF00009",
"LicenseKey": "Server Edition",
"Source": "3",
"Type": "123",
"Status": "1",
"Quantity": "1",
"FreeInstances": "1",
"ExpiryDate": "2016/08/27",
"Mode": "2",
"DisplayName": "Server Edition R10",
"AvailableUserPackageLicenseOfType": "1",
"IsGrace": "false",
"PBXAddress": "10.240.0.9",
}
},
{
"License": {
"@GUID": "CB61B380E4B711DEB52D42010AF00009",
"LicenseKey": "VMPro Recordings Administrators",
2.8.4 Users
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Method: GET
Content-Type: none.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Output Parameters:
.
An XML document containing information on each user defined in the solution
or solution node including (but not limited to):
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 16:27:14 GMT
Content-Type: application/xml
Transfer-Encoding: chunked
Date: Tue, 08 Dec 2015 16:27:12 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data set="75" totalRecords="3">
<ws_object>
<User GUID="2DF9B1002C7C11E08687000C29F56F71">
<AssignedPackage>1</AssignedPackage>
<BlockForwarding>false</BlockForwarding>
<CanIntrude>false</CanIntrude>
<CannotBeIntruded>true</CannotBeIntruded>
<DisableForwardBusyNoAnsOnInt>false</DisableForwardBusyNoAnsOnInt>
<DisableForwardUncondOnInt>false</DisableForwardUncondOnInt>
<DNDExceptions></DNDExceptions>
<DoNotDisturb>false</DoNotDisturb>
<ExpansionType>0</ExpansionType>
<Extension>854790</Extension>
<FlareEnabled>false</FlareEnabled>
<FollowMeNumber>123456</FollowMeNumber>
<ForceAccountCode>false</ForceAccountCode>
<ForwardHuntGroupCalls>false</ForwardHuntGroupCalls>
<ForwardOnBusy>false</ForwardOnBusy>
<ForwardOnNoAnswer>false</ForwardOnNoAnswer>
<ForwardToVoicemail>false</ForwardToVoicemail>
<ForwardUnconditional>false</ForwardUnconditional>
<FullName>User FullName</FullName>
<IdleLinePreference>true</IdleLinePreference>
<LoginCode>123456</LoginCode>
<MobilityFeatures>false</MobilityFeatures>
<Name>User1</Name>
<OutgoingCallBar>false</OutgoingCallBar>
<OutOfHoursUserRights></OutOfHoursUserRights>
<PhoneType>-1</PhoneType>
<Priority>5</Priority>
<Receptionist>false</Receptionist>
<RemoteWorker>false</RemoteWorker>
<SIPContact>123456</SIPContact>
<SIPName>123456</SIPName>
<SpecificBstType>-1</SpecificBstType>
<TwinningType>0</TwinningType>
JSON Response
{"response": {
"@status": "1",
"data": {
"@set": "75",
"@totalRecords": "3",
"ws_object": [
{"User": {
"@GUID": "2DF9B1002C7C11E08687000C29F56F71",
"AssignedPackage": 1,
"BlockForwarding": false,
"CanIntrude": false,
"CannotBeIntruded": true,
"DisableForwardBusyNoAnsOnInt": false,
"DisableForwardUncondOnInt": false,
"DNDExceptions": "",
"DoNotDisturb": false,
"ExpansionType": 0,
"Extension": 854790,
"FlareEnabled": false,
"FollowMeNumber": 123456,
"ForceAccountCode": false,
"ForwardHuntGroupCalls": false,
"ForwardOnBusy": false,
"ForwardOnNoAnswer": false,
"ForwardToVoicemail": false,
"ForwardUnconditional": false,
"FullName": "User FullName",
"IdleLinePreference": true,
"LoginCode": 123456,
"MobilityFeatures": false,
"Name": "User1",
"OutgoingCallBar": false,
"OutOfHoursUserRights": "",
"PhoneType": -1,
"Priority": 5,
"Receptionist": false,
"RemoteWorker": false,
"SIPContact": 123456,
"SIPName": 123456,
"SpecificBstType": -1,
"TwinningType": 0,
"UMSWebServices": false,
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Method: POST
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Body:
Content body of POST request must be of the following format:
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
Sample code:
Refer section Sample code for POST method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Output Parameters:
An XML document indicating the success or failure of the Add request.
POST https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/users
Accept-Encoding: gzip,deflate
Content-Type: application/xml
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=A1D589D6C7F37C31648AB2F26F8EAE96
X-User-Agent: Avaya-SDKUser
Content-Length: 874
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
JSON Request
{
"data": {
"ws_object": {
"User": {
"Name": "ethel",
"Password": "195656",
"FullName": "ethel E129",
"Extension": "309",
"XDirectory": "false",
"VoicemailOn": "true",
"VoicemailCode": "1956",
"Receptionist": "false",
"AssignedPackage": "4",
"RemoteWorker": "true",
"TwinningType": "0",
"MobilityFeatures": "false",
"UMSWebServices": "true",
"FlareEnabled": "true",
"LoginCode": "195656",
"WebCollaboration": "false"
}
}
}
}
Result: Indicates 2 errors with the add request. One error is that the user name
already exists and the second is to indicate that the extension provided also
conflicts with another user’s extension.
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"USER": {
"error": [
{
"error_code": "9020",
"error_desc": "\"A user or huntgroup with the specified Name Already
Exist.\"",
"cause": "0",
"cause_data": "ethel",
"errorLocation": "10.240.0.5"
},
{
"error_code": "18011",
"error_desc": "\"Extension conflicts with another user\"",
"cause": "0",
"cause_data": "ethel",
"errorLocation": "10.240.0.5"
}
]
}
},
{
"@error_node": "true",
"REBOOT": {
"error": { "errorLocation": "10.240.0.5" }
}
POST https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/users
Accept-Encoding: gzip,deflate
Content-Type: application/xml
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=A1D589D6C7F37C31648AB2F26F8EAE96
X-User-Agent: Avaya-SDKUser
Content-Length: 874
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<User>
<Name>ethel</Name>
<Password>195656</Password>
<FullName>ethel E129</FullName>
<Extension>309</Extension>
<VoicemailEmail/>
<XDirectory>false</XDirectory>
<VoicemailOn>true</VoicemailOn>
<VoicemailCode>1956</VoicemailCode>
<Receptionist>false</Receptionist>
<AssignedPackage>4</AssignedPackage>
<RemoteWorker>true</RemoteWorker>
<TwinningType>0</TwinningType>
<MobilityFeatures>false</MobilityFeatures>
<UMSWebServices>true</UMSWebServices>
<FlareEnabled>true</FlareEnabled>
<LoginCode>195656</LoginCode>
<SIPName/>
<SIPContact/>
<WebCollaboration>false</WebCollaboration>
</User>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"User": {
"Name": "ethel",
"Password": "195656",
"FullName": "ethel E129",
"Extension": "309",
"XDirectory": "false",
"VoicemailOn": "true",
"VoicemailCode": "1956",
"Receptionist": "false",
"AssignedPackage": "4",
"RemoteWorker": "true",
Result: Indicates an error because the session has timed out. A new session
would need to be created by authenticating again.
XML Response
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>461:SessionTimeout</error_code>
<error_desc>130.211.136.50</error_desc>
<errorLocation>130.211.136.50</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "461:SessionTimeout",
"error_desc": "130.211.136.50",
"errorLocation": "130.211.136.50"
}
}
}
}
}
}
POST https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/users
Accept-Encoding: gzip,deflate
Content-Type: application/xml
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=A1D589D6C7F37C31648AB2F26F8EAE96
X-User-Agent: Avaya-SDKUser
Content-Length: 879
Host: 130.211.136.50:7070
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<User>
<Name>ethelmania</Name>
<Password>195656</Password>
<FullName>ethel E129</FullName>
<Extension>399</Extension>
<VoicemailEmail/>
<XDirectory>false</XDirectory>
<VoicemailOn>true</VoicemailOn>
<VoicemailCode>1956</VoicemailCode>
<Receptionist>false</Receptionist>
<AssignedPackage>4</AssignedPackage>
<RemoteWorker>true</RemoteWorker>
<TwinningType>0</TwinningType>
<MobilityFeatures>false</MobilityFeatures>
<UMSWebServices>true</UMSWebServices>
<FlareEnabled>true</FlareEnabled>
<LoginCode>195656</LoginCode>
<SIPName/>
<SIPContact/>
<WebCollaboration>false</WebCollaboration>
</User>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"User": {
"Name": "ethelmania",
"Password": "195656",
"FullName": "ethel E129",
"Extension": "399",
"XDirectory": "false",
"VoicemailOn": "true",
"VoicemailCode": "1956",
"Receptionist": "false",
"AssignedPackage": "4",
"RemoteWorker": "true",
"TwinningType": "0",
"MobilityFeatures": "false",
"UMSWebServices": "true",
"FlareEnabled": "true",
"LoginCode": "195656",
"WebCollaboration": "false"
}
}
}
}
Result: Indicates success and that a new user has been successfully created.
The GUID for the new user is returned in the response.
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
"User": {
"@GUID": "70BD92809BC511DEBA7242010AF00005",
"Name": "ethelmania"
}
},
{
"reboot": { "@type": "normal" }
}
]
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Method: PUT
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Body:
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
Sample code:
Refer section Sample code for PUT method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Output Parameters:
.
An XML document indicating the success or failure of the update request.
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<User>
<FullName>ethel E130</FullName>
</User>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"User": { "FullName": "ethel E130" }
}
}
}
Result: Indicates an error with the update request. The error indicates that
no GUID was supplied to identify the user.
XML Response
<response status="0">
<data>
<ws_object error_node="true">
<USER>
<error>
<error_code>15</error_code>
<error_desc>"GUID missing in body"</error_desc>
<cause>0</cause>
<errorLocation>10.240.0.5</errorLocation>
</error>
</USER>
</ws_object>
<ws_object error_node="true">
<REBOOT>
<error>
<errorLocation>10.240.0.5</errorLocation>
</error>
</REBOOT>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"USER": {
"error": {
"error_code": "15",
"error_desc": "\"GUID missing in body\"",
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<User GUID="70BD92809BC511DEBA7242010AF00005">
<FullName>ethel E129</FullName>
</User>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"User": {
"-GUID": "70BD92809BC511DEBA7242010AF00005",
"FullName": "ethel E129"
}
}
}
}
XML Response
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": {
"reboot": { "@type": "normal" }
}
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Method: DELETE
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
• Guid (required) – GUID of the user to delete from the system.
Sample code:
Refer section Sample code for DELETE method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/users
Result: Indicates an error with the delete request. The reason was no GUID
was supplied.
XML Response
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>400:BadRequest</error_code>
<error_desc>10.240.0.5</error_desc>
<cause/>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "400:BadRequest",
"error_desc": "10.240.0.5",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
Result: Indicates an error with the delete request. The reason was no GUID was
supplied.
XML Response
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>404:NotFound</error_code>
<error_desc>10.240.0.5</error_desc>
<cause/>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "404:NotFound",
"error_desc": "10.240.0.5",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
DELETE https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/users?guid=<GUID of
the user to be deleted>
HTTP/1.1
Accept-Encoding: gzip,deflate
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=6FE5AC38C87FC9A8B91F8E5EBA09B00E
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
XML Response
<response status="1">
<data>
<ws_object>
<ModifiedEntities/>
</ws_object>
<ws_object>
<reboot type="normal"/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
},
{
"reboot": { "@type": "normal" }
}
]
}
}
}
2.8.5 Extensions
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/extensions
Method: GET
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/extensions
Output Parameters:
.
An XML document containing information on each extension defined in the
solution or solution node including (but not limited to):
Example 1: Get all extensions defined in the solution – Error Session Timeout
Result:
XML Response
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>461:SessionTimeout</error_code>
<error_desc>130.211.136.50</error_desc>
<errorLocation>130.211.136.50</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 13:19:19 GMT
Content-Type: application/xml
Content-Length: 6419
Date: Fri, 27 Nov 2015 13:19:17 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data set="75" totalRecords="26">
<ws_object>
<Extension GUID="31A7D5009AC511DEAE0C42010AF00005">
<Id>11218</Id>
<Extension>306</Extension>
<TypeInfo>1</TypeInfo>
<CallerDisplayType>1</CallerDisplayType>
<Module>0</Module>
<Port>0</Port>
<Location>0</Location>
</Extension>
</ws_object>
<ws_object>
<Extension GUID="2CE27B009AC511DEAE0C42010AF00005">
<Id>11216</Id>
<Extension>314</Extension>
<TypeInfo>4</TypeInfo>
<CallerDisplayType>1</CallerDisplayType>
<Module>0</Module>
JSON Response
{
"response": {
"@status": "1",
"data": {
"@set": "75",
"@totalRecords": "26",
"ws_object": [
{
"Extension": {
"@GUID": "31A7D5009AC511DEAE0C42010AF00005",
"Id": "11218",
"Extension": "306",
"TypeInfo": "1",
"CallerDisplayType": "1",
"Module": "0",
"Port": "0",
"Location": "0"
}
},
{
"Extension": {
"@GUID": "2CE27B009AC511DEAE0C42010AF00005",
"Id": "11216",
"Extension": "314",
"TypeInfo": "4",
"CallerDisplayType": "1",
"Module": "0",
"Port": "0",
"Location": "0"
}
},
{
"Extension": {
"@GUID": "1DFC21809AC511DEAE0842010AF00005",
"Id": "11207",
"Extension": "312",
"TypeInfo": "3",
"CallerDisplayType": "1",
"Module": "0",
"Port": "0",
"Location": "0"
}
}
]
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/extensions
Method: POST
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Body:
Content body of POST request must be of the following format:
XML Request
<?xml version="1.0" encoding="UTF-8" ?>
<data>
<ws_object>
<Extension>
<Extension> </Extension>
<TypeInfo> </TypeInfo>
</Extension>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"Extension": {
"Extension": " ",
"TypeInfo": " "
}
}
}
}
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Sample code:
Refer section Sample code for POST method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/systems
Output Parameters:
.An XML document indicating the success or failure of the Add request.
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<Extension>
<Extension>406</Extension>
<TypeInfo>1</TypeInfo>
</Extension>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"Extension": {
"Extension": "406",
"TypeInfo": "1"
}
}
}
}
Result: Indicates success and returns the GUID of the newly created
extension along with an Id.
XML Response
<?xml version='1.0' encoding='UTF-8' ?>
<response status="1">
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
"Extension": {
"@GUID": "AAD783809C5711DEBD3842010AF00005",
"Id": "11250"
}
},
{
},
{
"reboot": { "@type": "normal" }
}
]
}
}
}
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<Extension>
<Extension>406</Extension>
<TypeInfo>1</TypeInfo>
</Extension>
</ws_object>
</data>
JSON Request
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 14:25:28 GMT
Content-Type: application/xml
Content-Length: 489
Date: Fri, 27 Nov 2015 14:25:26 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<EXTENSION>
<error>
<error_code>9042</error_code>
<error_desc>"Extension number "406" already exists"</error_desc>
<cause>0</cause>
<cause_data>0</cause_data>
<errorLocation>10.240.0.5</errorLocation>
</error>
</EXTENSION>
</ws_object>
<ws_object error_node="true">
<REBOOT>
<error>
<errorLocation>10.240.0.5</errorLocation>
</error>
</REBOOT>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"EXTENSION": {
"error": {
"error_code": "9042",
"error_desc": "\"Extension number \"406\" already exists\"",
"cause": "0",
"cause_data": "0",
"errorLocation": "10.240.0.5"
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/extensions
Method: PUT
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Body:
Content body of PUT request must be of the following format (note that
the GUID of the extension to update must be included as an attribute of
the Extension):
XML Request
<?xml version="1.0" encoding="UTF-8" ?>
<data>
<ws_object>
<Extension GUID=”<guid of extension>”>
<Extension> </Extension>
<TypeInfo> </TypeInfo>
</Extension>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"Extension": {
"@GUID": "<guidOfextension>",
"Extension": " ",
"TypeInfo": " "
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
Sample code:
Refer section Sample code for PUT method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/extensions
Output Parameters:
An XML document indicating the success or failure of the update request.
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<Extension>
<TypeInfo>1</TypeInfo>
</Extension>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"Extension": { "TypeInfo": "1" }
Result: Indicates an error with the update request. The error indicates that no
GUID was supplied to identify the user.
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 14:42:07 GMT
Content-Type: application/xml
Content-Length: 434
Date: Fri, 27 Nov 2015 14:42:05 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<EXTENSION>
<error>
<error_code>15</error_code>
<error_desc>"GUID missing in body"</error_desc>
<cause>0</cause>
<errorLocation>10.240.0.5</errorLocation>
</error>
</EXTENSION>
</ws_object>
<ws_object error_node="true">
<REBOOT>
<error>
<errorLocation>10.240.0.5</errorLocation>
</error>
</REBOOT>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"EXTENSION": {
"error": {
"error_code": "15",
"error_desc": "\"GUID missing in body\"",
"cause": "0",
"errorLocation": "10.240.0.5"
}
}
},
{
"@error_node": "true",
"REBOOT": {
"error": { "errorLocation": "10.240.0.5" }
}
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<Extension GUID="BE6DAD809AFB11DEB6F242010AF00005">
<TypeInfo>1</TypeInfo>
</Extension>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"Extension": {
"@GUID": "BE6DAD809AFB11DEB6F242010AF00005",
"TypeInfo": "1"
}
}
}
}
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 14:33:16 GMT
Content-Type: application/xml
Content-Length: 263
Date: Fri, 27 Nov 2015 14:33:14 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<Extension GUID="BE6DAD809AFB11DEB6F242010AF00005"/>
</ws_object>
<ws_object>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
"Extension": { "@GUID": "BE6DAD809AFB11DEB6F242010AF00005" }
},
{
},
{
"reboot": { "@type": "normal" }
}
]
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/extensions
Method: DELETE
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
• Guid (required) – GUID of the extension to delete from the system.
Sample code:
Refer section Sample code for DELETE method to get the system data. The
URI for consuming this web service should be:
Output Parameters:
.
An XML document indicating the success or failure of the delete request.
Result: Indicates an error with the delete request. The reason was no
GUID was supplied.
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 14:47:30 GMT
Content-Type: application/xml
Content-Length: 307
Date: Fri, 27 Nov 2015 14:47:28 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>400:BadRequest</error_code>
<error_desc>10.240.0.5</error_desc>
<cause/>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
DELETE https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/extensions?guid=1234
HTTP/1.1
Accept-Encoding: gzip,deflate
Cookie: JSESSIONID=9413A0345BE1E59DC0EA0DB80467FAE9
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Result: Indicates an error with the delete request. The reason was no
GUID was supplied.
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 14:50:32 GMT
Content-Type: application/xml
Content-Length: 305
Date: Fri, 27 Nov 2015 14:50:30 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>404:NotFound</error_code>
<error_desc>10.240.0.5</error_desc>
<cause/>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "404:NotFound",
"error_desc": "10.240.0.5",
DELETE
https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/extensions?guid=BE6DAD809AFB11D
EB6F242010AF00005 HTTP/1.1
Accept-Encoding: gzip,deflate
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=9413A0345BE1E59DC0EA0DB80467FAE9
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 14:53:58 GMT
Content-Type: application/xml
Content-Length: 188
Date: Fri, 27 Nov 2015 14:53:56 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<ModifiedEntities/>
</ws_object>
<ws_object>
<reboot type="normal"/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
},
{
"reboot": { "@type": "normal" }
}
]
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Method: GET
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Output Parameters:
.
An XML document containing information on each extension defined in the
solution or solution node including (but not limited to):
Example 1: Get all huntgroups defined in the solution – Error Session Timeout
Result:
HTTP/1.1 461
Server: Apache-Coyote/1.1
Content-Length: 304
Date: Fri, 27 Nov 2015 14:57:33 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>461:SessionTimeout</error_code>
<error_desc>130.211.136.50</error_desc>
<errorLocation>130.211.136.50</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "461:SessionTimeout",
"error_desc": "130.211.136.50",
"errorLocation": "130.211.136.50"
}
}
}
}
}
}
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 15:00:32 GMT
Content-Type: application/xml
Content-Length: 441
Date: Fri, 27 Nov 2015 15:00:30 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data set="75" totalRecords="1">
<ws_object>
<HuntGroup GUID="6E7450809AC711DEAE4242010AF00005">
<Name>SalesForce</Name>
<Extension>202</Extension>
<GroupRingMode>1</GroupRingMode>
<MembersList>205|305|208|321|</MembersList>
<ServiceMode>0</ServiceMode>
<VoicemailOn>true</VoicemailOn>
<IsGroupDistributed>false</IsGroupDistributed>
</HuntGroup>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"@set": "75",
"@totalRecords": "1",
"ws_object": {
"HuntGroup": {
"@GUID": "6E7450809AC711DEAE4242010AF00005",
"Name": "SalesForce",
"Extension": "202",
"GroupRingMode": "1",
"MembersList": "205|305|208|321|",
"ServiceMode": "0",
"VoicemailOn": "true",
"IsGroupDistributed": "false"
}
}
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Method: POST
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<HuntGroup>
<Name> </Name>
<Extension> </Extension>
<MembersList> </MembersList>
<VoicemailOn> </VoicemailOn>
<ServiceMode> </ServiceMode>
<GroupRingMode> </GroupRingMode>
</HuntGroup>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"HuntGroup": {
"Name": " ",
"Extension": " ",
"MembersList": " ",
"VoicemailOn": " ",
"ServiceMode": " ",
"GroupRingMode": " "
}
}
}
}
Sample code:
Refer section Sample code for POST method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Output Parameters:
.
An XML document indicating the success or failure of the Add request.
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<HuntGroup>
<Name>SupportGroup</Name>
<Extension>407</Extension>
<MembersList>301|393|302</MembersList>
<VoicemailOn>true</VoicemailOn>
<ServiceMode/>
<GroupRingMode>3</GroupRingMode>
</HuntGroup>
</ws_object>
</data>
JSON Request`
Result: Indicates success and returns the GUID of the newly created
huntgroup.
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 15:13:25 GMT
Content-Type: application/xml
Content-Length: 278
Date: Fri, 27 Nov 2015 15:13:23 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<HuntGroup GUID="3d7bd1809c6011debd5442010af00005">
<IsGroupDistributed>false</IsGroupDistributed>
</HuntGroup>
</ws_object>
<ws_object>
<reboot type="normal"/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
"HuntGroup": {
"@GUID": "3d7bd1809c6011debd5442010af00005",
"IsGroupDistributed": "false"
}
},
{
"reboot": { "@type": "normal" }
}
]
}
}
}
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<HuntGroup>
<Name>SupportGroup</Name>
<Extension>408</Extension>
<MembersList>301|303|302</MembersList>
<VoicemailOn>true</VoicemailOn>
<ServiceMode/>
<GroupRingMode>2</GroupRingMode>
</HuntGroup>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"HuntGroup": {
"Name": "SupportGroup",
"Extension": "408",
"MembersList": "301|303|302",
"VoicemailOn": "true",
"GroupRingMode": "2"
}
}
}
}
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 15:23:12 GMT
Content-Type: application/xml
Content-Length: 465
Date: Fri, 27 Nov 2015 15:23:10 GMT
XML Response
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"HUNTGROUP": {
"error": {
"error_code": "9022",
"error_desc": "\"The name already exist.\"",
"cause": "0",
"cause_data": "0",
"errorLocation": "10.240.0.5"
}
}
},
{
"@error_node": "true",
"REBOOT": {
"error": { "errorLocation": "10.240.0.5" }
}
}
]
}
}
}
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<HuntGroup>
<Name>SupportGroup2</Name>
<Extension>301</Extension>
<MembersList>304|303|302</MembersList>
<VoicemailOn>true</VoicemailOn>
<ServiceMode/>
<GroupRingMode>2</GroupRingMode>
</HuntGroup>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"HuntGroup": {
"Name": "SupportGroup2",
"Extension": "301",
"MembersList": "304|303|302",
"VoicemailOn": "true",
"GroupRingMode": "2"
}
}
}
}
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 15:26:04 GMT
Content-Type: application/xml
Content-Length: 509
Date: Fri, 27 Nov 2015 15:26:02 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<HUNTGROUP>
<error>
<error_code>10003</error_code>
<error_desc>"Huntgroup extension number "301" is used by another
user"</error_desc>
<cause>0</cause>
<cause_data>0</cause_data>
<errorLocation>10.240.0.5</errorLocation>
</error>
</HUNTGROUP>
</ws_object>
<ws_object error_node="true">
<REBOOT>
<error>
<errorLocation>10.240.0.5</errorLocation>
</error>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"HUNTGROUP": {
"error": {
"error_code": "10003",
"error_desc": "\"Huntgroup extension number \"301\" is used by another
user\"",
"cause": "0",
"cause_data": "0",
"errorLocation": "10.240.0.5"
}
}
},
{
"@error_node": "true",
"REBOOT": {
"error": { "errorLocation": "10.240.0.5" }
}
}
]
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Method: PUT
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Body:
Content body of PUT request must be of the following format (note that
the GUID of the huntgroup to update must be included as an attribute of
the HuntGroup):
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
Sample code:
Refer section Sample code for PUT method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Output Parameters:
.
An XML document indicating the success or failure of the update request.
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<HuntGroup GUID="12345">
<Name>SupportGroup2</Name>
<Extension>410</Extension>
<MembersList>307|303|302</MembersList>
<VoicemailOn>true</VoicemailOn>
<ServiceMode/>
<GroupRingMode>2</GroupRingMode>
</HuntGroup>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"HuntGroup": {
"@GUID": "12345",
"Name": "SupportGroup2",
"Extension": "410",
"MembersList": "307|303|302",
"VoicemailOn": "true",
"GroupRingMode": "2"
}
}
}
}
Result: Indicates an error with the update request. The error indicates
that an invalid GUID was supplied to identify the huntgroup.
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 15:55:28 GMT
Content-Type: application/xml
Content-Length: 465
Date: Fri, 27 Nov 2015 15:55:26 GMT
XML Response
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": [
{
"@error_node": "true",
"HUNTGROUP": {
"error": {
"error_code": "10003",
"error_desc": "\"Object does not exists\"",
"cause": "0",
"cause_data": "12345",
"errorLocation": "10.240.0.5"
}
}
},
{
"@error_node": "true",
"REBOOT": {
"error": { "errorLocation": "10.240.0.5" }
}
}
]
}
}
}
{
"response": {
"@status": "1",
"data": {
"ws_object": {
"HuntGroup": {
"@GUID": "6E7450809AC711DEAE4242010AF00005",
"Name": "SalesForce",
"Extension": "202",
"GroupRingMode": "1",
"MembersList": "205|305|208|321|",
"ServiceMode": "0",
"VoicemailOn": "true",
"IsGroupDistributed": "false"
}
}
}
}
}
XML Request
<?xml version='1.0' encoding='UTF-8' ?>
<data>
<ws_object>
<HuntGroup GUID="6E7450809AC711DEAE4242010AF00005">
<Name>SupportGroup2</Name>
<Extension>410</Extension>
<MembersList>307|303|302</MembersList>
<VoicemailOn>true</VoicemailOn>
<ServiceMode/>
<GroupRingMode>2</GroupRingMode>
</HuntGroup>
</ws_object>
</data>
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 15:45:23 GMT
Content-Type: application/xml
Content-Length: 320
Date: Fri, 27 Nov 2015 15:45:21 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<HuntGroup GUID="6E7450809AC711DEAE4242010AF00005">
<IsGroupDistributed>false</IsGroupDistributed>
</HuntGroup>
</ws_object>
<ws_object>
<ModifiedEntities/>
</ws_object>
<ws_object>
<reboot type="normal"/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
"HuntGroup": {
"@GUID": "6E7450809AC711DEAE4242010AF00005",
"IsGroupDistributed": "false"
}
},
{
},
{
"reboot": { "@type": "normal" }
}
]
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Method: DELETE
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
• Guid (required) – GUID of the huntgroup to delete from the system.
Sample code:
Refer section Sample code for DELETE method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/huntgroups
Output Parameters:
.
An XML document indicating the success or failure of the delete request.
DELETE
https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/huntgroups?guid=BE6DAD809AFB11
DEB6F242010AF00005 HTTP/1.1
Accept-Encoding: gzip,deflate
Cookie: JSESSIONID=A94CB476BF7B8A1E1821AB68BEEF582C
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
Result: Indicates an error with the delete request. The reason was that it
was not a huntgroup GUID that was supplied.
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 16:03:54 GMT
Content-Type: application/xml
Content-Length: 305
Date: Fri, 27 Nov 2015 16:03:52 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>404:NotFound</error_code>
<error_desc>10.240.0.5</error_desc>
<cause/>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "404:NotFound",
"error_desc": "10.240.0.5",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
DELETE
https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/huntgroups?guid=6E7450809AC711D
EAE4242010AF00005 HTTP/1.1
Accept-Encoding: gzip,deflate
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=A94CB476BF7B8A1E1821AB68BEEF582C
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Fri, 27 Nov 2015 16:07:27 GMT
Content-Type: application/xml
Content-Length: 188
Date: Fri, 27 Nov 2015 16:07:25 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<ModifiedEntities/>
</ws_object>
<ws_object>
<reboot type="normal"/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
},
{
"reboot": { "@type": "normal" }
}
]
}
}
}
2.8.7 ShortCodes
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/shortcodes
Method: GET
Accept: text/xml
Headers:
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/shortCodes
Output Parameters:
.
An XML document containing information on each shortcode defined in the
solution or solution node including (but not limited to):
Result:
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data set="75" totalRecords="1">
<ws_object>
<ShortCode GUID="1F1DB000A43311DE884842010AF00005">
<Code>XXXXXXXXXX</Code>
<TelephoneNumber>N</TelephoneNumber>
<LineGroupId>1</LineGroupId>
<Feature>31</Feature>
<ForceAccountCode>false</ForceAccountCode>
</ShortCode>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"@set": "75",
"@totalRecords": "1",
"ws_object": {
"ShortCode": {
"@GUID": "1F1DB000A43311DE884842010AF00005",
"Code": "XXXXXXXXXX",
"TelephoneNumber": "N",
"LineGroupId": "1",
"Feature": "31",
"ForceAccountCode": "false"
}
}
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/shortcodes
Method: PUT
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
• Content body of PUT request must be of the following format (note that
the GUID of the shortcode to update must be included as an attribute of
the ShortCode):
Sample code:
Refer section Sample code for PUT method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/shortcodes
Output Parameters:
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<ShortCode GUID="1F1DB000A43311DE884842010AF00005">
<Code>XXXXXXXXXX1</Code>
<TelephoneNumber>N</TelephoneNumber>
<LineGroupId>1</LineGroupId>
<Feature>31</Feature>
<ForceAccountCode>false</ForceAccountCode>
</ShortCode>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"ShortCode": {
"@GUID": "1F1DB000A43311DE884842010AF00005",
"Code": "XXXXXXXXXX1",
"TelephoneNumber": "N",
"LineGroupId": "1",
"Feature": "31",
"ForceAccountCode": "false"
}
}
}
}
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data/>
</response>
JSON Response
{
"response": { "@status": "1" }
}
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<ShortCode GUID="1F1DB000A83311DE884842010AF00005">
<Code>XXXXXXXXXX</Code>
<TelephoneNumber>N</TelephoneNumber>
<LineGroupId>1</LineGroupId>
<Feature>31</Feature>
<ForceAccountCode>false</ForceAccountCode>
</ShortCode>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"ShortCode": {
"@GUID": "1F1DB000A83311DE884842010AF00005",
"Code": "XXXXXXXXXX",
"TelephoneNumber": "N",
"LineGroupId": "1",
"Feature": "31",
"ForceAccountCode": "false"
}
}
}
}
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 14:42:25 GMT
Content-Type: application/xml
Content-Length: 341
Date: Tue, 08 Dec 2015 14:42:23 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<SHORTCODE>
<error>
<error_code>6</error_code>
<error_desc>"Object not found"</error_desc>
<cause>0</cause>
<cause_data>0</cause_data>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SHORTCODE>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SHORTCODE": {
"error": {
"error_code": "6",
"error_desc": "\"Object not found\"",
"cause": "0",
"cause_data": "0",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<ShortCode GUID="1F1DB000A43311DE884842010AF00005">
<Code>XXXXXXXXXX</Code>
<TelephoneNumber>N</TelephoneNumber>
<LineGroupId>1</LineGroupId>
<Feature>3132</Feature>
<ForceAccountCode>false</ForceAccountCode>
</ShortCode>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"ShortCode": {
"@GUID": "1F1DB000A43311DE884842010AF00005",
"Code": "XXXXXXXXXX",
"TelephoneNumber": "N",
"LineGroupId": "1",
"Feature": "3132",
"ForceAccountCode": "false"
}
}
}
}
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 14:46:18 GMT
Content-Type: application/xml
Content-Length: 332
Date: Tue, 08 Dec 2015 14:46:16 GMT
XML Response
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SHORTCODE": {
"error": {
"error_code": "2",
"error_desc": "\"Feature\"",
"cause": "0",
"cause_data": "0",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/shortcodes
Method: POST
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
Sample code:
Refer section Sample code for POST method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/extensions
Output Parameters:
.
XML document containing information on the success or failure of the
shortcode adds.
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<ShortCode>
<Code>8XXXXXXXXXX</Code>
<TelephoneNumber>N</TelephoneNumber>
<LineGroupId>2</LineGroupId>
<Feature>31</Feature>
<ForceAccountCode>false</ForceAccountCode>
</ShortCode>
</ws_object>
<ws_object>
<ShortCode>
<Code>81XXXXX</Code>
<TelephoneNumber>N</TelephoneNumber>
<LineGroupId>1</LineGroupId>
<Feature>31</Feature>
<ForceAccountCode>true</ForceAccountCode>
</ShortCode>
</ws_object>
</data>
JSON Request
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 14:34:38 GMT
Content-Type: application/xml
Content-Length: 250
Date: Tue, 08 Dec 2015 14:34:36 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<ShortCode GUID="A46E2380A4FF11DEB4A542010AF00005"/>
</ws_object>
<ws_object>
<ShortCode GUID="A5066F00A4FF11DEB4A542010AF00005"/>
</ws_object>
</data>
</response>
JSON Response
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/shortCodes
Method: DELETE
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
• Guid (required) – GUID of the Short Code to delete from the system.
Sample code:
Refer section Sample code for DELETE method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/shortCodes
Output Parameters:
.
An XML document indicating the success or failure of the delete request.
Result: Indicates an error with the delete request. The reason was no
GUID was supplied.
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 22 Dec 2015 18:16:53 GMT
Content-Type: application/xml
Content-Length: 305
Date: Tue, 22 Dec 2015 18:16:51 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>404:NotFound</error_code>
<error_desc>10.240.0.5</error_desc>
<cause/>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "404:NotFound",
"error_desc": "10.240.0.5",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
DELETE
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 22 Dec 2015 18:24:35 GMT
Content-Type: application/xml
Content-Length: 142
Date: Tue, 22 Dec 2015 18:24:33 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<ModifiedEntities/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
}
]
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Method: GET
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Output Parameters:
.
An XML document containing information on each incoming call route defined
in the solution or solution node including (but not limited to):
Example 1: Get all incoming call routes defined in the solution (success).
GET https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
HTTP/1.1
Accept-Encoding: gzip,deflate
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=0A9E6E64F52C74F2445C1E6C8A07FCF6
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Result:
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data set="75" totalRecords="4">
<ws_object>
<IncomingCallRoute GUID="1DC836009AF611DEB51042010AF00005">
<LineGroupId>50</LineGroupId>
<CLI/>
<Destination>3230935</Destination>
<IncomingNumber>226</IncomingNumber>
</IncomingCallRoute>
</ws_object>
<ws_object>
<IncomingCallRoute GUID="0111A0809AC011DE9A4242010AF00005">
<LineGroupId>0</LineGroupId>
<CLI/>
<Destination>DialIn</Destination>
<IncomingNumber/>
</IncomingCallRoute>
</ws_object>
<ws_object>
<IncomingCallRoute GUID="1DC836009AF611DEB50F42010AF00005">
<LineGroupId>1</LineGroupId>
<CLI/>
<Destination>3230935</Destination>
<IncomingNumber>226</IncomingNumber>
</IncomingCallRoute>
</ws_object>
<ws_object>
<IncomingCallRoute GUID="0AE9B9809AC511DEAE0642010AF00005">
<LineGroupId>2</LineGroupId>
<CLI/>
<Destination>VM:Auto Attendant - External</Destination>
<IncomingNumber>6134545961</IncomingNumber>
</IncomingCallRoute>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"@set": "75",
"@totalRecords": "4",
"ws_object": [
{
"IncomingCallRoute": {
"@GUID": "1DC836009AF611DEB51042010AF00005",
"LineGroupId": "50",
"Destination": "3230935",
"IncomingNumber": "226"
}
},
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Method: PUT
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
• Content body of PUT request must be of the following format (note that
the GUID of the incoming call route to update must be included as an
attribute of the IncomingCallRoute):
Sample code:
Refer section Sample code for PUT method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Output Parameters:
.
An XML document containing information on the success or failure of the ICR
update.
Example 1: Update two existing incoming call routes defined in the solution
(success).
PUT https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/xml
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<IncomingCallRoute GUID="0AE9B9809AC511DEAE0642010AF00005">
<LineGroupId>2</LineGroupId>
<CLI/>
<Destination>VM:Auto Attendant - External</Destination>
<IncomingNumber>6134545981</IncomingNumber>
</IncomingCallRoute>
</ws_object>
<ws_object>
<IncomingCallRoute GUID="1DC836009AF611DEB50F42010AF00005">
<LineGroupId>1</LineGroupId>
<CLI/>
<Destination>3230932</Destination>
<IncomingNumber>229</IncomingNumber>
</IncomingCallRoute>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": [
{
"IncomingCallRoute": {
"@GUID": "0AE9B9809AC511DEAE0642010AF00005",
"LineGroupId": "2",
"Destination": "VM:Auto Attendant - External",
"IncomingNumber": "6134545981"
}
},
{
"IncomingCallRoute": {
"@GUID": "1DC836009AF611DEB50F42010AF00005",
"LineGroupId": "1",
"Destination": "3230932",
"IncomingNumber": "229"
}
}
]
}
}
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 15:16:01 GMT
Content-Type: application/xml
Content-Length: 94
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data/>
</response>
JSON Response
{
"response": { "-status": "1" }
}
PUT https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/xml
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=0A9E6E64F52C74F2445C1E6C8A07FCF6
X-User-Agent: Avaya-SDKUser
Content-Length: 376
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<IncomingCallRoute GUID="0AD9B9809AC511DEAE0642010AF00005">
<LineGroupId>2</LineGroupId>
<CLI/>
<Destination>VM:Auto Attendant - External</Destination>
<IncomingNumber>6134545981</IncomingNumber>
</IncomingCallRoute>
</ws_object>
</data>
JSON Request
{
"data": {
"ws_object": {
"IncomingCallRoute": {
"@GUID": "0AD9B9809AC511DEAE0642010AF00005",
"LineGroupId": "2",
"Destination": "VM:Auto Attendant - External",
"IncomingNumber": "6134545981"
}
}
}
}
Result:
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<INCOMINGCALLROUTE>
<error>
<error_code>6</error_code>
<error_desc>"Object not found"</error_desc>
<cause>0</cause>
<cause_data>0</cause_data>
<errorLocation>10.240.0.5</errorLocation>
</error>
</INCOMINGCALLROUTE>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"INCOMINGCALLROUTE": {
"error": {
"error_code": "6",
"error_desc": "\"Object not found\"",
"cause": "0",
"cause_data": "0",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Method: POST
Accept: text/xml
Headers:
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
• Content body of POST request must be of the following format :
Sample code:
Refer section Sample code for POST method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Output Parameters:
.
An XML document containing information on the success or failure of the
POST https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/xml
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=0A9E6E64F52C74F2445C1E6C8A07FCF6
X-User-Agent: Avaya-SDKUser
Content-Length: 557
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
XML Request
<?xml version='1.0' encoding='UTF-8'?>
<data>
<ws_object>
<IncomingCallRoute>
<LineGroupId>79</LineGroupId>
<CLI/>
<Destination>226</Destination>
<IncomingNumber>123456</IncomingNumber>
</IncomingCallRoute>
</ws_object>
<ws_object>
<IncomingCallRoute>
<LineGroupId>2</LineGroupId>
<CLI/>
<Destination>227</Destination>
<IncomingNumber>123457</IncomingNumber>
</IncomingCallRoute>
</ws_object>
</data>
JSON Request
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 15:27:34 GMT
Content-Type: application/xml
Content-Length: 266
Date: Tue, 08 Dec 2015 15:27:32 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<IncomingCallRoute GUID="0A120100A50711DEB5E542010AF00005"/>
</ws_object>
<ws_object>
<IncomingCallRoute GUID="0A120100A50711DEB5E642010AF00005"/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
"IncomingCallRoute": { "@GUID": "0A120100A50711DEB5E542010AF00005" }
},
{
"IncomingCallRoute": { "@GUID": "0A120100A50711DEB5E642010AF00005" }
}
]
}
}
}
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Method: DELETE
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, add applies to the
Primary.
• Guid (required) – GUID of the Short Code to delete from the system.
Sample code:
Refer section Sample code for DELETE method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
Output Parameters:
.
An XML document indicating the success or failure of the delete request.
DELETE https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes
HTTP/1.1
Accept-Encoding: gzip,deflate
X-User-Client: Avaya-WebAdmin
Cookie: JSESSIONID=A5CF980E5986337F884CAD1221D0FE18
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Result: Indicates an error with the delete request. The reason was no
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 22 Dec 2015 18:16:53 GMT
Content-Type: application/xml
Content-Length: 305
Date: Tue, 22 Dec 2015 18:16:51 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="0">
<data>
<ws_object error_node="true">
<SMAError>
<error>
<error_code>404:NotFound</error_code>
<error_desc>10.240.0.5</error_desc>
<cause/>
<errorLocation>10.240.0.5</errorLocation>
</error>
</SMAError>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "0",
"data": {
"ws_object": {
"@error_node": "true",
"SMAError": {
"error": {
"error_code": "404:NotFound",
"error_desc": "10.240.0.5",
"errorLocation": "10.240.0.5"
}
}
}
}
}
}
DELETE
https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/incoming_call_routes?guid=8CC65800
B01F11DEADD242010AF00005 HTTP/1.1
Accept-Encoding: gzip,deflate
Cookie: JSESSIONID=A5CF980E5986337F884CAD1221D0FE18
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 22 Dec 2015 18:24:35 GMT
Content-Type: application/xml
Content-Length: 142
Date: Tue, 22 Dec 2015 18:24:33 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data>
<ws_object>
<ModifiedEntities/>
</ws_object>
</data>
</response>
JSON Response
{
"response": {
"@status": "1",
"data": {
"ws_object": [
{
}
]
}
}
}
Description: REST service which queries/lists all incoming line group ids on a
solution or node in a solution.
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_group_ids
Method: GET
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Sample code:
Refer section Sample code for GET method to get the system data. The
URI for consuming this web service should be:
https://{host}:7070/WebManagement/ws/sdk/admin/v1/incoming_groups_ids
Output Parameters:
.
An XML document containing a list of incoming line group ids defined in the
solution or solution node including (but not limited to):
Example 1: Get a list of incoming line group ids defined in the solution
(success).
GET https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/incoming_group_ids
HTTP/1.1
Accept-Encoding: gzip,deflate
Cookie: JSESSIONID=0A9E6E64F52C74F2445C1E6C8A07FCF6
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 15:41:57 GMT
Content-Type: application/xml
Content-Length: 271
Date: Tue, 08 Dec 2015 15:41:55 GMT
XML Response
JSON Response
{
"response": {
"@status": "1",
"data": {
"@totalRecords": "1",
"ws_object": {
"IncomingGroupIds": {
"IncomingGroupIdsList": "2|8|0|50:Main|",
"PBXAddress": "10.240.0.5"
}
}
}
}
}
Description: REST service which queries/lists all outgoing line group ids on a
solution or node in a solution.
URI: https://{host}:7070/WebManagement/ws/sdk/admin/v1/outgoing_group_ids
Method: GET
Accept: text/xml
Headers:
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Content-Type: application/xml OR application/json
Authorization: The username and password are combined into a string with the
format "username:password", which is then base64 encoded.
Input Parameters:
• ipaddress (optional) – LAN 1 IP Address of the Solution Node on which to
apply the command. If not present in the request, query applies to the
entire solution.
Sample code:
Refer section Sample code for GET method to get the system data. The
Output Parameters:
.
An XML document containing a list of outgoing line group ids defined in the
solution or solution node including (but not limited to):
Example 1: Get a list of outgoing line group ids defined in the solution
(success).
GET https://130.211.136.50:7070/WebManagement/ws/sdk/admin/v1/outgoing_group_ids
HTTP/1.1
Accept-Encoding: gzip,deflate
Cookie: JSESSIONID=0A9E6E64F52C74F2445C1E6C8A07FCF6
X-User-Client: Avaya-WebAdmin
X-User-Agent: Avaya-SDKUser
Host: 130.211.136.50:7070
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
Result:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Pragma: no-cache
Cache-control: max-age=2
Expires: Tue, 08 Dec 2015 15:43:18 GMT
Content-Type: application/xml
Content-Length: 271
Date: Tue, 08 Dec 2015 15:43:16 GMT
XML Response
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response status="1">
<data totalRecords="1">
<ws_object>
<OutgoingGroupIds>
<OutgoingGroupIdsList>1|9|0|50:Main|</OutgoingGroupIdsList>
<PBXAddress>10.240.0.5</PBXAddress>
</OutgoingGroupIds>
</ws_object>
</data>
</response>
3.1.1 DATA
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="" xmlns=""
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="ws_object" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
3.1.2 WS_OBJECT
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace=""
xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="ws_object">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="Entity" minOccurs="0"/>
3.1.3 RESPONSE
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="" xmlns=""
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="data.xsd"/>
<xsd:element name="response">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="data" minOccurs="0" />
</xsd:sequence>
<xsd:element name="combinedresponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="data" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="status" type="xsd:string" />
</xsd:complexType>
</xsd:element>
</xsd:schema>
3.1.4 REFERENCE
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="" xmlns=""
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="reference_list">
<xsd:complexType>
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element name="ref">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="service" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="GUID" type="xsd:string" minOccurs="1"
maxOccurs="1" />
<xsd:element name="AccessRights" type="xsd:string" minOccurs="1"
maxOccurs="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="guidList" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
3.1.5 ERROR
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace=""
xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="error">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="error_code" type="xsd:string" />
<xsd:element name="error_desc" type="xsd:string" />
<xsd:element name="cause" type="xsd:string" />
<xsd:element name="cause_data" type="xsd:string" />
<xsd:element name="errorLocation" type="xsd:string" />
<xsd:element name="referredMode" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
3.1.6 WARNING
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="" xmlns=""
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="Warning">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="cause" type="xsd:string" minOccurs="1" maxOccurs="1" />
<xsd:element name="cause_data" type="xsd:string" minOccurs="1" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
3.2 SYSTEM
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="" xmlns=""
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="Telephony">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Locale" type="xsd:string" minOccurs="0" maxOccurs="1"
/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="LANS">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="LAN" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="LAN">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="IPAddress" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="IPMask" type="xsd:string" minOccurs="0" maxOccurs="1"
/>
<xsd:element name="PrimaryTranslationIPAddress" type="xsd:string"
minOccurs="0" maxOccurs="1" />
<xsd:element name="dhcp_address_number" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="DHCPmode" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="VoipGatekeeper">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="H323GatekeeperEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="H323RemoteExtnEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="H323RemoteExtnCallSignalPort" type="xsd:string"
minOccurs="0" maxOccurs="1" />
<xsd:element name="H323SignalingOverTLS" type="xsd:string" minOccurs="0"
maxOccurs="1"/>
<xsd:element name="SipTrunksEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="SipRegistrarEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="SipRemoteExtnEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="DomainName" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="SipUdpEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="UdpPort" type="xsd:string" minOccurs="0" maxOccurs="1"
/>
<xsd:element name="RemoteUdpPort" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="SipTcpEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="TcpPort" type="xsd:string" minOccurs="0" maxOccurs="1"
/>
<xsd:element name="RemoteTcpPort" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="SipTlsEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="TlsPort" type="xsd:string" minOccurs="0" maxOccurs="1"
/>
<xsd:element name="RemoteTlsPort" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="ChallengeExpiryTime" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="RtpPortMin" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="RtpPortMax" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="RtpPortMinNat" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="RtpPortMaxNat" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="RtcpMonitorEnable" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="AutoCreateExtn" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="AutoCreateUser" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="RemoteCallSignallingPort" type="xsd:string"
minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Voicemail">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Type" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element name="LanDHCPPools">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ApplyToAvayaIPPhonesOnly" type="xsd:boolean"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="DHCPPools" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="DHCPPools">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="DHCPPool" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="DHCPPool">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="DHCPStartAddress" type="xsd:string" />
<xsd:element name="DHCPSubnetMask" type="xsd:string" />
<xsd:element name="DHCPDefaultRouter" type="xsd:string" />
<xsd:element name="DHCPPoolSize" type="xsd:string" />
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="PBXLicense">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="EnableRemoteServer" type="xsd:boolean" minOccurs="0"
maxOccurs="1" />
<xsd:element name="EnableProxyViaPrimaryIPOLine" type="xsd:boolean"
minOccurs="0" maxOccurs="1" />
<xsd:element name="LicenseServerIPAddress" type="xsd:string"
minOccurs="0" maxOccurs="1" />
<xsd:element name="LicenseServerURL" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="LicenseServerURLSecondary" type="xsd:string"
minOccurs="0" maxOccurs="1" />
<xsd:element name="LicenseServerURN" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="LicenseServerPort" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="LicenseServerID" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="LicenseMode" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="LicenseGracePeriod" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element ref="ReservedLicenses" minOccurs="0" maxOccurs="1" />
<xsd:element name="LicensedVersion" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="PLDSHostId" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="PLDSFileStatus" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="SelectLicensingStatus" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="GraceDongleSerialNumber" type="xsd:string"
minOccurs="0" maxOccurs="1" />
<xsd:element name="DongleSerialGraceDays" type="xsd:string" minOccurs="0"
maxOccurs="1" />
3.3 LICENSE
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace=""
xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="Licenses">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="License" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
3.5 EXTENSION
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
3.6 HUNTGROUP
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace=""
xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
3.7 SHORTCODE
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace=""
xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:include schemaLocation="../common/ws_object.xsd" />
<xsd:include schemaLocation="../common/error.xsd" />
<xsd:element name="ShortCodes">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="ShortCode" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ShortCode" substitutionGroup="Entity">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Code" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element name="TelephoneNumber" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="LineGroupId" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="Feature" type="xsd:string" minOccurs="0" maxOccurs="1"
/>
<xsd:element name="Locale" type="xsd:string" minOccurs="0" maxOccurs="1"
/>
<xsd:element name="ForceAccountCode" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element name="ForceAuthCode" type="xsd:string" minOccurs="0"
maxOccurs="1" />
<xsd:element ref="error" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="GUID" type="xsd:string" />
</xsd:complexType>
</xsd:element>
</xsd:schema>
3.9 LINE
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace=""
xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
jaxb:version="1.0"
>
<xsd:annotation>
<xsd:appinfo>
<jaxb:globalBindings generateIsSetMethod="true">
<xjc:serializable uid="12343" />
</jaxb:globalBindings>
</xsd:appinfo>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
<xsd:element name="Line">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="LineName" type="xsd:string" minOccurs="0" />
<xsd:element name="LineNumber" type="xsd:string" minOccurs="0" />
<xsd:element name="TelephoneNumber" type="xsd:string" minOccurs="0" />
<xsd:element name="IncomingGroupId" type="xsd:string" minOccurs="0" />
<xsd:element name="LineType" type="xsd:string" minOccurs="0" />
<xsd:element name="LineSubtype" type="xsd:string" minOccurs="0" />
<xsd:element name="BChannelSelect" type="xsd:string" minOccurs="0" />
<xsd:element name="ZeroSuppression" type="xsd:string" minOccurs="0" />
<xsd:element name="Framing" type="xsd:string" minOccurs="0" />
<xsd:element name="LineSignalling" type="xsd:string" minOccurs="0" />
<xsd:element name="ClockSource" type="xsd:string" minOccurs="0" />
<xsd:element name="IncomingDigits" type="xsd:string" minOccurs="0" />
<xsd:element name="HaulType" type="xsd:string" minOccurs="0" />
<xsd:element name="ChannelUnit" type="xsd:string" minOccurs="0" />
<xsd:element name="CSUOperation" type="xsd:string" minOccurs="0" />
<xsd:element name="Prefix" type="xsd:string" minOccurs="0" />
<xsd:element name="NationalPrefix" type="xsd:string" minOccurs="0" />
<xsd:element name="InternationalPrefix" type="xsd:string" minOccurs="0"
/>
<xsd:element name="OutgoingChannels" type="xsd:string" minOccurs="0" />
<xsd:element name="VoiceChannels" type="xsd:string" minOccurs="0" />
<xsd:element name="DataChannels" type="xsd:string" minOccurs="0" />
<xsd:element name="CardOrModule" type="xsd:string" minOccurs="0" />
<xsd:element name="PortNumber" type="xsd:string" minOccurs="0" />
<xsd:element name="ChannelsTotal" type="xsd:string" minOccurs="0" />
<xsd:element name="LineChannels" type="xsd:string" minOccurs="0" />
<xsd:element name="TEI" type="xsd:string" minOccurs="0" />
3.10 INCOMINGGROUPIDS
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace=""
xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>
</xsd:documentation>
</xsd:annotation>
4.2 System
• Name – A name to identity the system.
• MajorVersion – Major version of the system
• MinorVersion – Minor version of the system
• Configuration – Operating mode of the system. The value represents the
following:
o A Law //0
o JAPAN //1
o MU Law //2
o Partner //3
o NOStar //4
o Branch //5
o Quick mode A law //6
o Quick mode MU law //7
o IP
• BuildVersion: Installed build version on the system
• Telephony
o Locale – Telephony and Language settings.
o ModemTxLevel -
o ModemCDThreshold
o ModemNoActivityTimeout
4.3 Licenses
• GUID – Hex Digit String
o Globally Unique Identifier that is used to uniquely identify across
the system the particular license
• LicenseKey – For ADI licenses it would be the actual license value. For
other licenses it will be a license name.
• Source – Integer with value range of 0 to 4
o Local=0 - The license is local to the IP Office (could be ADI or
PLDS).
4.4 Users
4.5 Extensions
4.6 HuntGroups
4.7 ShortCodes
• IncomingGroupIdsList – String
o List ( ‘|’ separated) of incoming group ids defined in the system.
• PBXAddress – String
o LAN 1 IP Address of the System to which the Incoming Group Ids
applies.
• OutgoingGroupIdsList – String
o List ( ‘|’ separated) of outgoing group ids defined in the system.
• PBXAddress – String
o LAN 1 IP Address of the System to which the Outgoing Group Ids
applies.
xhr.send();
Java
try
{
URL url = new URL(URI);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("X-User-Agent", "Avaya-SDKUser");
conn.setRequestProperty("X-User-Client", "Avaya-WebAdmin");
conn.setRequestProperty("Content-Type", "application/xml");
conn.setRequestProperty("Cookie", cookies);
if(conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
+ conn.getResponseCode());
}
String output;
while ((output = br.readLine()) != null) {
System.out.println(output);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
.NET
CookieContainer cookieContainer = new CookieContainer();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Credentials = CredentialCache.DefaultCredentials;
request.Method = "GET";
request.ContentType = "application/json";
request.Headers.Add("X-User-Client", "Avaya-WebAdmin");
response.Close();
xhr.send(putData);
Java
try
{
URL url = new URL(URI);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("PUT");
conn.setRequestProperty("X-User-Agent", "Avaya-SDKUser");
conn.setRequestProperty("X-User-Client", "Avaya-WebAdmin");
conn.setRequestProperty("Content-Type", "application/xml");
conn.setRequestProperty("Cookie", cookies);
String authStr = username+":"+password;
byte[] bytesEncoded = Base64.encodeBase64(authStr.getBytes());
String authEncoded = new String(bytesEncoded);
conn.setRequestProperty("Authorization", "Basic "+authEncoded);
if(conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
+ conn.getResponseCode());
}
String output;
while ((output = br.readLine()) != null) {
System.out.println(output);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
.NET
CookieContainer cookieContainer = new CookieContainer();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Credentials = CredentialCache.DefaultCredentials;
request.Method = "PUT";
request.ContentType = "application/json";
request.Headers.Add("X-User-Client", "Avaya-WebAdmin");
request.Headers.Add("X-User-Agent", "Avaya-SDKUser");
String credentials =
Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(username + ":" +
password));
request.Headers.Add("Authorization", "Basic " + credentials);
request.CookieContainer = cookieContainer;
response.Close();
xhr.send(postData);
Java
try
{
URL url = new URL(URI);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setRequestProperty("X-User-Agent", "Avaya-SDKUser");
conn.setRequestProperty("X-User-Client", "Avaya-WebAdmin");
conn.setRequestProperty("Content-Type", "application/xml");
conn.setRequestProperty("Cookie", cookies);
String authStr = username+":"+password;
byte[] bytesEncoded = Base64.encodeBase64(authStr.getBytes());
String authEncoded = new String(bytesEncoded);
conn.setRequestProperty("Authorization", "Basic "+authEncoded);
if(conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
String output;
while ((output = br.readLine()) != null) {
System.out.println(output);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
.NET
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Credentials = CredentialCache.DefaultCredentials;
request.Method = "POST";
request.ContentType = "application/json";
request.Headers.Add("X-User-Client", "Avaya-WebAdmin");
request.Headers.Add("X-User-Agent", "Avaya-SDKUser");
String credentials =
Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(username + ":" +
password));
request.Headers.Add("Authorization", "Basic " + credentials);
request.CookieContainer = cookieContainer;
response.Close();
JavaScript
var xhr = new XMLHttpRequest();
xhr.open("DELETE", URI, false);
xhr.setRequestHeader("X-User-Agent", "Avaya-SDKUser");
xhr.setRequestHeader("X-User-Client", "Avaya-WebAdmin");
xhr.setRequestHeader("Content-Type", "application/xml");
xhr.setRequestHeader("Authorization", "Basic " + btoa("username:password"));
xhr.send(putData);
Java
try
{
URL url = new URL(URI);
if(conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : "
+ conn.getResponseCode());
}
String output;
while ((output = br.readLine()) != null) {
System.out.println(output);
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
.NET
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Credentials = CredentialCache.DefaultCredentials;
request.Method = "POST";
request.ContentType = "application/json";
request.Headers.Add("X-User-Client", "Avaya-WebAdmin");
request.Headers.Add("X-User-Agent", "Avaya-SDKUser");
String credentials =
Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(username + ":" +
password));
request.Headers.Add("Authorization", "Basic " + credentials);
request.CookieContainer = cookieContainer;
response.Close();
if (sslCertError == false)
{
retVal = true;
}
}
catch (Exception)
{
retVal = false;
}
return retVal;
}
return cookies;
}