Skip to main content

Status codes

Every error returns the same JSON envelope: an error object with a type, a machine-readable code, a human-readable message, and (on validation errors) the offending param.

Retries and backoff

Retry 429 and 5xx responses with exponential backoff. Do not retry 4xx other than 429 — fix the request instead.

Rate limits

Limits apply per workspace to keep the platform stable. If you exceed them you get a 429; slow down and retry with backoff. For sustained high-volume workloads (large batch pipelines), keep concurrency bounded and space out your calls. If you expect to run well beyond normal usage, contact support@phylo.bio so we can make sure your workspace is provisioned for it.

Key lifecycle errors

  • 401 right after creating a key — confirm you copied the full API key (it’s shown only once) and sent it as Authorization: Bearer <your-api-key>.
  • 401 on a previously working key — it may have been revoked or expired. Create a new key and update your integration.