Skip to main content
POST
/
v1
/
prior-auth
/
authorizations
/
{authorization_id}
/
confirm
Confirm an authorization
curl --request POST \
  --url https://api.sandbox.trycollate.ai/v1/prior-auth/authorizations/{authorization_id}/confirm \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --header 'If-Match: <if-match>' \
  --data '
{
  "nextActionId": "<string>"
}
'
{
  "id": "<string>",
  "version": 123,
  "status": "requires_input",
  "policy": {
    "finalSubmission": "automatic"
  },
  "providerNpi": "<string>",
  "payer": {
    "id": "<string>",
    "displayName": "<string>",
    "supportedStates": [
      "<string>"
    ],
    "supportedServiceTypes": [
      "inpatient"
    ],
    "aliases": [
      "<string>"
    ],
    "status": "<string>",
    "brand": "<string>",
    "lineOfBusiness": "<string>"
  },
  "templateSelection": {
    "payerId": "<string>",
    "insuranceState": "<string>",
    "serviceType": "inpatient",
    "serviceCode": "<string>",
    "serviceCodeSystem": "hcpcs"
  },
  "questionnaire": [
    {
      "id": "<string>",
      "title": "<string>",
      "items": [
        {
          "linkId": "<string>",
          "text": "<string>",
          "required": false,
          "answerType": "string",
          "options": [
            {
              "code": "<string>",
              "display": "<string>"
            }
          ],
          "pattern": "<string>",
          "maxLength": 123,
          "min": "<string>",
          "max": "<string>",
          "errorMessage": "<string>",
          "mode": "<string>",
          "defaultValue": {},
          "requiredWhen": {},
          "notAllowedWhen": {},
          "valuesWhen": {},
          "textWhen": {}
        }
      ]
    }
  ],
  "questionnaireResponse": {
    "item": [
      {
        "linkId": "<string>",
        "answer": [
          {
            "valueString": "<string>",
            "valueBoolean": true,
            "valueDate": "<string>",
            "valueDecimal": 123,
            "valueCoding": {
              "code": "<string>"
            }
          }
        ]
      }
    ]
  },
  "requirements": {
    "version": 123,
    "questions": [
      {
        "linkId": "<string>",
        "message": "<string>"
      }
    ],
    "documents": [
      {
        "type": "<string>",
        "message": "<string>"
      }
    ],
    "issues": [
      {
        "code": "<string>",
        "message": "<string>",
        "field": "<string>",
        "severity": "error"
      }
    ]
  },
  "submission": {
    "reviewSnapshot": {
      "id": "<string>",
      "generatedAt": "2023-11-07T05:31:56Z",
      "covers": {
        "authorizationVersion": 123,
        "requirementsVersion": 123,
        "questionnaireResponseVersion": 123,
        "attachmentVersion": 123
      },
      "status": "current",
      "kind": "final_submission",
      "summary": {},
      "questionnaireResponse": {
        "item": [
          {
            "linkId": "<string>",
            "answer": [
              {
                "valueString": "<string>",
                "valueBoolean": true,
                "valueDate": "<string>",
                "valueDecimal": 123,
                "valueCoding": {
                  "code": "<string>"
                }
              }
            ]
          }
        ]
      },
      "attachments": [
        {
          "id": "<string>",
          "fileId": "<string>",
          "createdAt": "2023-11-07T05:31:56Z",
          "documentTypes": [
            "<string>"
          ],
          "label": "<string>",
          "description": "<string>"
        }
      ],
      "warnings": [
        "<string>"
      ],
      "liveViewUrl": "<string>"
    },
    "payerReceipt": {
      "receivedAt": "2023-11-07T05:31:56Z",
      "referenceNumber": "<string>",
      "channel": "<string>",
      "payerStatusText": "<string>",
      "details": {}
    },
    "decision": {
      "receivedAt": "2023-11-07T05:31:56Z",
      "authorizationNumber": "<string>",
      "payerStatusText": "<string>",
      "effectiveFrom": "2023-11-07T05:31:56Z",
      "effectiveTo": "2023-11-07T05:31:56Z",
      "modifications": [
        "<string>"
      ],
      "denialReasons": [
        "<string>"
      ],
      "details": {}
    }
  },
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "outcome": "approved",
  "portalAuthMode": "automated",
  "attachments": [
    {
      "id": "<string>",
      "fileId": "<string>",
      "createdAt": "2023-11-07T05:31:56Z",
      "documentTypes": [
        "<string>"
      ],
      "label": "<string>",
      "description": "<string>"
    }
  ],
  "nextAction": {
    "id": "<string>",
    "type": "provide_requirements",
    "description": "<string>",
    "authorizationVersion": 123,
    "requirementsVersion": 123,
    "createdAt": "2023-11-07T05:31:56Z",
    "owner": "customer",
    "reviewSnapshotId": "<string>",
    "expiresAt": "2023-11-07T05:31:56Z"
  },
  "completedAt": "2023-11-07T05:31:56Z",
  "canceledAt": "2023-11-07T05:31:56Z"
}

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.

