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

«Моя посылка» — настройте сервис «под себя», чтобы по максимуму использовать возможности проекта.

Индивидуальная настройка сервиса «Моя посылка» для удобного взаимодействия.

«Моя посылка» предлагает сторонним приложениям широкий спектр возможностей для удобного отслеживания почтовых отправлений. Программное обеспечение нашего сервиса позволяет индивидуально настроить функционал, с учетом потребностей конкретного пользователя.

На этой странице разработчики найдут необходимую информацию, а также примеры возможных ошибок при выполнении запросов. Это поможет правильно организовать работу с сервисом — подключить приложения, настроить нужные функции, отключить «лишние» возможности. Благодаря этому взаимодействие с проектом «Моя посылка» будет максимально удобным для вас.

Общие сведения

API сервиса «Моя посылка» позволяет организовать быстрый доступ ваших приложений к функционалу сервиса. С его помощью можно автоматизировать часть операций и выполнять различные действия со стороны приложений в любое время. Вы можете получать текущие статусы отправлений, добавлять новые трек-номера на отслеживание и т.п.

Взаимодействие с сервисом «Моя посылка» происходит с помощью обмена JSON-сообщениями по принципу RESTful API. Формат JSON обеспечивает быструю передачу данных и не требует реализации сложных клиентов для обращений к серверу API.

Запросы отправляются на специальный адрес методом GET, POST и др. в зависимости от действия. Если требуется, то в теле запроса в виде JSON-строки передаётся объект, описывающий входные параметры. Обязательна передача заголовка Content-Type: application/json.

Версии API

Актуальная версия 1
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);
// обработка результата...