Перейти к содержанию

Протокол взаимодействия с Key API

Вся работа с Key API происходит по протоколу gRPC:

Авторизация

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

Формат заголовка: Authorization: Bearer [токен доступ]

x-request-id

Во все ответы unary-методов Key API добавляется заголовок x-request-id. Это уникальный uuid-идентификатор запроса, который необходим технической поддержке для разбора различных инцидентов. При обращении в службу технической поддержки обязательно указывайте x-request-id запроса, это ускорит решение вашего вопроса.

Вы можете явно передавать x-request-id, иначе он будет создан автоматически на стороне сервера.

x-app-name

Key API позволяет в запросах добавлять служебный заголовок x-app-name, который нужен для сбора статистики по используемым инструментам. Если вы разработчик SDK, рекомендуется использовать app-name формата <Ник в GitHub>.<Название репозитория>. Например, user_name.project_name.

Рекомендации по тестированию методов Key API

Для тестирования работы Key API можно использовать grpCurl или любой доступный gRPC-клиент. Ниже приведены краткие инструкции по настройке наиболее популярных из них.

Postman

Широко применяемое программное обеспечение для работы и тестирования REST API и gRPC API. Хранит настройки пользователя и коллекции API на своем серевере. Доступно в двух версиях как веб-приложение, и как десктопное ПО.

Envoy

На платформе сервиса KeyApi можно развернуть прокси-сервер Envoy Envoy, который создаст из gRPC-сервиса привычные всем HTTP API методы. Метод получения списка записей в сервисе Реестр ключей. В данный момент функционал не реализован.

Kreya

Данный бесплатный gRPC-клиент предоставляет довольно широкий набор функциональности и возможностей. Скачать его можно с официального сайта kreya.app.

BloomRPC

Скачать данный клиент можно по ссылке: bloomrpc releases.

Интерфейс утилиты достаточно прост, для старта работы требуется указать домен сервиса и импортировать все proto-файлы.

BloomRPC не позволяет увидеть заголовки ответа сервера, поэтому команда Key API рекомендует использовать Kreya.