M4 API tariff rates get

From Kolmisoft Wiki
Revision as of 09:40, 31 December 2015 by Tomas (talk | contribs)
Jump to navigationJump to search

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

M2 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&p=admin&tariff_id=100&hash=71516eea4850f7e0300ac86adf9fb64bca845aa7

* Note that username and password are not included in hash Returning XML is put in file. That file is gziped 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

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>