Skip to main content

Request Format

All requests use JSON and require these headers:
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY

Successful Responses

Response shapes vary by endpoint, each following its own API spec:
  • Chat Completions — OpenAI standard response format
  • Claude Messages — Anthropic standard response format
  • Gemini — Google standard response format
  • Asynchronous Tasks — QWave API unified task response format

Billing Field (usage.cost)

Text and embedding endpoints return the actual charge of each call (quota, integer) in the usage object:
{
  "usage": {
    "prompt_tokens": 12,
    "completion_tokens": 8,
    "total_tokens": 20,
    "cost": 150
  }
}
  • Non-streamingusage.cost in the response body
  • Streaming (SSE) → the last data frame carrying usage (see Streaming)
  • Async taskspre_consumed_cost on submission (pre-deduction), cost in the terminal state (settlement; 0 after refund on failure/cancellation)
For per-call reconciliation, the accumulated value of these fields matches your account balance deductions exactly.

Error Responses

Error structures differ slightly across endpoints: Synchronous endpoints (chat / messages / images, etc.) — OpenAI-compatible format with a type field:
{
  "error": {
    "message": "Detailed error description",
    "type": "invalid_request_error",
    "code": "invalid_request"
  }
}
Asynchronous task endpoints (/v1/tasks/...) — Simplified format with only message + code:
{
  "error": {
    "message": "Detailed error description",
    "code": "task_failed"
  }
}

Status Codes

CodeMeaningHow to Handle
400Invalid request parametersCheck the request payload
401Authentication failedVerify your API key
402Insufficient balanceTop up your account
404Task or resource not foundVerify the task_id and that it belongs to your account
429Rate limit exceeded / sliding-window quota exhausted (code: quota_window_exceeded, response includes window/used/cap/reset_at)Reduce frequency or retry after reset_at
500Internal server errorRetry later