Skip to main content

Base URL

All endpoints are under /v1. v1 changes only by addition; see Versioning.

Authentication

Send your key as a Bearer token on every request except GET /v1/health and GET /v1/openapi.json:
See Authentication for key types, rotation and the errors you can get.

Endpoints

The operation ids are stable, so they are safe to use as method names in generated clients. The OpenAPI 3.1 document is at https://api.pinakelai.com/v1/openapi.json.

Requests

  • Query parameters are snake_case.
  • Several values of one parameter are combined with OR: repeat the parameter (status=registered&status=pending), or, for codes, enumerations and classes, separate them with commas (status=registered,pending). Different parameters are combined with AND.
  • Date ranges are <field>_date_from and <field>_date_to, inclusive, as YYYY-MM-DD.
  • Timestamps (the feed’s since) are RFC 3339 with Z or an offset.
  • Booleans are true or false; anything else is a 400.
  • Unknown parameters are rejected with 400, with a did-you-mean hint. They are never ignored.
  • Request bodies (batch retrieve only) are application/json, at most 64 KB.

Responses

Responses are JSON (application/json), UTF-8.
  • A single resource is a top-level object with an object field, such as "object": "trademark".
  • A list is an envelope:
  • Every field is always present. null means the value is not stated; arrays are never null.
  • Dates are YYYY-MM-DD; timestamps are UTC with microseconds and Z, such as 2026-11-10T09:02:13.512000Z.
  • Errors are application/problem+json documents; see Errors.

Status codes

The API never returns 504.

Headers

Request headers Response headers

CORS

Browsers may call the API only from https://docs.pinakelai.com, for this site’s playground. Call the API from your servers. GET /v1/health allows any origin.