История транзакций
Пагинированная история всех транзакций баланса: пополнения, списания за API, бонусы, возвраты.
Authorization
AuthorizationRequiredBearer <token>API ключ для аутентификации. Передавайте в заголовке Authorization: Bearer sk-...
In: header
Query Parameters
limitintegerКоличество записей на страницу
20Minimum: 1Maximum: 100offsetintegerСмещение
0Minimum: 0typestringФильтр по типу: credit (пополнение) или debit (списание)
"credit" | "debit"reasonstringФильтр по причине транзакции
"payment" | "api_usage" | "registration_bonus" | "verification_bonus" | "bonus_expired" | "refund"Response Body
Список транзакций
successbooleandataobjectОшибка валидации запроса. Тело запроса не соответствует схеме или содержит невалидные значения.
Поле errors содержит детализацию по каждому невалидному полю.
successRequiredbooleanerrorRequiredobjecterrorsarray<object>Детализация ошибок валидации (при code=VALIDATION_ERROR)
Ошибка аутентификации.
| Код | Причина | Что делать |
|---|---|---|
MISSING_API_KEY | Заголовок Authorization отсутствует | Добавьте Authorization: Bearer sk-... |
INVALID_AUTH_FORMAT | Неверный формат заголовка | Используйте формат Bearer sk-... |
INVALID_API_KEY | Ключ не найден в системе | Проверьте ключ в личном кабинете |
API_KEY_INACTIVE | Ключ деактивирован | Активируйте ключ в личном кабинете |
API_KEY_EXPIRED | Срок действия ключа истёк | Создайте новый ключ |
successRequiredbooleanerrorRequiredobjecterrorsarray<object>Детализация ошибок валидации (при code=VALIDATION_ERROR)
Превышен лимит запросов для вашего тарифа. Повторите запрос через время, указанное в заголовке Retry-After.
Лимиты зависят от тарифа (см. раздел Тарифы в личном кабинете).
successRequiredbooleanerrorRequiredobjecterrorsarray<object>Детализация ошибок валидации (при code=VALIDATION_ERROR)
curl -X GET "/api/v1/billing/transactions?limit=20&offset=0&type=credit&reason=payment&from=2019-08-24T14%3A15%3A22Z&to=2019-08-24T14%3A15%3A22Z" \
-H "Authorization: Bearer <token>"fetch("/api/v1/billing/transactions?limit=20&offset=0&type=credit&reason=payment&from=2019-08-24T14%3A15%3A22Z&to=2019-08-24T14%3A15%3A22Z", {
headers: {
"Authorization": "Bearer <token>"
}
})package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "/api/v1/billing/transactions?limit=20&offset=0&type=credit&reason=payment&from=2019-08-24T14%3A15%3A22Z&to=2019-08-24T14%3A15%3A22Z"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}import requests
url = "/api/v1/billing/transactions?limit=20&offset=0&type=credit&reason=payment&from=2019-08-24T14%3A15%3A22Z&to=2019-08-24T14%3A15%3A22Z"
response = requests.request("GET", url, headers = {
"Authorization": "Bearer <token>"
})
print(response.text){
"success": true,
"data": {
"transactions": [
{
"id": 1234,
"amount": "150.00",
"type": "debit",
"balance_type": "real",
"reason": "api_usage",
"description": "API: transcription_priority (3 × 6₽)",
"reference_id": "task_abc123",
"balance_before": "15380.50",
"balance_after": "15230.50",
"created_at": "2019-08-24T14:15:22Z"
}
],
"pagination": {
"total": 156,
"limit": 20,
"offset": 0
}
}
}{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid request body"
},
"errors": [
{
"field": "url",
"message": "Укажите url или input"
}
]
}{
"success": false,
"error": {
"code": "MISSING_API_KEY",
"message": "API key is required. Pass it in Authorization header: Bearer sk-..."
}
}{
"success": false,
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "Rate limit exceeded. Try again in 12 seconds"
}
}