# Авторизация запросов

{% hint style="info" %}

* Для всех запросов требуется Basic-авторизация
* Создаваемый ключ является кодированной в Base64 парой \<key\_id>:\<password>&#x20;
* Для использования в Basic-авторизации вы можете декодировать его и использовать как пару логин:пароль, либо прописывать в заголовке как есть без дополнительного кодирования: `Authorization: Basic {API_KEY}`
  {% endhint %}

## Создание API-ключа <a href="#api-keys" id="api-keys"></a>

Во всех запросах авторизация происходит при помощи api-ключа. При этом ключи делятся на четыре типа:

1. для работы с сообщениями (в описании методов –`{TOKEN_1}`)
2. для работы с системными сущностями (в описании методов –`{TOKEN_2}`)
3. для работы с API подтверждения телефона / виджетом подтверждения телефона для своего сайта (в описании методов – `{TOKEN_3}`)
4. для работы с виджетом подтверждения телефона для сайта на Tilda (в описании методов – `{TOKEN_4}`)

Все типы ключей создаются в веб-интерфейсе личного кабинета [Direct](https://direct.i-dgtl.ru).

* Перейдите в пункт меню "Разработчикам"

<figure><img src="/files/aNUSDIP2AI282wvKIEiA" alt=""><figcaption></figcaption></figure>

* Нажмите "Создать ключ", укажите название, тип и центр разделения трафика (для методов работы с трафиком)

<figure><img src="/files/o8VGI99QB1liylQxFcGi" alt="" width="375"><figcaption></figcaption></figure>

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

<figure><img src="/files/tmxOZvpUKiWR4PQCErU5" alt=""><figcaption></figcaption></figure>

## Действия с API-ключами

После создания API-ключ можно деактивировать, перевыпустить и удалить.

<figure><img src="/files/z1aXV8K7523m8o6C5eud" alt=""><figcaption></figcaption></figure>

* **При деактивации** API-ключ перестает проходить авторизацию, на все запросы возвращается код HTTP 401.  Ключ можно снова активировать в любой момент в боковом меню.
* **При перевыпуске** старый ключ сразу перестает работать, вместо него вы получаете новый.
* **При удалении** старый ключ сразу перестает работать.

## Встраивание API во фронтенд

Мы заботимся о вашей безопасности, поэтому API Direct предназначен исключительно для вызовов с защищенных серверов. При попытке выполнения API-запросов из браузера будет возникать CORS-ошибка, запрос OPTIONS для методов не доступен. Исключение из этого правила составляет только сервис [Верификация телефона на Tilda](/verifier/vidzhet-verifikacii-telefona/tilda.md).

## Ограничения по IP

По умолчанию доступ по API-ключу предоставляется из-под любых IP-адресов, но вы можете обратиться в поддержку и сообщить нам IP-адреса или подсети, которыми вы бы хотели ограничить доступ.

При включенном ограничении доступа при запросе, выполненном из-под неразрешенного IP-адреса, в ответе будет возвращаться ошибка **HTTP 401** с телом:

```
{
    "error": {
        "code": 4013,
        "msg": "IP not allowed"
    }
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://api.docs.direct.i-dgtl.ru/authorization.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
