Интеграция с сервисом «Моя посылка»

«Моя посылка» для удобного взаимодействия.
«Моя посылка» предлагает сторонним приложениям широкий спектр возможностей для удобного отслеживания почтовых отправлений. Программное обеспечение нашего сервиса позволяет индивидуально настроить функционал, с учетом потребностей конкретного пользователя.
На этой странице разработчики найдут необходимую информацию, а также примеры возможных ошибок при выполнении запросов. Это поможет правильно организовать работу с сервисом — подключить приложения, настроить нужные функции, отключить «лишние» возможности. Благодаря этому взаимодействие с проектом «Моя посылка» будет максимально удобным для вас.
Общие сведения
API сервиса «Моя посылка» позволяет организовать быстрый доступ ваших приложений к функционалу сервиса. С его помощью можно автоматизировать часть операций и выполнять различные действия со стороны приложений в любое время. Вы можете получать текущие статусы отправлений, добавлять новые трек-номера на отслеживание и т.п.
Взаимодействие с сервисом «Моя посылка» происходит с помощью обмена JSON-сообщениями по принципу RESTful API. Формат JSON обеспечивает быструю передачу данных и не требует реализации сложных клиентов для обращений к серверу API.
Запросы отправляются на специальный адрес методом GET, POST и др. в зависимости от действия. Если требуется, то в теле запроса в виде JSON-строки передаётся объект, описывающий входные параметры. Обязательна передача заголовка Content-Type: application/json.
Версии API
| API | Описание |
|---|---|
| Tracker API | Позволяет получать статусы отслеживаемых отправлений, информацию по типам и номерам посылок, управлять пользовательскими почтовыми отправлениями |
| Finance API | Позволяет получить информацию по проведенным финансовым операциям |
Webhook
Получение обновлений данных API сервиса «Моя посылка» в режиме реального времени с помощью функции webhook.
Ошибки при выполнении запросов
Если сервис не может обработать входящий запрос по разным причинам, то возвращается JSON строка следующей структуры:
{
"status": 404,
"error": "Not Found",
"message": "TrackerNotFound",
"path": "/api/v1/trackers/.."
}- status - цифровой код ошибки, совпадает с кодом HTTP статуса;
- error - уникальный строковый код ошибки;
- error - сообщение об ошибке;
- path - путь, к которому осуществлен запрос API.
Примеры выполнения запросов
// пример с использованием функций расширения curl
$params = array(
...
);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://moyaposylka.ru/api/...');
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_VERBOSE, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($curl, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-Api-Key: INSERT_YOUR_API_KEY_HERE'
]);
$content = curl_exec($curl);
curl_close($curl);
$result = json_decode($content, true);
// обработка результата...
// простой пример с использованием функции file_get_contents
$params = array(
...
);
$opts = array(
'http' => array(
'method' => 'POST',
'header' => 'Content-Type: application/json' . "\n"
. 'X-Api-Key: INSERT_YOUR_API_KEY_HERE',
'content' => json_encode($params),
'timeout' => 60,
'ignore_errors' => true
)
);
$context = stream_context_create($opts);
$content = file_get_contents('https://moyaposylka.ru/api/...', false, $context);
$result = json_decode($content, true);
// обработка результата...