API referenceSchema Inboxes

Get an inbox's extraction contract

Returns the extraction contract attached to the inbox, including its schema map, the onValidationError policy (quarantine or passthrough), any extractionHint, and createdAt/updatedAt timestamps.

Endpoint
GET https://api.dairo.app/v1/inboxes/{inbox}/schema

Returns the extraction contract attached to the inbox, including its schema map, the onValidationError policy (quarantine or passthrough), any extractionHint, and createdAt/updatedAt timestamps. The {inbox} path segment accepts either the inbox UUID or its full address (e.g. agent@dairo.app); a value containing @ is resolved by address, otherwise by id. Requires the inboxes:read scope. An inbox outside your active organization returns 404, and an owned inbox that has no contract attached also returns 404 — a distinct No schema attached to this inbox case you can treat as passthrough delivery.

Scope: inboxes:read. Send the API key as a bearer token; Scopes lists what each one reaches.

Request

cURL
curl "https://api.dairo.app/v1/inboxes/support/schema" \
  -H "Authorization: Bearer $DAIRO_API_KEY"

Path parameters

NameTypeRequiredDescription
inboxstringyesInbox UUID or full address (e.g. agent@dairo.app).

Response

200 Success. Body: application/json, InboxSchemaResponse.

FieldTypeRequiredDescription
inboxIdstring (uuid)yes
schemaInboxSchemaContractyes
onValidationError"quarantine", "passthrough"yes
extractionHintstring or nullno
createdAtstring (date-time)no
updatedAtstring (date-time)no
200
{
  "inboxId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "schema": {},
  "onValidationError": "quarantine",
  "extractionHint": null,
  "createdAt": "2026-10-19T09:30:00Z",
  "updatedAt": "2026-10-19T09:30:00Z"
}

Errors

Every error has the same body, {"error": {"type", "code", "message", "param"}}; branch on code. Errors lists every code.

StatusMeaning
400The request is malformed or a value is invalid (invalid_request, invalid_domain, idempotency_key_mismatch).
401The API key is missing or invalid.
403The key lacks the scope this endpoint needs (scope_missing) or may not do this (not_permitted).
404No such resource in this account (resource_not_found).
422The request is well-formed but a field failed validation (validation_failed).
429Rate limit, plan limit, budget or spend cap reached (rate_limited, plan_limit_reached, budget_exceeded, spend_cap_reached).
500An unexpected error; retry with backoff, then contact support (internal_error).

On this page