Skip to main content

Sync parse

Default when blob size is under server PARSE_SYNC_MAX_BYTES. Supported types depend on stored Content-Type (PDF, DOCX, CSV, XLSX). Counts toward parse_ops quotas. Per-minute parse rate limits by tier (429 PARSE_RATE_LIMIT).

Async parse

202 queued when async is enabled and the host has QStash configured. Optional callback_url: HTTPS with publicly resolvable host (validated server-side). Body optional for sync.

Poll status

Returns status, structured result when complete, or error message on failure.

Callback delivery audit

Lists persisted HTTP attempts for the async parse callback (newest first): attempt_number, status (success / failed), http_status, last_error, created_at. Same 404 / BLOB_NOT_FOUND rules as poll when the parse is not yours.

Replay callback (optional)

Re-sends the successful-parse callback (same JSON + HMAC as the worker). Requires parse complete, HTTPS callback_url, and result present. 403 CALLBACK_REPLAY_DISABLED when the host has not enabled replay; 422 if preconditions fail; 429 CALLBACK_REPLAY_RATE_LIMIT (per-minute cap).

Errors

Common codes: PARSE_TOO_LARGE_SYNC, PARSE_UNSUPPORTED_TYPE, PARSE_QUOTA_EXCEEDED, PARSE_RATE_LIMIT, PARSE_ASYNC_DISABLED, BLOB_NOT_FOUND, CALLBACK_REPLAY_DISABLED, CALLBACK_REPLAY_RATE_LIMIT, PARSE_NOT_COMPLETE, PARSE_CALLBACK_URL_MISSING, PARSE_RESULT_MISSING.

MCP

  • GET https://lithtrix.ai/mcp/lithtrix-blob-parse.json
  • GET https://lithtrix.ai/mcp/lithtrix-blob-parse-status.json