API Playground

API Playground – это интерактивный интерфейс облегчающий написание запросов. В нем есть автодополнение вводимого текста, а также документация по всем полям и объектам.
В этом разделе вы узнаете как пройти авторизацию, используя API Playground для выполнения запросов, а также то, как исследовать различные методы API самостоятельно. Подробнее про авторизацию можно почитать здесь

Авторизация с помощью API Playground

Для того чтобы начать работу с API Playground необходимо зарегистрироваться на тестовом стенде.
  1. Для этого перейдите по ссылке на тестовый стенд и зарегистрируйтесь.
Registration screen
  1. После чего создайте новую организацию в системе, указав реальный ИНН и имя вашей организации:
Create organization scree
  1. Теперь перейдите в API Playground и выполните следующий запрос:
{ authenticatedUser { id name } }
Ответ на запрос показывает от какого пользователя выполняются запросы и авторизованы ли вы в консоли или нет. Вы должны получить ответ { "data": { "authenticatedUser": null } }, что означает, что вы не прошли авторизацию в консоли.
  1. Выполните запрос на аутентификацию используя указанный при регистрации email и пароль:
mutation { authenticateUserWithPassword(email: "yourmail@example.com", password: "yourpassword") { token item { id name } } }
В ответ вы получите token для доступа к Condo API и информацию о вашем пользователе.
Success auth screen
  1. Установите полученный токен на вкладку HTTP HEADERS в формате {"Authorization": "Bearer <token>"} и повторно отправьте запрос из шага 3. На данном этапе вы должны получить данные о текущем пользователе, что означает, что вы успешно установили авторизационный токен и можете делать запросы к API используя данный токен.
Authenticated user info

Просмотр доступных полей с помощью Playground API DOCS

Мы только что получили базовую информацию об идентификаторе (id) и имени (name) своего пользователя. Посмотрим, какую еще информацию о себе мы можем получить. Для этого откроем в Playground API вкладку DOCS и найдем там используемый нами запрос authenticatedUser.
Playground docs
Тут мы можем увидеть, что результатом данного запроса является объект типа User, имеющий гораздо больше полей, чем имя и идентификатор. Давайте попробуем получить дополнительно тип пользователя и его аватарку. Для этого добавим соответствующие поля в запрос. Отметим, что обязательные для модели или типа поля обозначаются символом !.
Playground docs extended
В документации с типами сказано, что поле с аватаром пользователя содержит свой набор подполей, поэтому для него необходимо указать, какие именно данные нам нужны. В качестве примера возьмем лишь ссылку на файл (publicUrl) и выполним запрос повторно.
Authenticated user info
Теперь помимо имени пользователя мы так же знаем, что его тип - "сотрудник" (staff). Помимо сотрудников в системе есть пользователи с типом "житель" (resident), а также сервисные учетные записи (service).
Заметим, что поле avatar в ответе имеет значение null, так как у данного пользователя нет фото профиля.
Во вкладке DOCS также можно посмотреть все аргументы для того или иного запроса. Для этого выбрать интересующий метод в списке API Playground.
Method docs example
Теперь у вас должно быть достаточно знаний для самостоятельного исследования Condo API. Но мы все же рекомендуем ознакомиться с примерами запросов к основным предметным моделям Condo API :)