Difference between revisions of "MOR API device create"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(17 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[MOR API]]
=Description=
Create device
[[MOR API]] Create Device
<br><br>
----
<br><br>
<br><br>
=Usage=
* Call: /api/device_create
* Call: /api/device_create
* Methods: POST, GET(if allowed, not recomended)
* Methods: POST, GET(if allowed, not recomended)
* Params:
<br><br>
** user_id - User ID in MOR database, for which user device should be created. '''Required'''.
===Parameters===
** u - username to login. '''Required'''.
 
** p - password to login. '''Required'''.
 
** [[MOR API hash construction | hash]] - SHA1 hash constructed using '''params''' and '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.
Parameters which are '''included''' into hash:
** description - string
 
** pin - [number. '']. If pin param not send -> random_numbers . If blank -> pinless
* user_id - User ID in MOR database, for which user device should be created. '''Required'''.
** type - Device type [SIP, IAX2, FAX, Virtual,H323, ZAP, Skype, '']. When is '' -> default device type. If default device type is empty -> 'SIP'
* description - string
** devicegroup_id - device group ID  
* pin - [number. '']. If pin param not send -> random_numbers . If blank -> pinless
**
* type - Device type [SIP, IAX2, FAX, Virtual,H323, ZAP, Skype, '']. When is '' -> default device type. If default device type is empty -> 'SIP'
* Returns:
* devicegroup_id - device group ID  
**Success
* caller_id - CallerID
*** <status>Device was created</status>
'''Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is API_Secret_Key'''
** Errors:
<br><br>
*** <error>User was not found</error> - User was not found using user_id. Use correct user id.
Parameters which are '''not included''' into hash:
*** <error>Incorrect hash</error> - Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
 
*** <error>Dont be so smart</error> - User with UNIQUEHASH not found or params id not send. Enter correct id.
* '''[[MOR API hash construction | hash]]''' - SHA1 hash constructed using '''parameters''' which are listed above. Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.<br>
*** <error>Device_type_invalid</error> - Enter correct type.
* '''u''' - username for authentication. '''Required'''.
*** <error>Device_group_invalid</error> - Device group with id not found. Enter group id.
* '''extension''' - Device Extension.
*** <error>Pin_is_already_used</error> - Enter onother pin.
* '''fromuser''' - sets value for Fromuser.
*** <error>Pin_must_be_numeric</error> - Enter correct pin.
* '''call_timeout''' - max call duration (in seconds).
*** <error>Device was not created</error>
* '''language''' - sets value for language.  
**** <message>problem message</message>
<br><br>
 
===Request===
 
We have user_id = 2, API Secret Key = secret
 
We send:


HTML POST: http://<SERVER_IP>/billing/api/device_create?u=admin&user_id=2&description=desription1&pin=3&hash=6e79d4a82f68102f43be11d873177f47817f84df


== Request ==
*Now we can find these Devices in GUI Devices list.


http://123.123.123.123/billing/api/device_create/u=admin&p=password&user_id=2&description=desription1&pin=3&hash=6e79d4a82f68102f43be11d873177f47817f84df
'''* Note that username and password are not included in hash'''
<br><br>
===Returns===


*admin - owner's username
'''Success'''
*password - owner's password
 
*user_id - for which user device should be created
<?xml version="1.0" encoding="UTF-8"?>
<page>
  <status>Device created</status>
  <id>id of new device</id>
  <username>username of new device</username>
  <password>password of new device</password>
</page>
<br><br>
<br><br>
----
----
*Example:
**We have user_id = 2, API Secret Key = secret
**Hash string: "6e79d4a82f68102f43be11d873177f47817f84df"
**We send:
***http://123.123.123.123/billing/api/device_create?u=admin&p=password&user_id=2&description=desription1&pin=3&hash=6e79d4a82f68102f43be11d873177f47817f84df
**We get:


      <head></head>
'''Errors'''
      <body>
            <page>
                  <status>Device created</status>
                  <id>8</id>
            </page>
      </body>


**Now we can find this Device in GUI Devices list.
* <error>User was not found</error> - User was not found using user_id. Use correct user id.
* <error>Incorrect hash</error> - Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
* <error>Dont be so smart</error> - User with UNIQUEHASH not found or params id not send. Enter correct id.
* <error>Device type invalid</error> - Enter correct type.
* <error>Device group invalid</error> - Device group with id not found. Enter group id.
* <error>Pin is already used</error> - Enter onother pin.
* <error>Pin must be numeric</error> - Enter correct pin.
* <error>You are not authorized to manage callerid</error> - User does not have permissions to manage CallerID option.
* <error>Device was not created</error>
** <message>problem message</message>


'''* Note that username and password are not included in hash'''
Example:
 
<?xml version="1.0" encoding="UTF-8"?>
<page>
  <error>Error message</error>
</page>
<br><br>
 
=See also=
 
* [[MOR API]]

Latest revision as of 10:08, 27 June 2017

Description

MOR API Create Device

Usage

  • Call: /api/device_create
  • Methods: POST, GET(if allowed, not recomended)



Parameters

Parameters which are included into hash:

  • user_id - User ID in MOR database, for which user device should be created. Required.
  • description - string
  • pin - [number. ]. If pin param not send -> random_numbers . If blank -> pinless
  • type - Device type [SIP, IAX2, FAX, Virtual,H323, ZAP, Skype, ]. When is -> default device type. If default device type is empty -> 'SIP'
  • devicegroup_id - device group ID
  • caller_id - CallerID

Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is API_Secret_Key

Parameters which are not included into hash:

  • hash - SHA1 hash constructed using parameters which are listed above. Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is API_Secret_Key ( More described in Constructing hash). Required.
  • u - username for authentication. Required.
  • extension - Device Extension.
  • fromuser - sets value for Fromuser.
  • call_timeout - max call duration (in seconds).
  • language - sets value for language.



Request

We have user_id = 2, API Secret Key = secret

We send:

HTML POST: http://<SERVER_IP>/billing/api/device_create?u=admin&user_id=2&description=desription1&pin=3&hash=6e79d4a82f68102f43be11d873177f47817f84df
  • Now we can find these Devices in GUI Devices list.

* Note that username and password are not included in hash

Returns

Success

<?xml version="1.0" encoding="UTF-8"?>
<page>
  <status>Device created</status>
  <id>id of new device</id>
  <username>username of new device</username>
  <password>password of new device</password>
</page>




Errors

  • <error>User was not found</error> - User was not found using user_id. Use correct user id.
  • <error>Incorrect hash</error> - Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
  • <error>Dont be so smart</error> - User with UNIQUEHASH not found or params id not send. Enter correct id.
  • <error>Device type invalid</error> - Enter correct type.
  • <error>Device group invalid</error> - Device group with id not found. Enter group id.
  • <error>Pin is already used</error> - Enter onother pin.
  • <error>Pin must be numeric</error> - Enter correct pin.
  • <error>You are not authorized to manage callerid</error> - User does not have permissions to manage CallerID option.
  • <error>Device was not created</error>
    • <message>problem message</message>

Example:

<?xml version="1.0" encoding="UTF-8"?>
<page>
  <error>Error message</error>
</page>



See also