Как использовать Ups Tracking Api: пошаговое руководство по настройке
Чтобы использовать UPS Tracking API, создайте учетную запись UPS Developer, зарегистрируйте приложение, получите учетные данные OAuth 2.0, запросите токен доступа и отправляйте аутентифицированные запросы отслеживания с действительным номером отслеживания UPS. Точные названия разделов портала, этапы проверки и требования API могут измениться, поэтому перед запуском рабочей интеграции обязательно ознакомьтесь с актуальными инструкциями на официальном UPS Developer Portal.
Это руководство предназначено для разработчиков и операционных команд электронной коммерции, которым необходимо отображать статус отправлений в интернет-магазине, системе управления заказами, складском процессе, инструменте обслуживания клиентов или внутренней панели мониторинга. В нем основное внимание уделяется последовательности интеграции, решениям, влияющим на надежность, и проверкам, предотвращающим распространенные ошибки отслеживания.
Что делает UPS Tracking API
Интеграция API позволяет программному обеспечению запрашивать информацию об отправлении у UPS, вместо того чтобы сотруднику или клиенту вручную открывать страницу отслеживания перевозчика. Ваше приложение может использовать ответ для отображения последнего известного статуса, выявления событий доставки, поддержки расследований службы поддержки клиентов или запуска внутреннего рабочего процесса.
API — это не то же самое, что страница отслеживания. Страница отслеживания предназначена для чтения человеком. Ответ API представляет собой структурированные данные, которые программное обеспечение должно разобрать, сохранить и представить. Ваша система по-прежнему отвечает за аутентификацию, обработку ошибок, опрос или сбор событий, хранение данных, разработку пользовательского интерфейса и любые бизнес-правила, связанные с событиями доставки.
Перед началом работы
Подготовьте следующие элементы перед открытием портала разработчиков:
- Учетную запись UPS Developer или тип учетной записи, требуемый текущим процессом подключения UPS.
- Зарегистрированное приложение и учетные данные, выданные для этого приложения.
- Тестовый номер отслеживания или другой одобренный метод тестирования. Не начинайте с реальных данных клиентов, если в документации UPS предусмотрена отдельная тестовая среда или процедура тестирования.
- Четкое решение о том, какая система отвечает за записи об отправлениях, события отслеживания и сообщения о статусе для клиентов.
- Безопасное место для хранения учетных данных клиента и токенов доступа. Никогда не размещайте секреты в браузерном коде, общедоступных репозиториях, снимках экрана или мобильных приложениях, которые пользователи могут исследовать.
Также следует решить, требуется ли вашему приложению только отслеживание или более широкая интеграция с UPS. Отслеживание, расчет тарифов, доставка, проверка адресов и работа с документами могут иметь разные продукты, разрешения, форматы запросов и эксплуатационные требования.
Шаг 1: Откройте UPS Developer Portal
Начните с официального UPS Developer Portal. Ознакомьтесь с актуальным каталогом API, инструкциями по аутентификации, требованиями к подключению, условиями и информацией о средах. Ищите именно документацию Tracking API, не предполагая, что инструкции для другого сервиса UPS также применимы к отслеживанию.
Портал является надлежащим источником актуальных полей запросов, областей авторизации, описаний ответов, ограничений частоты запросов, кодов ошибок и сведений о средах. Эти данные могут измениться, а пример кода от стороннего источника может использовать устаревший интерфейс UPS или устаревший метод аутентификации.
Шаг 2: Зарегистрируйте приложение
Создайте приложение на портале разработчиков и выберите API UPS, которые действительно нужны приложению. Для проекта, связанного только с отслеживанием, запрашивайте только возможность отслеживания, если вашему рабочему процессу не требуются дополнительные сервисы. Ограничение разрешений уменьшает сложность настройки и упрощает последующее устранение неполадок.
Сохраните идентификатор и секрет приложения в серверном менеджере секретов или защищенной системе переменных окружения. Относитесь к секрету как к паролю. Если он был раскрыт, смените его в соответствии с процедурой UPS и проверьте журналы на предмет несанкционированного использования.
Если портал запрашивает сведения об учетной записи, оплате, компании или приложении, предоставьте точную информацию. Не придумывайте рабочий сценарий и не используйте данные учетной записи другого лица только для завершения тестирования. Доступ к сервису может зависеть от конфигурации учетной записи и текущего процесса проверки UPS.
Шаг 3: Реализуйте аутентификацию OAuth 2.0
В актуальной документации UPS для разработчиков используется аутентификация API на основе OAuth. Обычно сервер обменивает учетные данные приложения через описанный поток получения токена и получает токен доступа. Затем он включает этот токен в заголовок авторизации API-запроса.
Отделите аутентификацию от логики отслеживания. Практическая архитектура включает один компонент, который получает и кэширует действительный токен, и другой, который вызывает конечную точку отслеживания. Компонент токена должен:
- Отправлять учетные данные только на указанную в документации конечную точку авторизации UPS.
- Использовать тип содержимого и параметры предоставления, указанные в актуальной документации UPS.
- Временно сохранять токен и повторно использовать его до истечения срока действия, а не запрашивать новый токен для каждого номера отслеживания.
- Обновлять или повторно получать токен при наступлении указанного в документации условия истечения срока действия.
- Удалять учетные данные и токены из журналов приложения, отчетов об ошибках и обращений в службу поддержки.
Не копируйте токен из сеанса браузера в постоянную интеграцию. Серверная служба обычно является более безопасным местом для управления учетными данными, поскольку она не раскрывает секреты в общедоступном клиентском коде.
Шаг 4: Создайте запрос отслеживания
Используйте формат запроса, указанный в официальном справочнике Tracking API. Типичный запрос включает номер отслеживания в пути или параметрах запроса, токен доступа в заголовке авторизации и заголовки, требуемые API UPS. Не предполагайте, что достаточно только номера отслеживания: в актуальном справочнике могут быть указаны обязательные заголовки версии, транзакции, типа содержимого или корреляции.
Упрощенная схема запроса выглядит следующим образом:
GET [UPS tracking endpoint]/[tracking-number]
Authorization: Bearer [access-token]
Accept: application/json
Это структурный пример, а не конечная точка для копирования. Используйте конечную точку, версию, заголовки и имена параметров, опубликованные в документации UPS для вашего приложения. Нормализуйте номер отслеживания в соответствии с правилами обработки собственных данных заказов, но не удаляйте символы, если документация перевозчика не подтверждает безопасность таких действий.
Шаг 5: Сопоставьте события с вашей моделью данных
Ответы перевозчика часто содержат больше информации, чем одна метка статуса. До разработки страницы для клиентов сопоставьте ответ с внутренней моделью, включающей, например, идентификатор отправления, перевозчика, последний статус, код события, описание события, временную отметку события, местоположение, сведения о предполагаемой доставке и время доставки, если оно доступно.
Сохраняйте исходный ответ перевозчика, если это допускается вашими правилами хранения и конфиденциальности. Необработанный ответ может помочь диагностировать ошибку сопоставления или объяснить, почему нормализованный статус отличается от формулировки перевозчика. При этом не показывайте клиентам технические коды событий без понятного объяснения.
Не рассматривайте каждый статус как окончательный результат доставки. Например, событие «в пути», исключение, попытка доставки и событие «доставлено» не должны сводиться к одному и тому же сообщению для клиента. Создайте явные сопоставления и определите поведение системы, если UPS добавит значение события, которое ваш код не распознает.
Шаг 6: Добавьте повторные попытки, проверку и мониторинг
Для рабочей интеграции недостаточно успешного запроса в консоли разработки. Добавьте проверки и эксплуатационные меры безопасности:
- Проверка входных данных: отклоняйте пустые, некорректные или явно неполные номера отслеживания до отправки запросов.
- Тайм-ауты: не позволяйте медленному ответу перевозчика блокировать весь процесс оформления заказа, поддержки или работы склада.
- Правила повторных попыток: осторожно повторяйте запросы при временных сбоях сети или сервиса, используя задержку с увеличением интервала. Не повторяйте многократно запросы при ошибках аутентификации или недействительных номерах отслеживания.
- Учет ограничений частоты: соблюдайте ограничения и правила использования, указанные в документации UPS. Кэшируйте недавние результаты, если это допускается вашим рабочим процессом.
- Неизвестные состояния: сохраняйте нераспознанное событие для проверки, вместо того чтобы ошибочно помечать его как доставленное или утерянное.
- Наблюдаемость: записывайте время выполнения запроса, категорию ответа и сведения о корреляции, не регистрируя секреты или лишние персональные данные.
Система отслеживания также должна определять частоту обновления отправления. Слишком частый опрос создает избыточную нагрузку и может не давать новой информации. Слишком редкий опрос может привести к тому, что страница для клиентов будет выглядеть устаревшей. Выбирайте интервал с учетом объема отправлений, срочности операций, правил перевозчика и фактической потребности пользователей в актуальности данных.
Шаг 7: Тестируйте реалистичные сценарии
Тестируйте не только успешно доставленное отправление. Включите неизвестный номер отслеживания, отправление в пути, исключение, отправление с несколькими событиями, истекший токен, тайм-аут, ошибку авторизации и ответ с полями, которые не ожидает ваш анализатор. Если UPS предоставляет отдельную тестовую среду или тестовые учетные данные, сначала следуйте этой процедуре.
Проверьте полный путь от запроса до пользовательского интерфейса. Убедитесь, что правильный заказ получает правильное отправление, временные отметки отображаются в нужном часовом поясе, дублирующиеся события не создают повторные сообщения для клиентов, а сбой перевозчика не заменяет ранее действительный статус вводящим в заблуждение текстом.
Когда лучше использовать API отслеживания нескольких перевозчиков
Прямая интеграция с UPS может быть подходящей, если ваша компания отправляет большинство посылок через UPS и нуждается в тщательном контроле рабочего процесса перевозчика. Она становится менее удобной, когда заказы могут проходить через нескольких перевозчиков, торговые площадки, почтовых операторов или региональные службы доставки. В такой ситуации отдельные учетные данные, форматы ответов, наборы статусов и правила повторных попыток могут увеличить объем работ по обслуживанию.
Мультиперевозочный сервис, такой как 17TRACK Tracking API, может предоставить альтернативную модель интеграции для приложений, которым требуется отслеживание у нескольких перевозчиков. Документацию разработчика следует изучить отдельно, чтобы проверить поддерживаемых перевозчиков, форматы запросов, аутентификацию, условия использования и доступные возможности. Это не означает, что такой вариант автоматически лучше прямого подключения к UPS: правильный выбор зависит от набора перевозчиков, требований к данным, степени контроля над интеграцией, а также коммерческих или нормативных ограничений.
Для пользовательского поиска отправления, а не интеграции для разработчиков, страница отслеживания 17TRACK может быть более подходящей, чем создание подключения к API. Если интернет-магазину нужны брендированные обновления после покупки, отдельно изучите соответствующую интеграцию с платформой, вместо того чтобы добавлять ненужную магазину работу с API.
Распространенные ошибки реализации
- Использование старых примеров: пример кода может ссылаться на устаревшую версию, старый метод аутентификации или другой сервис UPS.
- Размещение секретов во внешнем коде: все, что отправляется в браузер, следует считать доступным для просмотра.
- Предположение, что пустой результат означает отсутствие отправления: проверьте номер отслеживания, разрешения учетной записи, среду и сообщение ответа, прежде чем делать деловой вывод.
- Сопоставление только по тексту: описания статусов могут различаться. Используйте документированные коды и сохраняйте неизвестные значения для проверки.
- Игнорирование требований к учетной записи и использованию: технический код может быть корректным, даже если приложение не настроено для запрошенного сервиса.
- Обновление без бизнес-правила: ненужный опрос может увеличить расходы, нагрузку и операционный шум, не улучшая взаимодействие с клиентом.
Практический список проверки перед запуском
- Убедитесь, что приложение использует актуальную документацию UPS и одобренную среду.
- Проверьте, что учетные данные хранятся на сервере и могут быть заменены.
- Протестируйте ошибки аутентификации, ошибки перевозчика, некорректные входные данные и тайм-ауты.
- Сравните нормализованные статусы с исходным ответом для типичных отправлений.
- Установите политику обновления и отслеживайте объем запросов.
- Определите ответственных за неопознанные события, задержки обновлений и обращения клиентов.
- Документируйте интеграцию, чтобы другой разработчик мог безопасно обновлять учетные данные, версии конечных точек и сопоставления статусов.
Часто задаваемые вопросы
Нужна ли мне учетная запись UPS для использования Tracking API?
Изучите актуальные требования UPS к подключению и доступу на Developer Portal. Доступ к API может зависеть от регистрации приложения, учетных данных, конфигурации учетной записи и конкретного запрашиваемого сервиса. Не предполагайте, что вход в общедоступную страницу отслеживания можно использовать вместо доступа к API для разработчиков.
Является ли UPS Tracking API бесплатным?
Не предполагайте, что доступ к API не связан с коммерческими условиями или ограничениями использования. UPS публикует актуальную информацию о сервисах и учетных записях через официальные каналы, а некоторые требования могут зависеть от продукта, учетной записи или соглашения. Перед планированием бюджета рабочей среды подтвердите применимые условия непосредственно у UPS.
Могу ли я вызывать UPS API непосредственно из JavaScript в браузере?
Вызов из браузера может раскрыть учетные данные приложения и создать проблемы, связанные с междоменными запросами, безопасностью и контролем использования. Серверная интеграция обычно является более безопасным вариантом для хранения секретов, получения токенов, применения правил повторных попыток и ограничения доступа к данным об отправлениях.
Как часто мое приложение должно запрашивать обновления отслеживания?
Используйте политику обновления, основанную на документированных ограничениях перевозчика, объеме отправлений, срочности операций и необходимой пользователям актуальности данных. По возможности кэшируйте недавние результаты, применяйте увеличение интервала после временных сбоев и не рассматривайте постоянный опрос как замену документированной возможности получения событий или уведомлений.
Следует ли мне использовать прямую интеграцию с UPS или мультиперевозочный API?
Прямая интеграция с UPS может подойти для рабочего процесса, ориентированного на UPS и требующего специфичного для перевозчика контроля. Мультиперевозочный API может сократить число интеграций, если ваши отправления используют нескольких перевозчиков. Перед выбором сравните поддерживаемых перевозчиков, аутентификацию, поля данных, требования к надежности, условия использования и затраты на реализацию.
Источники
- UPS Developer Portal — официальный каталог API, доступ к приложениям, аутентификация и документация для разработчиков.
- UPS Technology Integration — официальная информация об интеграции технологий UPS с бизнес-системами.
- 17TRACK Tracking API — официальная страница продукта и раздел для разработчиков мультиперевозочного отслеживания.
- 17TRACK API Documentation — официальная документация API по аутентификации, запросам и обработке ответов.


