Авторизация пользователя приложения

Каждый раз, когда открывается установленная интеграция, SendPulse отправляет код на ссылку, указанную в поле URL для авторизации во время создания приложения. Чтобы получить ключи к вызовам API через приложение, необходимо отправить запрос с этим кодом и ключами приложения.

Открытие интеграции и запуск описанного процесса происходит в двух случаях:

  • когда пользователь впервые устанавливает приложение и дает разрешения;
  • когда пользователь открывает страницу приложения в аккаунте SendPulse – то есть напротив приложения в меню нажимает Просмотреть.

Схематически процесс авторизации пользователя выглядит следующим образом:

Пример запроса POST от SendPulse с отправкой кода:

https://YOUR_INSTALL_URL/?code={code}lang=en

Параметры запроса в URL:

сода string Код, генерируемый при открытии пользователем приложения.

Код действителен в течение 1 минуты.

только string Язык пользователя в аккаунте SendPulse.

Чтобы получить ключи пользователя приложения, сделайте запрос POST на следующую ссылку:

https://api.sendpulse.com/market-service/oauth/authorize

Параметры запроса:

app_id string ID приложения, появляющегося в кабинете разработчика после добавления приложения.*
secret string Ключ приложения появляется в кабинете разработчика после добавления приложения.*
code string Код, отправленный SendPulse на URL для установки.

Код действителен в течение 1 минуты.

*Чтобы найти ключи приложения, перейдите в Каталог приложений > Созданые. Напротив необходимого приложения нажмите три точки и выберите Редактировать. Скопируйте ключи в полях App ID и Secret Key и сохраните их в своей системе.

Пример запроса:

{
  "app_id": "9b0f2f98-d75f-4562-887e-2b79bc8a1eee",
  "secret": "0d028163-9c84-40e4-8508-f4927badf735",
  "code": "21efd6b100b2602cb2d75cb06c2bf37f"
}

В результате успешного выполнения запроса интеграция получит ключи пользователя приложения (client_id и client_secret), с которыми вы сможете получать токен пользователя приложения.

Пример ответа:

{
  "result": true,
  "data": {
    "id": "9b0f56dd-4f4d-4792-ae20-23f99659b69e",
    "user_id": 7043663,
    "app_id": "9b0fdd98-d75f-4562-887e-2b79bc8a1eee",
    "client_id": "b2bfd8a8441294fa0171c195ada8cf56",
    "client_secret": "f7064fb0bbecd392d7b3ea2e2bd77758",
    "created_at": "2024-01-10T15:50:20.000000Z",
    "updated_at": "2024-01-10T15:50:20.000000Z"
  }
}

Параметры ответа:

id uuid ID пользователя в аккаунте SendPulse.

Можно использовать для добавление пользователя в приватное приложение.

client_id string Ключ пользователя приложения для доступа к API.*
client_secret string Ключ пользователя приложения для доступа к API.*
created_at datetime Время создания первого подключения.
updated_at datetime Время обновления последнего подключения.

*Рекомендуем сохранить параметры client_id и client_secret в своей системе для работы в фоновом режиме. Ключи пользователя не изменяются при использовании приложения пользователем.

Другие параметры можно также собирать и обновлять, чтобы сохранить пользовательские данные, например, по его ID.

В случае неуспешного выполнения запроса вы получите ошибку 422 Unprocessable Entity.

Пример ответа при неуспешном запросе:

{
  "result": false,
  "data": null,
  "error": "Сonnect not found!",
  "code": 5
}

Если вы получили ошибку, проверьте введенные данные и отправьте запрос повторно.

    Оцените, насколько полезна статья "Авторизация пользователя приложения"

    Оценка: 5 / 5 (1)

    Далее

    Получение токена пользователя приложения

    Популярное в нашем блоге

    Начните пользоваться сервисом SendPulse прямо сегодня