Difference between revisions of "MOR API tariff rates get"

From Kolmisoft Wiki
Jump to navigationJump to search
Line 35: Line 35:
===Returns===
===Returns===


<span style="color:#ff0000">'''IMPORTANT: response is returned in the archived gzip format. Make sure to extract it from the gzip format first.'''</span>
<span style="color:#ff0000">'''IMPORTANT: response is returned in the archived zip format. Make sure to extract it from the zip format first.'''</span>
<br><br>
<br><br>


Example in PHP how to extract from GZIP [http://php.net/manual/en/function.gzdecode.php here].
/* Example in PHP how to extract from GZIP [http://php.net/manual/en/function.gzdecode.php here]. */


<br>
<br>

Revision as of 09:19, 29 January 2017

Description

MOR API Tariff rates
If Admin has checked Allow Resellers to use Admin Tariffs in API Configuration then using this API Reseller can get Tariffs which belongs to Admin.

Usage

  • From MOR X4 call: /api/tariff_rates_get
  • For Backwards-compatibility old name 'get_tariff' is also usable. Call: /api/get_tariff
  • Methods: POST, GET(if allowed, not recomended)



Parametres

  • u - username for authentication. Required.
  • tariff_id - user tariff id (option for admin or reseller). If not sent, user gets his tariff rates and custom rates.
  • user_id - this specifies user id whose custom rates and tariffs to show. When sending user_id parameter tariff_id parameter is ignored.
  • hash - SHA1 hash constructed using tariff_id and/or user_id and API_Secret_Key ( More described in Constructing hash). Required.



Request

We have API Secret Key = 456789, tariff_id = 100

We send:

HTML POST: http://<SERVER_IP>/billing/api/get_tariff?u=admin&user_id=5&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7

* Note that username and password are not included in hash Returning XML is put in file. That file is ziped and returned as a response content.

Please note that admin can retrieve any tariff, reseller - only users' tariffs and the one assigned to him by admin and user can only retrieve to his own tariff.

Returns

IMPORTANT: response is returned in the archived zip format. Make sure to extract it from the zip format first.

/* Example in PHP how to extract from GZIP here. */


Success

  • Retail:
<?xml version="1.0" encoding="UTF-8"?>
<page>
 <pagename> Tariff </pagename>
 <tariff_name> tariff name </tariff_name>
 <purpose> tariff type </purpose>
 <currency> currency </currency>
 <rates>
  <destination>
   <destination_group_name> name </destination_group_name>
   <destination_group_type> destination type </destination_group_type>
   <rate>
    <duration> duration </duration>
    <type> type </type>
    <round_by> round by </round_by>
    <tariff_rate> rate </tariff_rate>
    <start_time> start time </start_time>
    <end_time> end time </end_time>
    <from> from </from>
    <daytype> daytype </daytype>
   </rate>
  </destination>
 </rates>
</page>
  • Wholesale:
<?xml version="1.0" encoding="UTF-8"?>
<page>
 <pagename> Tariff </pagename>
 <tariff_name> tariff name </tariff_name>
 <purpose> tariff type </purpose>
 <currency> currency </currency>
 <rates>
  <rate>
   <direction> direction </direction>
   <destination> destination </destination>
   <prefix> prefix </prefix>
   <subcode> subcode </subcode>
   < code> code 
   <tariff_rate> rate </tariff_rate>
   <con_fee> connection fee </con_fee>
   <increment> increment </increment>
   <min_time> minimal time </min_time>
   <start_time> start time </start_time>
   <end_time> end time </end_time>
   <daytype> daytype </daytype>
  </rate>
 </rates>
</page>




Errors

  • Tariff was not found.
<?xml version="1.0" encoding="UTF-8"?>
<page>
  <status>
     <error>No tariff found</error>
  </status>
</page>
  • User was not found by username and password. Use correct username and password. Make sure that username (u) and password (p) are specified.
<?xml version="1.0" encoding="UTF-8"?>
<page>
   <status>
      <error>Bad login</error>
   </status>
</page>
  • Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
<?xml version="1.0" encoding="UTF-8"?>
<status>
    <error>Incorrect hash</error>
</status>



See also