Функционал, который дает возможность сторонним сервисам создать более удобную для пользователей интеграцию с Ветменеджер.
Преимущества перед обычными API ключами:
Единый ключ ко всем клиникам
Не нужно просить API ключ у пользователя, пользователь просто включает сервис в настройках Ветменеджер.
Прозрачное ограничение прав. Пользователь видит, к каким данным он дает доступ. Легче согласиться предоставить ограниченный доступ, чем полный.
Авторизация в API
Осуществляется при помощи передачи двух параметров X-SERVICE-REST-API-KEY и X-SERVICE-NAME через HEADERS. Единые параметры для всех клиник.
curl -X GET \ https://$domainName.vetmanager.ru/rest/api/clinics \ -H 'x-service-name: $serviceName \ -H 'x-service-rest-api-key: $serviceApiKey'
Где:
$domainName - уникальная часть url конкретной клиники $serviceName - имя вашего сервиса $serviceApiKey - ваш ключ, который вы получили у Ветменеджер
Как получить мой serviceApiKey?
Свяжитесь с поддержкой Ветменеджер и предоставьте следующую информацию:
Имя и описание сервиса
Необходимые права для вашего сервиса. Перечислите необходимые uri и действия для них (GET, POST, PUT, DELETE)
Контактный номер телефона или телеграмм
Как мне узнать какие клиники дали доступ?
Для этого есть отдельный API и еще один секретный ключ.
https://billing-api.vetmanager.cloud/external-services/$serviceName/enabled-domains?secret=$secret
Раз в 24 часа, запрос может работать дольше обычного, до 5 минут. Список клиник кешируется и последующие запросы выполняются быстро. Клиника может не попасть список сразу после включения, но попадет в него через 24 часа.
Пример ответа:
{"error":false,"data":[{"domain":"test","url":"https://test.vetmanager.cloud"},{"domain":"test2","url":"https://test2.vetmanager2.ru"}]}