Send the current nextAction.id. Stale or missing IDs are rejected with 409 next_action_mismatch or 409 next_action_required. Confirming advance_case lets Collate continue discovery, filling, validation, or submission preparation from the current snapshot. The authorization transitions to processing. Confirming approve_submission accepts the current submission.reviewSnapshot and lets Collate cross the final payer-submission boundary. Final approval is irreversible. If the snapshot no longer covers the current authorization, the request is rejected with 409 review_stale. Do not call this endpoint to resolve provide_requirements. Resolve that action by patching answers or attaching files. See Authorization lifecycle for the full transition model.

Returns

Returns the accepted authorization. The response does not wait for portal work, payer receipt, or a payer decision.

Authorizations

Authorization
string
header
default:your-api-key
required

API key passed as Authorization: Bearer <API_KEY>.

Headers

If-Match
string
required

Current authorization version as a quoted entity tag, for example "17". Required on mutable authorization operations to prevent overwriting concurrent changes.

Idempotency-Key
string
required

Unique key used to retry command requests safely. Reusing the same key with a different request body returns 409 idempotency_key_reused.

Path Parameters

authorization_id
string
required

Authorization ID returned by POST /v1/prior-auth/authorizations.

Body

application/json
nextActionId
string
required

Current confirmable nextAction.id from the authorization snapshot.

Response

Successful Response

id
string
required

Stable authorization ID.

version
integer
required

Optimistic-concurrency version for mutable operations.

status
enum<string>
required

Current lifecycle status.

Available options:
requires_input,
requires_confirmation,
processing,
waiting_on_payer,
completed,
canceled
policy
AuthorizationPolicy · object
required

Authorization policy selected at create time.

providerNpi
string
required

Tenant-scoped provider NPI for the case.

payer
Payer · object
required

Canonical payer destination for the case.

templateSelection
TemplateSelection · object
required

Pinned route and service-code selection used for the authorization.

questionnaire
QuestionnaireGroup · object[]
required

Full current editable question surface.

questionnaireResponse
QuestionnaireResponse · object
required

Current normalized answer set.

requirements
Requirements · object
required

Current unresolved blocker set.

submission
AuthorizationSubmission · object
required

Submission review, receipt, and decision projections.

createdAt
string<date-time>
required

Time when the authorization was created.

updatedAt
string<date-time>
required

Time when the authorization last changed.

outcome
enum<string> | null

Terminal outcome when status = completed.

Available options:
approved,
denied,
modified,
not_required,
failed
portalAuthMode
enum<string>
default:automated

How Collate should access the payer portal for this route.

Available options:
automated,
customer_login
attachments
AuthorizationAttachment · object[]

Supporting documents linked to the authorization.

nextAction
AuthorizationNextAction · object

Current action, when one is open.

completedAt
string<date-time> | null

Time when the authorization reached completed.

canceledAt
string<date-time> | null

Time when the authorization reached canceled.