# Метод авторизації на платформі

<div class="section" id="bkmrk-"><span id="bkmrk--1"></span></div>#### **Token-Based Authorization**

##### **REQUEST**

Після підключення послуги для роботи з API, користувач отримує логін і пароль для авторизації.

<div class="section" id="bkmrk-url-%C2%A0-%D0%9C%D0%B5%D1%82%D0%BE%D0%B4-%D0%B7%D0%B0%D0%BF%D0%B8%D1%82%D1%83-p"><div class="wy-table-responsive"><table class="colwidths-given docutils align-default" style="width: 100.833%; height: 242.156px;"><colgroup><col style="width: 22.9017%;"></col><col style="width: 77.0983%;"></col></colgroup><tbody><tr class="row-odd" style="height: 29.7969px;"><td style="height: 29.7969px; text-align: justify;">**URL**

</td><td style="height: 29.7969px; text-align: justify;">https://edo-v2.edin.ua</td></tr><tr class="row-even" style="height: 29.7969px;"><td style="height: 29.7969px; text-align: justify;">Метод запиту

</td><td style="height: 29.7969px; text-align: justify;">POST

</td></tr><tr class="row-odd" style="height: 29.7969px;"><td style="height: 29.7969px; text-align: justify;">URL запиту

</td><td style="height: 29.7969px; text-align: justify;">/api/authorization/hash

</td></tr><tr class="row-even" style="height: 29.7969px;"><td style="height: 29.7969px; text-align: justify;">**Headers**

</td><td style="height: 29.7969px; text-align: justify;"> </td></tr><tr class="row-odd" style="height: 29.7969px;"><td style="height: 29.7969px; text-align: justify;">Content-Type

</td><td style="height: 29.7969px; text-align: justify;">application/x-www-form-urlencoded

</td></tr><tr class="row-even" style="height: 29.7969px;"><td style="height: 29.7969px; text-align: justify;">**REQUEST**

</td><td style="height: 29.7969px; text-align: justify;"> </td></tr><tr class="row-odd" style="height: 63.375px;"><td style="height: 63.375px; text-align: justify;">JSON Body

</td><td style="height: 63.375px; text-align: justify;">**email** (обов’язково) String - логін користувача

**password** (обов’язково) String - пароль користувача

</td></tr></tbody></table>

</div></div>**Приклад запиту:**

```json
curl --location 'https://dev-oed.edin.ua/api/authorization/hash' \
--header 'l: xezpCrzv5fgk1kNRA/QUZg==' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data-raw 'email={{login}}&password={{password}}'

```

##### **RESPONSE**

В тілі відповіді, у JSON-форматі, передається «ключ сесії», необхідний для подальшої роботи.

У кожному наступному запиті (виклику методу) повинен бути присутнім HTTP-заголовок (Header) «Authorization», який для коректного виконання запитів має містити токен `SID` зі значенням, отриманим під час авторизації.

**Приклад відповіді (JSON):**

```
{"SID": "65daca25-74ba-4c85-8183-71b404a348c0"}
```

<p class="callout info">Тривалість сесії при бездіяльності користувача становить **20 хвилин**.  
Тобто ключ буде видалено через 20 хвилин, якщо користувач не буде активним (не надсилатиме HTTP-запити).</p>

<div class="section" id="bkmrk--3">---

</div><div class="section" id="bkmrk--4"><span id="bkmrk--5"></span></div>#### **HTTP Basic Authentication**

Також, при виконанні запитів, замість значення «SID» в HTTP-заголовку (Header) «Authorization», можливо відправляти серверу логін і пароль у якості базової аутентифікації (HTTP Basic Authentication).

При базовій аутентифікації клієнт разом із кожним запитом відправляє серверу логін і пароль. Ці дані передаються в заголовку запиту «Authorization» у вигляді Base64-коду.

```
Authorization: Basic base64_encode(login:password)
```

Так, наприклад, якщо логін і пароль *admin*, заголовок виглядатиме:

```
Authorization: Basic YWRtaW46YWRtaW4=
```