MOR API device update
From Kolmisoft Wiki
Description
MOR API update existing Device from params.
Usage
- Call: /api/device_update
- Methods: POST, GET(if allowed, not recomended)
Parameters
Parameters which are included into hash:
- device - device_id. Required.
- authentication - 0 stands for "Dynamic (Username/Password)" Device Authentication, 1 stands for "IP Authentication:"
- username - sets value for Username if device Authentication value is Dynamic.
- host - sets value for IP Address if device Authentication value is IP Authentication
- port - sets value for Port if device Authentication value is IP Authentication
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.
- new_location_id - location_id.
- callerid_number - number.
- callerid_name - name.
- trunk - 0 stand for "No", 1 stand for "Yes", 2 stands for "Yes with ANI".
- fax_email_add - email address to add.
- fax_email_delete - email address to delete.
- call_limit - call limit. Set 0 if you want unlimited sim. calls.
- fromuser - sets value for Fromuser.
- password - sets value for Password if device Authentication value is Dynamic.
- call_timeout - max call duration (in seconds).
- extension - device extension. Allowed symbols: a-z0-9#*.
- pin - device PIN. Allowed symbols: 0-9 or empty parameter.
- hidden - for hiding and unhiding Devices. Allowed values: 0 - unhide, 1 - hide.
- language - sets value for language.
- allow_empty_callerid - if set to 1, allows to set empty callerid_number and/or callerid_name.
- comment - device comment to add or update.
- encryption - enable or disable encryption. Allowed values: 1 - yes, 0 - no.
- transport - Allowed values: "udp", "tcp", "udp,tcp", "tcp,udp", "tls".
Additional feature
If API setting Allow Resellers to use Admin Localization Rules is enabled:
Reseller is able to set location inherited from Admin. new_location_id should be used as a parameter for location.
Request
HTML POST: http://<SERVER_IP>/billing/api/device_update?u=admin&device=2&new_location_id=7&hash=297dab8c386794b2e947d52affb8f576c643569e
Returns
Success
<page> <status> <success>Device successfully updated</success> </status> </page>
Errors
- <error>Incorrect hash</error> - Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
- <error>Access Denied</error> - access not allowed
- <error>Device was not found</error> - Device id incorrect or does not exist
- <error>Location was not found</error> - Location id incorrect or does not exist
- <error>Password is too short</error> - Password of device is too short
Examples
Change Username/Password authenticated Device to IP authenticated Device:
http://<SERVER_IP>/billing/api/device_update?u=admin&device=51&authentication=1&host=192.168.5.20&port=5060&hash=XXXX
Set empty CallerID:
http://<SERVER_IP>/billing/api/device_update?u=admin&device=2&allow_empty_callerid=1&callerid_number=&hash=XXXX