# API разработчика и ключи

Серверный ключ, актуальный контракт и повтор покупки без случайных дублей.

2026-10-07 · SMS.Red

## Создание и защита ключа

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

Отключение, удаление или перевыпуск отзывают старые данные. После перевыпуска старый ключ недействителен. Храните на сервере, не в публичном браузерном коде, скриншотах и репозитории.

## Актуальный контракт

База SMS.Red: `https://sms.red/api/v1/developer`. Для партнёрского магазина — его домен. Авторизация: `X-API-Key` или `Authorization: Bearer YOUR_API_KEY`. Используйте [документацию](/api/v1/developer/docs) и текущую схему.

До покупки читайте баланс и услуги. Списки различают `otp` и `rent`, страну, наличие и сроки в миллисекундах. Покупка использует реальный идентификатор услуги, страну, срок и предел цены. Дополнительные поля зависят от операции.

## Безопасные повторы

Для каждой новой покупки новый `Idempotency-Key`, для её повтора — прежний. Допустимы 8–128 ASCII-букв, цифр, подчёркиваний или дефисов. После таймаута проверьте попытку документированным запросом. Изменение данных с прежним ключом может дать конфликт.

```http
GET /api/v1/developer/balance
X-API-Key: YOUR_API_KEY
```

Это чтение с примером, не настоящий ключ. Для оплаты следуйте текущим примерам покупки. Заказы и сообщения доступны по документированным методам; отмена требует доступности и подтверждения.

## Ошибки и сообщения

401: ключ отсутствует, отозван, перевыпущен или другой магазин. 404: недоступные/чужие данные. 400: поля, средства или цена. При неясном серверном результате сохраните ключ покупки и проверьте попытку, не создавайте новую вслепую.

Для входящих событий используйте [вебхуки](/ru/guides/webhooks). Не предполагается, что API содержит каждую кнопку панели: проверяйте контракт.
