Изменения

Перейти к: навигация, поиск

API Documentation

226 байт убрано, 09:57, 11 декабря 2020
м
Fair Usage Policy
Due to [https://ru.wikipedia.org/wiki/XML#.D0.A0.D0.B5.D1.88.D0.B5.D0.BD.D0.B8.D0.B5_.D0.BF.D1.80.D0.BE.D0.B1.D0.BB.D0.B5.D0.BC.D1.8B_.D0.BD.D0.B5.D0.BE.D0.B4.D0.BD.D0.BE.D0.B7.D0.BD.D0.B0.D1.87.D0.BD.D0.BE.D1.81.D1.82.D0.B8_.D1.80.D0.B0.D0.B7.D0.BC.D0.B5.D1.82.D0.BA.D0.B8 the peculiarities of XML extensible markup language], some symbols in the text should be replaced: & from &amp;amp; < to &amp;lt; > from &amp;gt; " to &amp;quot;
== Limitations Fair Usage Policy ==With the aim of protecting service from its improper use query limitation equal to 1500 queries from one IP-address for 20-minute period has been introduced since May 29, 2017. In case the above-mentioned limit is reached, the IP-address will be blocked; unblocking of the IP-address is possible by addressing the technical support service with the subsequent discussion of your algorithms and their correction.
The best option for checking your orders` status is using "To protect our service from improper use and DDoS attacks, we have defined fair usage levels: * 30 tracking queries from a single IP address per 1 minute (use <code>statusreq" </code>).* 150 queries from a single IP address per 1 minute.* 1500 queries from a single IP address per 20 minutes.* 3000 queries with changes=ONLY_LAST parameterfrom a single account per 1 hour.* 200 MB text data downloaded per 3 hours. You shouldn`t try  If a limit is exceeded, the IP address is blocked for up to “attack” 3 hours. Actions that result in blocking your IP address or account: * Attacking our API with status queries containing with numbers of all your you orders, especially, with ". Mind that the <code>tracking" </code> queries – they are not intended to be used for this (that, see their [[API documentation#Order tracking by number|description)]]. These queries are especially bad at the top of the hour.* Sending queries like "Show statuses of all orders for the last 3 months" every 5 minutes. Correct actions: * To check order statuses, use <code>statusreq</code> queries with parameter <code>changes=ONLY_LAST</code>.* When requesting for changed statuses, you must confirm that the statuses were sucessfully received by query <code>commitlaststatus</code>.
== Ordering ==
<town>Saint-Petersburg</town>
<address>Room 35, 38 Petrovka Str.</address>
<date>March 2014-03-22, 2014</date>
<time_min>09:00</time_min>
<time_max>14:00</time_max>
<done>ONLY_NOT_DONE</done>
<changes>ONLY_LAST</changes>
<quickstatus>NO</quickstatus>
</statusreq>
</source>
*'''changes''' can have only one value - ONLY_LAST. If this parameter is set, all other parameters, except quickstatus, will be ignored. The description of this mode is given here: [[#Newly changed statuses transfer|Newly changed statuses transfer]]
 
*'''quickstatus''' indicates the “depth” of transferred statuses: "YES" value (by default) - statuses are transferred starting from the information provided by a courier. Such statuses are quick (as a rule, they are provided by a courier immediately after delivery) but not always accurate. "NO" value prohibits status transfer according to oral information provided by the courier and provides only those statuses that have been entered by an operator manually, as a rule. It takes more time however the level of accuracy is much higher in this case. It is not recommended to combine (interleave) these two types of status transfer in case of newly changed statuses demand as in this case the system will consider that statuses of dispatches are changing.
<?xml version="1.0" encoding="UTF-8"?>
<statusreq count="23">
<order orderno="111111" awb="qwerty" orderno2="123123" ordercode="34534234" givencode="2345334">
<barcode>111111</barcode>
<sender>
* ''order'' container attributes:
:* '''''awb''''' is a courier company related waybill number.
:* '''''orderno2''''' is an order number from the urgent delivery subsystem.
:* '''''ordercode''''' is an internal code of the order in the system which is applied for some internal operations.
:* '''''givencode''''' is an internal code of the order in the system which is applied for some internal operations.
 
* '''''code''''' attribute of '''item''' container is an internal code of order string in the system which is applied for some internal operations.
:* '''''returns''''' is the amount of a certain product unit which a receiver has refused. It will have a non-zero value only in case of a partial refusal.
* '''''code''''' attribute of '''item''' container is an internal code of order string in the system which is applied for some internal operations.
* '''''coords''''' in '''receiver''' container indicates receiver position.
* '''currcoords''' indicates current order position. Its attributes are:

Навигация