Быстрый старт

Создайте ключ, получите токен, разместите заказ и примите webhook — от начала до конца

Просмотр в формате Markdown

Это самый быстрый путь от нуля до выполненного заказа. Вы создадите API-ключ, обменяете его на токен доступа, разместите заказ и получите окончательный результат на ваш webhook. Каждый запрос отправляется на единый базовый URL:

Базовый URLhttps://api.voodoo.center (только HTTPS). Эндпоинты аутентификации размещены на том же хосте по пути /api/v1/auth.

Предварительные требования

  • Аккаунт Voodoo Center с пополненным балансом.
  • Доступ к странице API в дашборде (чтобы создать ключ и настроить webhook).
  • Товар для покупки — его item_id, тип продукта, границы количества и поля ввода вы получаете из экспорта каталога (см. Размещение заказов).
1

Создание API-ключа

В дашборде откройте страницу API и создайте ключ. Сырой ключ (формат ak_...) показывается один раз, при создании — скопируйте его сразу и сохраните как секрет. Вы можете отзывать и создавать ключи здесь в любое время.

2

Настройка webhook (рекомендуется)

На той же странице API укажите свой Webhook URL (публично доступный по HTTPS) и скопируйте секрет для подписи (whsec_..., тоже показывается один раз). Именно сюда отправляются окончательные результаты заказов. Вы можете пропустить этот шаг и использовать опрос, но webhook — это путь с меньшей задержкой.

3

Обмен ключа на токен доступа

Обменяйте свой ключ ak_ на короткоживущий Bearer-токен (действителен 2 часа):

1 — Получение токена доступа
$curl -X POST https://api.voodoo.center/api/v1/auth/token/client \
> -H "Content-Type: application/json" \
> -d '{"api_key":"ak_your_api_key_here"}'
Ответ
1{
2 "access_token": "eyJhbGciOiJFZERTQSIsImtpZCI6Ii4uLiJ9...",
3 "token_type": "Bearer"
4}

Отправляйте access_token как Authorization: Bearer <access_token> в каждом другом запросе. Обменивайте ключ повторно, когда срок действия токена истекает.

4

Проверка баланса (необязательная проверка)

2 — Убедитесь, что аутентификация работает
$curl https://api.voodoo.center/api/v1/account/balance \
> -H "Authorization: Bearer <access_token>"
Ответ
1{ "balance": 1240.75 }
5

Размещение первого заказа

Купите товар типа key. POST /api/v1/orders списывает средства с вашего баланса и сразу возвращает 201 со status: "pending" — выполнение происходит в фоне.

3 — Размещение заказа
$curl -X POST https://api.voodoo.center/api/v1/orders \
> -H "Authorization: Bearer <access_token>" \
> -H "Content-Type: application/json" \
> -d '{
> "item_id": 4090,
> "quantity": 2,
> "merchant_order_id": "po-10231"
> }'
201 Created
1{
2 "id": "0190f8a1-6b2c-7e33-9a10-4c1d2e3f5a6b",
3 "status": "pending",
4 "merchant_order_id": "po-10231",
5 "source": "api"
6}

Всегда отправляйте уникальный merchant_order_id — это делает повторные попытки идемпотентными.

6

Получение результата на webhook

Когда заказ завершается, Voodoo Center отправляет POST с подписанным событием на ваш webhook-URL. Проверьте X-Webhook-Signature относительно сырого тела запроса, а затем прочитайте терминальный status, доставленные codes и любой refund_amount:

Webhook — выполненный заказ с ключами
1{
2 "order_id": "0190f8a1-6b2c-7e33-9a10-4c1d2e3f5a6b",
3 "merchant_order_id": "po-10231",
4 "status": "completed",
5 "delivered_quantity": 2,
6 "refund_amount": 0,
7 "codes": ["ABCD-1234-EFGH-5678", "IJKL-9012-MNOP-3456"]
8}

Пока не хотите запускать webhook? Вместо этого опрашивайте GET /api/v1/orders/{id}, пока status не станет терминальным.

Попробуйте, не покидая документацию

Вкладка API Reference имеет живой API Explorer для каждого эндпоинта. Он настроен получать токен доступа за вас — введите только свой API-ключ ak_ один раз, запустите любой эндпоинт, и Explorer получит свежий Bearer-токен в фоне и добавит его автоматически. Вам никогда не придётся вставлять JWT.