> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ycloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Аутентификация

> Аутентифицируйте запросы к YCloud API с помощью API-ключа.

## Что это такое

YCloud использует API-ключи для идентификации вашего аккаунта и авторизации запросов к API. Отправляйте ключ только из доверенного серверного кода.

## Перед началом работы

Создайте или получите API-ключ в своем аккаунте YCloud. Определите, где каждая среда будет хранить свой секрет, прежде чем добавлять ключ в код приложения.

## Запрос

Передавайте ключ в заголовке `X-API-Key` при каждом запросе.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl https://api.ycloud.com/v2/balance \
  --header "X-API-Key: $YCLOUD_API_KEY"
```

Не добавляйте префикс `Bearer`. Значением заголовка является сам API-ключ.

## Ответ

Действительные учетные данные позволяют эндпоинту вернуть обычный успешный ответ. Недействительные или неавторизованные учетные данные возвращают ответ с ошибкой `4xx`.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "error": {
    "status": 401,
    "code": "UNAUTHORIZED",
    "message": "Authentication is required.",
    "requestId": "req_1KjtKI80IKoaJNa6n6p"
  }
}
```

## Безопасное хранение ключей

* Храните API-ключи в менеджере секретов или в зашифрованной переменной окружения.
* Используйте API-ключи только в доверенном серверном коде.
* Никогда не размещайте ключ в URL, сборках для браузера, мобильных приложениях, логах или на скриншотах.
* Используйте отдельные ключи для разных сред, если это позволяет настройка вашего аккаунта.
* Немедленно выполните ротацию ключа, если считаете, что он был скомпрометирован.

Для локальной разработки экспортируйте ключ в вашей командной оболочке:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
export YCLOUD_API_KEY="YOUR_API_KEY"
```

Считывайте его из переменных окружения в своем приложении. Не прописывайте его жестко в коде.

## Ротация ключа

Создайте или выберите ключ для замены, разверните его во всех сервисах, обращающихся к YCloud, проверьте трафик с новым ключом, а затем отзовите старый ключ. Если вы подозреваете утечку, сначала выполните ротацию, а расследование проводите позже.

## Устранение неполадок с аутентификацией

Сбой аутентификации возвращает ответ `4xx`. Убедитесь, что:

* Запрос использует `https://api.ycloud.com/v2`.
* Имя заголовка в точности соответствует `X-API-Key`.
* Ключ не содержит лишних пробелов или кавычек.
* Ключ активен и принадлежит нужному аккаунту YCloud.
* Аккаунт имеет доступ к продукту, используемому эндпоинтом.

Логируйте ответ `requestId` для устранения неполадок, но никогда не записывайте в логи сам API-ключ. Формат ответа описан в разделе [Ошибки](/ru/api-reference/guides/api-fundamentals/handle-errors).

<Card title="Проверка аутентификации" icon="rocket" href="/ru/api-reference/getting-started/quickstart">
  Проверьте ключ с помощью запроса только для чтения к Balance API.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.