Примеры использования

Изучите распространенные паттерны интеграции с Xabarchi API.

Массовая отправка голосовых сообщений

Рабочий процесс

  1. Создайте группу → POST /api/groups
  2. Добавьте клиентов → POST /api/groups/:id/clients
  3. Создайте/загрузите аудио → POST /api/audios
  4. Создайте очередь → POST /api/queues
  5. Отслеживайте прогресс → GET /api/queues/:id/stats

Пример

1. Создайте группу:

bash
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"VIP Customers","description":"High-value clients"}' \
  https://api.xabarchi.live/api/groups

# Response: {"id":"group-123",...}

2. Добавьте клиентов:

bash
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"phoneNumber":"+998901234567","name":"John Doe"}' \
  https://api.xabarchi.live/api/groups/group-123/clients

3. Создайте/загрузите аудио:

bash
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"Promo","text":"Assalomu alaykum! Maxsus chegirma!","gender":"FEMALE","language":"uz"}' \
  https://api.xabarchi.live/api/audios

# Response: {"id":"audio-456",...}

4. Создайте очередь:

bash
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"VIP Promo Campaign","groupId":"group-123","audioId":"audio-456"}' \
  https://api.xabarchi.live/api/queues

# Response: {"queueId":"queue-789","jobId":"job-abc"}

5. Отслеживайте прогресс:

bash
curl -H "Authorization: Bearer $TOKEN" \
  https://api.xabarchi.live/api/queues/queue-789/stats

Проверка баланса и использования

Рабочий процесс

  1. Проверьте статус → GET /api/auth/balance-status
  2. Посмотрите историю → GET /api/auth/balance-history

Проверьте статус баланса:

bash
curl -H "Authorization: Bearer $TOKEN" \
  https://api.xabarchi.live/api/auth/balance-status

# Response:
# {
#   "currentBalance": 50000,
#   "averageDailySpend": 2500,
#   "estimatedDaysRemaining": 20,
#   "estimatedMinutesRemaining": 500,
#   "lowBalanceAlert": false,
#   "canProcess": true
# }

Посмотрите историю транзакций:

bash
curl -H "Authorization: Bearer $TOKEN" \
  "https://api.xabarchi.live/api/auth/balance-history?page=1&limit=20"

Импорт контактов из Excel

Рабочий процесс

  1. Подготовьте Excel файл со столбцами: phoneNumber, name: phoneNumber, name
  2. Загрузите → POST /api/groups/:id/import
  3. Отслеживайте прогресс → GET /api/groups/import/:jobId

Формат Excel

phoneNumber name
+998901234567 John Doe
+998901234568 Jane Smith

Загрузите Excel файл:

bash
curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -F "file=@contacts.xlsx" \
  https://api.xabarchi.live/api/groups/group-123/import

# Response: {"jobId":"import-xyz","message":"Import started"}

Отслеживайте прогресс импорта:

bash
curl -H "Authorization: Bearer $TOKEN" \
  https://api.xabarchi.live/api/groups/import/import-xyz

# Response:
# {
#   "jobId":"import-xyz",
#   "status":"completed",
#   "totalRows":1000,
#   "importedCount":985,
#   "skippedCount":10,
#   "errorCount":5
# }