Стандартный процесс работы API

Из этой статьи вы узнаете о типичных этапах взаимодействия с API, например добавлении класса, сохранении или обновлении объекта. Реализацией всех операций между браузером, вашим сервером и Google Pay API for Passes вы занимаетесь самостоятельно. Процессы работы с разными картами и билетами практически одинаковы. В качестве примера на диаграмме ниже представлен процесс взаимодействия с объектом LoyaltyObject.

Стандартный процесс работы API с кнопками JavaScript и ссылками на веб-токен JSON

Этот процесс изображен на диаграмме выше. Также вы можете ознакомиться с его описанием:

  1. Продавец создает ресурс LoyaltyClass.
    1. Сервер определяет переменные LoyaltyClass.
    2. Затем он отправляет запрос POST на добавление ресурса LoyaltyClass на сервер Google Pay API.
  2. По запросу сервера сервис создает веб-токен JSON (JWT) для объекта LoyaltyObject в определенном классе LoyaltyClass. Этот объект представляет собой карту постоянного клиента конкретного пользователя.
    1. Ваш сервер использует веб-токен JSON для добавления кнопки Сохранить в Google Pay (S2GP).
      • На сайтах размещайте кнопку JavaScript.
      • Для электронных писем, SMS и оригинальных приложений используйте ссылку JWT с кнопкой "Сохранить в Google Pay".
  3. Пользователь нажимает кнопку Сохранить в Google Pay на сайте, в электронном письме, оригинальном приложении или SMS от продавца карты постоянного клиента.
    1. Пользователь попадает на целевую страницу с предложением сохранить объект LoyaltyClass. Объект для сохранения отображается на целевой странице согласно настройке веб-токена JSON. Если пользователь нажал кнопку в оригинальном приложении, ему будет предложено сохранить объект в Google Pay.
    2. Затем он нажимает кнопку Сохранить в Google Pay на ресурсе продавца, чтобы добавить объект LoyaltyObject в приложение.
    3. Объект LoyaltyObject перемещается в Google Pay. LoyaltyObject получает название "Карта постоянного клиента".
  4. Продавец обновляет информацию о карте.
    1. Он использует параметр Object.id, чтобы подать запрос GET к объекту LoyaltyObject.
    2. Затем продавец обновляет объект LoyaltyObject.
    3. Чтобы добавить обновленный объект LoyaltyObject на сервер Google Pay API for Passes, продавец создает запрос PUT или PATCH.
    4. Объект LoyaltyObject перемещается в приложение Google Pay.

Сокращенный вариант ссылки на веб-токен JSON

В браузерах данные усекаются, поэтому JSON-токены в ссылках не должны превышать 1800 символов. Если соблюдать лимит не получается, советуем сначала добавить класс и объект, тогда в токене будет только поле object id.

На диаграмме ниже показан процесс работы с API, который позволяет добавить кнопку "Сохранить в Google Pay" в электронное письмо или SMS.

Процесс работы API с методом запроса POST с веб-токеном JSON (JWT)

Мы понимаем, что зачастую непросто внедрить систему, благодаря которой классы создаются до сохранения объектов. Однако если этого не сделать, веб-токены JSON наверняка превысят лимит в 1800 символов. Именно поэтому лучше использовать метод запроса POST с веб-токеном JSON. В таком случае из вашего приложения можно будет сохранять объекты, для которых создается большое количество классов, например, билеты на мероприятия, посадочные талоны и не только.

Ниже представлены этапы работы с классом flight:

  1. Ваш сервер создает веб-токен JSON для ресурсов FlightObject и FlightClass. Оба типа ресурсов определяются в коде JSON, при этом FlightObject ссылается на FlightClass.
  2. С вашего сервера веб-токен JSON отправляется в клиентское приложение с кнопкой Сохранить в Google Pay. Обратите внимание, что она должна соответствовать правилам использования бренда.
  3. Пользователь нажимает в вашем приложении кнопку "Сохранить в Google Pay".
    1. Создается запрос POST, который отправляется конечной точке JWT. Если идентификаторов класса и объекта в системе пока нет, они будут в нее добавлены. О том, как их после этого изменить, написано в нашем руководстве. Если вы попытаетесь добавить идентификаторы, которые уже сохранены, сообщение об ошибке показано не будет.
    2. Появляется URI-ответ, который доступен пользователю: так он сможет сохранить посадочный талон. URI действует в течение недели после появления запроса.

Чтобы внедрить API, используйте метод запроса POST с веб-токеном JSON (JWT).