Skip to main content
The GetQR API is in beta and is available to selected workspaces. Details may change before the general release.
The GetQR API uses standard HTTP status codes. Successful requests return 2xx. Failed requests return 4xx or 5xx with a JSON body that explains what went wrong.

Error format

Every error has the same shape: a stable code, a human-readable message and a link to that code’s description.
string
required
Stable, machine-readable error code. Use it in your code instead of the message. See Error codes.
string
required
Human-readable description of the problem. The wording can change.
string
required
Link to the description of the error code in the API documentation in your GetQR account.

Error codes

Validation errors

When the body or query parameters fail validation, the API answers 422. The message describes the first invalid field as <issue>: <field>: <details>:
Nested fields use dot notation, for example link.url.

Handle errors

  • Branch on error.code, not on error.message.
  • Don’t retry 4xx errors unchanged: fix the request first. The exceptions are a 409 for a request still in progress and 429.
  • On 429, wait for the number of seconds in the Retry-After header. See Rate limits.
  • Retry 5xx errors with exponential backoff.

Common issues

The API is in beta and isn’t enabled for your workspace yet.
The path is wrong. Check it against the endpoint pages, and that it starts with /api/v1/.
The workspace owner’s subscription has ended. The API key works again as soon as the owner resubscribes.
Your role in the workspace is viewer. Only the workspace owner and editors can use the API.

What’s next

Rate limits

Authentication