Получение информации о проекте push-уведомлений
Сервер Сервиса уведомлений предоставляет возможность получить следующую информацию:
- о доступности сервера Сервиса уведомлений;
- об актуальности ключей безопасности проекта push-уведомлений;
- об активности проекта push-уведомлений.
Необходимо сформировать запрос на сервер Сервиса уведомлений, указанный
в api_url
.
GET {api_url}/projects/{project_id}
Заголовок Content-Type
должен иметь значение: application/json
.
Заголовок Authorization
должен иметь значение Bearer access_token
, полученный
в запросе авторизации.
При формировании URL для запроса вместо project_id
необходимо указать идентификатор проекта
из конфигурации.
Параметры ответа приведены в таблице. Все параметры обязательные.
Параметр | Тип | Описание |
---|---|---|
id | String | Идентификатор проекта |
name | String | Название проекта |
isActive | Boolean | Активенность проекта |
serviceAccount | OBJ serviceAccount | Объект с информацией об сервисном аккаунте проекта |
createdAt | String | Дата создания проекта |
updatedAt | String | Дата обновления проекта |
Параметры объекта serviceAccount
приведены в таблице.
Все параметры обязательные.
Параметр | Тип | Описание |
---|---|---|
clientId | string | Идентификатор сервисного аккаунта, совпадает с идентификатором проекта |
clientName | string | Название сервисного аккаунта, совпадает с названием проекта |
publicKeys | Object | Объект с информацией о сроке действия ключей безопасности проекта |
scope | string | Список действий, которые могут быть разрешены приложению |
audience | Array[string] | Предполагаемый потребитель токена, как правило, это сервер ресурсов (API), к которому приложению необходимо получить доступ |
Параметры объекта publicKeys приведены в таблице. Все параметры обязательные.
Параметр | Тип | Описание |
---|---|---|
meta | Object | Объект с информацией о ключе безопасности проекта. Содержит значение параметров: public:{значение} идентификатор публичного ключа; assigned_at – дата назначения ключей безопасности проекта; expired_at – дата окончания действия ключей безопасности проекта. |
Ответ будет представлен в следующем формате:
{
"createdAt":"2023-09-13T21:43:29.712093+03:00",
"id":"acs_1384_test_ck105k9pfb781l4a8n8g",
"isActive":true,
"name":"acs-1384-test",
"serviceAccount":{
"audience":[
"http://example.ru/auth/public",
"http://example.ru/push/public"
],
"clientId":"acs_1384_test_ck105k9pfb781l4a8n8g",
"clientName":"acs-1384-test",
"publicKeys":{
"meta":{
"public:WcKEcj7wQQ":{
"assigned_at":"2023-09-13T18:43:58Z",
"expired_at":"2024-12-13T00:43:58Z"
}
}
},
"scope":"openid offline message:update project:read"
},
"updatedAt":"2023-09-13T21:44:43.73058+03:00"
}
Возможные коды ошибок приведены в таблице.
Код и статус ошибки | Описание | Действия для устранения ошибки |
---|---|---|
401 Unauthorized | Истек срок действия токена авторизации | Необходимо получить новый токен авторизации |
401 Unauthorized | Client authentication failed, the provided client JSON Web key is expired (не удалось выполнить аутентификацию. Срок действия предоставленного ключа истек) | Необходимо обратиться к администратору Сервиса уведомлений с просьбой выпустить новый ключ безопасности проекта и прислать его, после чего следует установить новый ключ и повторить запрос |
403 Forbidden | Доступ к ресурсу запрещён | Нужно проверить корректность настроек переданного проекта. В случае повторения ошибки обратиться к Администратору Сервиса уведомлений |
404 Not Found | Ресурс не найден | Нужно проверить корректность настроек переданного проекта. В случае повторения ошибки обратиться к Администратору Сервиса уведомлений |
429 Too Many Requests | Достигнут лимит количества запросов в секунду | Необходимо сократить количество запросов в секунду для проекта |
500 Internal Server Error | Внутренняя системная ошибка сервера Сервиса уведомлений | Необходимо обратиться к системному администратору |
504 Gateway Timeout | Инфраструктура Сервиса уведомлений недоступна | Необходимо обратиться к системному администратору |