Войдите в Личный Кабинет
Перейдите на lk.uvio.chat и авторизуйтесь через OTP.
Все запросы к Uvio Notify API аутентифицируются с помощью API-ключа, который передаётся в заголовке X-API-Key.
Uvio Notify API использует схему аутентификации по API-ключу. Каждый ключ привязан к конкретной компании — сервер автоматически определяет вашу компанию по ключу, поэтому дополнительно передавать Company ID не нужно.
Добавьте заголовок X-API-Key к каждому HTTP-запросу:
curl -X GET https://api.uvio.chat/notify/v1/health \
-H "X-API-Key: sk_live_your_secret_key"
Запросы без заголовка X-API-Key или с недействительным ключом получат ответ 401 Unauthorized.
API-ключи создаются в Личном Кабинете компании. Для этого у вас должна быть одобренная регистрация компании. Если вы ещё не зарегистрировались, начните с раздела Начало работы.
Перейдите на lk.uvio.chat и авторизуйтесь через OTP.
Перейдите в Настройки → API-ключи.
Нажмите Создать новый API-ключ. Ключ будет показан только один раз — скопируйте его сразу.
API-ключ отображается только один раз в момент создания. Если вы его потеряли — отзовите старый ключ и создайте новый.
Передайте ключ в заголовке X-API-Key. Ниже приведены примеры на разных языках.
curl -X POST https://api.uvio.chat/notify/v1/otps \
-H "Content-Type: application/json" \
-H "X-API-Key: $UVIO_API_KEY" \
-d '{"identifier": "user@example.com", "identifier_type": "email"}'
import os
import requests
API_KEY = os.getenv("UVIO_API_KEY")
BASE_URL = "https://api.uvio.chat/notify/v1"
response = requests.post(
f"{BASE_URL}/otps",
headers={
"Content-Type": "application/json",
"X-API-Key": API_KEY,
},
json={
"identifier": "user@example.com",
"identifier_type": "email",
},
)
print(response.json())
const API_KEY = process.env.UVIO_API_KEY;
const BASE_URL = "https://api.uvio.chat/notify/v1";
const response = await fetch(`${BASE_URL}/otps`, {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": API_KEY,
},
body: JSON.stringify({
identifier: "user@example.com",
identifier_type: "email",
}),
});
const data = await response.json();
console.log(data);
При проблемах с аутентификацией API возвращает один из следующих HTTP-статусов:
| Статус | Причина | Что делать |
|---|---|---|
| 401 | Отсутствует или недействителен API-ключ | Проверьте заголовок X-API-Key. Убедитесь, что ключ скопирован полностью и не отозван. |
| 403 | Компания неактивна или нет доступа к API | Убедитесь, что регистрация компании одобрена и API-доступ включён в Личном Кабинете. |
| 429 | Превышен лимит запросов | Подождите и повторите запрос. Соблюдайте ограничения частоты запросов для вашего тарифа. |
{
"error": "Unauthorized",
"details": "Invalid API key"
}
API-ключ предоставляет полный доступ к операциям вашей компании. Обращайтесь с ним как с паролем.
В Личном Кабинете вы можете создавать и отзывать ключи. Рекомендуем держать не более двух активных ключей одновременно — один основной и один резервный для ротации.
Процедура безопасной замены ключа без простоя:
Сгенерируйте новый ключ в Личном Кабинете. Старый ключ продолжает работать.
Замените старый ключ на новый в переменных окружения вашего сервиса и выполните деплой.
После успешного деплоя отзовите старый ключ в Личном Кабинете.
Все запросы к Notify API отправляются на единый базовый адрес с обязательными заголовками.
| Параметр | Значение |
|---|---|
| Base URL | https://api.uvio.chat/notify/v1 |
| X-API-Key | Ваш API-ключ (обязательный) |
| Content-Type | application/json для JSON-запросов, multipart/form-data для загрузки файлов |
Все временные метки в запросах и ответах используют UTC в формате ISO 8601 с суффиксом Z, например: 2024-01-01T12:00:00Z.
Теперь, когда вы знаете как аутентифицировать запросы, изучите конкретные API: