Формат запитів до API
Всі запити до API шлюзу надсилаються за допомогою протоколу REST у форматі JSON методами POST та GET.
Заголовки
У запитах обов'язково має бути заголовок Content-Type: application/json
, інакше запит буде вважатися некоректним навіть при валідному JSON у ньому.
Для підтвердження запиту користувача API необхідно передавати заголовок API-Key
в кожному запиті.
Для автентифікації користувача, який обробив запит API, потрібно передавати заголовок авторизації з токеном у форматі Bearer.
Наприклад: Authorization = "Bearer TOKEN".
Кожен запит, крім /account/login, повинен містити заголовок з токеном авторизації у форматі Bearer
Авторизація
Метод для авторизації обов'язково має передавати заголовки API Key
та Content-Type: application/json
. Також він повинен містити авторизаційні дані:
Ім'я | Тип | Обов'язковий | Опис |
---|---|---|---|
string | Так | Електронна пошта співробітника (логін для авторизації в Skarb Cloud) | |
password | string | Так | Пароль співробітника для авторизації в Skarb Cloud |
Приклад запиту
{
"email": "[email protected]",
"password": "secret"
}
Формат відповідей
Відповіді від API можуть містити об'єкт data
з даними, так і можуть не містити об'єктів зовсім. Якщо під час виконання запиту виникла помилка, у відповіді від API міститься об'єкт errors
з даними про помилку.
Структура об'єктів data
і errors
залежить від методу API і описана в документації кожного методу.
Приклади запиту та відповіді
Запити до API можуть містити як єдиний об'єкт data
, так і можуть не містити об'єктів зовсім.
Приклад запиту
{
"id": "9bc02652-382b-4ec3-861a-aa868d466408"
}
Приклад успішної відповіді
200 OK
{
"data": {
"message": "..."
}
}
Приклад неуспішної відповіді
Переглянути всі можливі помилки API можна у довіднику кодів помилок API
422 Unprocessable Entity (WebDAV) (RFC 4918)
{
"errors": {
"eHealth": "...ehealth error text..."
}
}