API Reference / Account

GET/v1/usage

Lists your detection, enrollment and verification requests with their outcome and the credits they used, newest first. Filter by operation or status; page with limit and cursor. Requires scope usage:read.

Authentication

Send your API key as Authorization: Bearer <your API key>.

Headers

NameTypeDetails
Authorizationrequiredstring

Bearer <your API key>. Keys are created in the dashboard; see Authentication.

Query parameters

NameTypeDetails
limitoptionalinteger

How many entries to return (1-100).

1 to 100default 20

cursoroptionalstring or null

next_cursor from the previous page.

at most 256 characters

operationoptionalstring or null

Only this kind of request.

statusoptionalstring or null

Only requests with this outcome.

Response

200 Success.

  • request_idstringrequired
  • objectstringrequired

    always "list"

  • dataarray of objectrequired
    12 fields in data
    • idstringrequired
    • operation_idstring or nullrequired
    • typestringrequired

      One of: deepfake.detect, speaker.enroll, speaker.verify

    • sourcestringrequired

      One of: api, dashboard, mcp

    • statusstringrequired

      One of: succeeded, rejected, failed, replayed

    • http_statusintegerrequired
    • error_codestring or nullrequired
    • credits_chargedintegerrequired
    • duration_secondsnumber or nullrequired
    • latency_msnumber or nullrequired
    • request_idstringrequired
    • created_atstringrequired
  • has_morebooleanrequired
  • next_cursorstring or nullrequired

Example response

JSON
{
  "request_id": "req_8f14e45fceea167a5a36dedd",
  "object": "list",
  "data": [
    {
      "id": "use_812",
      "operation_id": "op_6f1ed002ab5595859014ebf0951522d9",
      "type": "deepfake.detect",
      "source": "api",
      "status": "succeeded",
      "http_status": 200,
      "duration_seconds": 6.4,
      "request_id": "req_8f14e45fceea167a5a36dedd",
      "created_at": "2026-10-13T09:30:00Z"
    }
  ],
  "has_more": true,
  "next_cursor": "eyJ0IjoiMjAyNi0xMC0xM1QwOTozMDowMFoiLCJpIjo4MTJ9"
}

Errors

StatusMeaning
400

The request is invalid, for example a missing or malformed field.

401

The API key is missing, invalid or revoked.

403

The key lacks the required scope, the email address is not verified, or the account is suspended.

429

Too many requests or too many operations at the same time. Wait for the number of seconds in Retry-After.

500

Something went wrong on our side. No credits were used.

Error bodies share one shape with a stable error.code; see Errors for every code and how to fix it.

Code samples

cURL
curl "https://platform.detectif.ai/v1/usage" \
  -H "Authorization: Bearer $DETECTIF_API_KEY"