Работаем с API 1С: Кабинет сотрудника - на примере Postman

12.05.24

Интеграция - WEB-интеграция

Методы API 1С: Кабинет сотрудника указаны в Swagger, который легко гуглится и довольно понятно описан. Когда я только начинал работу с ним, мне казалось, что Swagger будет достаточно не только для знакомства с сервисом, но и для работы с моими приложениями. Но оказалось, что это не так. Даже получив bearer-токен, я так и не смог достучаться до своего приложения: в ответ на запросы Swagger отдавал 400-ые ответы. Техподдержка прокомментировала, что это нормально: Swagger демонстрирует методы, но запрос именно к своему приложению через Swagger не сделать. Ниже я опишу, что нужно сделать, чтобы обратиться через API к своему приложению. Данные актуальны по состоянию на май 2024 г.

Методы API 1С: Кабинет сотрудника указаны в Swagger, который легко гуглится и довольно понятно описан.

Когда я только начинал работу с ним, мне казалось, что Swagger будет достаточно не только для знакомства с сервисом, но и для работы с моими приложениями. Но оказалось, что это не так. Даже получив bearer-токен, я так и не смог достучаться до своего приложения: в ответ на запросы Swagger отдавал 400-ые ответы. Техподдержка прокомментировала, что это нормально: Swagger демонстрирует методы, но запрос именно к своему приложению через Swagger не сделать.

Ниже я опишу, что нужно сделать, чтобы обратиться через API к своему приложению. Данные актуальны по состоянию на май 2024 г.

  1. Установка Postman

Можете использовать ваши собственные средства для создания запросов к API 1С: Кабинет сотрудника, - я же буду для наглядности использовать Postman.

Скачайте дистрибутив по ссылке, установите и зарегистрируйтесь. Нам будет достаточно возможностей бесплатной версии.

Создайте новое рабочее пространство (workspace). Оно потребуется нам для генерации bearer-токена. Со слов разработчиков, срок жизни токена - один час, поэтому при долгой работе нам потребуется делать генерацию регулярно, а значит, запрос должен быть под руками.

  1. Получение bearer-токена.

Для получения токена нам нужно знать данные аутентификации администратора 1С: Кабинет сотрудника. Получить их можно разными способами. Мы воспользуемся обработкой “Получение технических данных для интеграции с ДО 3”. Мы получили ее от технической поддержки, скачать можно здесь.

Обработка запускается через Файл - Открыть. Результат - уже известная информация (адрес приложения) и данные для авторизации (идентификатор и секрет).

 

 

Насколько я понимаю, эти данные остаются без изменений при использовании приложения.

Теперь мы можем генерировать bearer.

В созданном пространстве Postman создайте новый запрос:

  • Тип запроса - post
  • Текст запроса - https://vash_adres.1c-cabinet.ru/auth/oidc/token/, где vash_adres - это адрес вашего приложения, без идентификатор
  • Тип данных - x-www-form-urlencoded
  • в body укажите key: grant_type, value: client_credentials
  • в Authorization выберите тип Basic Auth и укажите те самые данные авторизации: полученный идентификатор в поле Username, а полученный секрет в поле Password.

Пример - на скриншотах:

 

 

 

Если все правильно сделано, то в ответ придет код 200 и собственно токен Bearer:

 

 

Скопируйте все, что находится в значении id_token между кавычками. Это и есть bearer. Напомню, что срок жизни кода - всего час, поэтому запрос на его генерацию будет одним из ваших любимых.

 

Импорт методов Swagger

Теперь перейдем к самому интересному - к работе с методами API 1С: Кабинет сотрудника.

Мы можем копировать из Swagger те методы, которые нам интересны, - а можем сразу импортировать все в Postman.

И это не сложно. Импорт делается буквально в два клика. Создайте новое пространство и проведите импорт методов. Для этого нажмите Import и вставьте в качества источника адрес Swagger - https://api.1c-cabinet.ru/ess-api.yml, а затем нажмите Import:

 

 

В результате слева у вас отобразится список доступных методов.

 


Работа с запросами

И наконец, вот она - наша цель, запросы к сервису. Вы может прочитать документацию каждого метода (как в Swagger, так и в Postman):

 

 

Но самое главное - можете использовать метод. Для этого нужно выбрать метод, задать нужные параметры. Посмотрим, как это сделать, на примере метода /persons/active - он возвращает список ID активных физических лиц, - тех, на кого в сервисе заведен личный кабинет.

  1. В строке запроса укажем:

- актуальный адрес приложения, - вместе “applications” и идентификатором:
https://testkatya.1c-cabinet.ru/applications/053-460/

- параметр api + версия:
/api/v1.0/
- собственно метод:

/persons/active

Результат - запрос: https://testkatya.1c-cabinet.ru/applications/053-460/api/v1.0/persons/active

 

 

  1. В параметрах авторизации выберем Type = Bearer Token и значение = тот самый токен, который мы получили ранее.



 

  1. И наконец, в Headers добавим строку:
    Key: formatVersion; Value: 1.0

 

 

Всё, наш запрос готов. Отправляем его большой синей кнопкой Send.

 

Результат запроса.

Если всё сделано верно, то сервис вернет вам 200-ый ответ и результат запроса. В случае с /persons/active мы получим список id активных физических лиц.

 

 

Дальше эту информацию можно использовать в других методах. Например, для деактивации физического лица из сервиса нужно обратиться к методу PUT /persons/inactive. В Headers указать formatVersion; Value: 1.0, в авторизации указать токен bearer, а в Body - один или несколько полученных id (в кавычках и через запятую).

 

 

Надеюсь, этот материал будет вам полезен.

Кабинет сотрудника API Swagger Postman

См. также

Интеграция Альфа Авто 5 / Альфа Авто 6 и AUTOCRM / Инфотек

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    16295    14    18    

14

Интеграция 1С и Битрикс 24 — модуль синхронизации для обмена задачами

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    18510    10    15    

16

Модуль для обмена "1С:Предприятие 8. УАТ. ПРОФ" с FortMonitor

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    13127    34    8    

13

Автоматическая загрузка файлов (например, прайс-листов) из электронной почты, FTP, HTTP, их обработка и выгрузка на FTP (на сайт) и для других целей

Прайсы WEB-интеграция Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Автомобили, автосервисы Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Программа с заданным интервалом времени (или по ручной команде) скачивает файлы (например, прайс-листы поставщиков) из различных источников: письма электронной почты, FTP или HTTP-адреса, и сохраняет их в каталог упорядоченной структуры. При этом извлекает файлы из архивов, может переименовывать файлы и менять их формат (csv, xls, txt). Можно настроить выгрузку обработанных файлов на сайт (через FTP-подключение). Программа будет полезна компаниям, у которых есть большое количество поставщиков и/или прайс-листы поставщиков обновляются часто (необязательно прайс-листы, файлы могут быть любого назначения). Собранные таким образом актуальные версии прайс-листов можно выгрузить с помощью программы себе на сайт (или на любой FTP-сервер) или выполнить другие необходимые задачи.

25200 руб.

28.05.2015    85867    26    51    

50
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Sergant 55 12.05.24 19:11 Сейчас в теме
Отлично описано. Так держать.
2. malikov_pro 1304 14.05.24 08:41 Сейчас в теме
Попробуйте для переноса полученного токена в переменную использовать скрипт.
https://infostart.ru/1c/articles/1282851/
Оставьте свое сообщение