Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.trycollate.ai/llms.txt

Use this file to discover all available pages before exploring further.

When you create an authorization with policy.finalSubmission = requires_confirmation, Collate prepares the payer submission internally and pauses at the final boundary. The authorization exposes nextAction.type = approve_submission and a submission.reviewSnapshot describing the package. You review the snapshot and confirm before Collate submits. This page covers when the snapshot appears, what it contains, how to render it, and how to recover when it goes stale.

When approval is required

The authorization exposes approve_submission only when:
  • policy.finalSubmission = requires_confirmation was selected at create time,
  • Collate has finished requirement collection and submission preparation, and
  • the current case version is ready to be sent to the payer.
If policy.finalSubmission = automatic, Collate submits without pausing here and approve_submission is never produced.

The review snapshot

submission.reviewSnapshot is an embedded projection on the authorization:
{
  "id": "rev_123",
  "status": "current",
  "kind": "final_submission",
  "generatedAt": "2026-05-05T00:15:00Z",
  "covers": {
    "authorizationVersion": 17,
    "requirementsVersion": 4,
    "questionnaireResponseVersion": 8,
    "attachmentVersion": 2
  },
  "summary": { "...": "..." },
  "questionnaireResponse": { "item": [] },
  "attachments": [],
  "warnings": [],
  "liveViewUrl": null
}
FieldMeaning
idStable snapshot ID.
statuscurrent snapshots can be approved. Stale snapshots cannot.
kindfinal_submission for the payer-submission boundary.
generatedAtWhen Collate built the snapshot.
coversAuthorization, requirements, answer-set, and attachment versions the snapshot represents.
summaryStructured payload to render in your reviewer UI.
questionnaireResponseAnswer set in the snapshot.
attachmentsFiles in the snapshot.
warningsSoft warnings to surface to the reviewer.
liveViewUrlEmbedded browser view URL when browser sign-in is active.
Render summary, questionnaireResponse, attachments, and warnings in your reviewer UI. Surface anything in warnings prominently — these are not errors, but they are issues Collate wants the reviewer to confirm before final submission.

Approving the submission

When status = requires_confirmation and nextAction.type = approve_submission, send the current nextAction.id to POST /confirm:
POST /v1/prior-auth/authorizations/auth_123/confirm
If-Match: "17"
Idempotency-Key: approve-auth-123-17
Content-Type: application/json

{ "nextActionId": "nact_456" }
The response is the updated authorization. Confirmation accepts the snapshot and lets Collate cross the final payer-submission boundary. Final submission is irreversible.

Stale snapshots

Answer or attachment writes recompute requirements and may produce a new review snapshot. Approving a snapshot that no longer covers the current authorization returns 409 review_stale. To recover:
1

Read the latest authorization

Retrieve the authorization to pick up the current version, nextAction, and submission.reviewSnapshot.
2

Render the new snapshot

Show the reviewer the updated summary, questionnaireResponse, attachments, and warnings.
3

Confirm with the current next-action ID

Send the new nextAction.id to POST /confirm with a fresh If-Match.

Browser sign-in

If the route is configured for portalAuthMode = customer_login, Collate needs an authenticated session it cannot complete on its own. The snapshot includes liveViewUrl — embed this URL in your reviewer UI to show the live browser view while the reviewer approves.