VerityVerity API
API Reference

Check prior authorization requirements

Evaluate if Medicare procedures require prior authorization based on procedure codes and state/jurisdiction. Returns matched policies, coverage disposition, and documentation requirements.

POST
/prior-auth/check

Authorization

bearerAuth
AuthorizationBearer <token>

API keys are prefixed with vrt_live_ for production or vrt_test_ for testing. Example: vrt_live_abc123xyz

In: header

Header Parameters

X-Idempotency-Key?string

Unique request identifier for safe retries (recommended)

Request Body

application/json

procedure_codes*array<>

CPT/HCPCS codes to check

Items1 <= items <= 10
diagnosis_codes?array<>

ICD-10 diagnosis codes for context

Itemsitems <= 10
state?string

Two-letter state code (determines MAC jurisdiction)

Length2 <= length <= 2
payer?string

Payer to check

Default"medicare"
Value in"medicare" | "aetna" | "uhc" | "all"
criteria_page?integer

Page number for criteria results

Default1
Range1 <= value
criteria_per_page?integer

Criteria items per page

Default25
Range1 <= value <= 100

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://verity.backworkai.com/api/v1/prior-auth/check" \  -H "Content-Type: application/json" \  -d '{    "procedure_codes": [      "76942",      "76937"    ]  }'
{
  "success": true,
  "data": {
    "pa_required": false,
    "confidence": "high",
    "reason": "All codes are covered without prior authorization",
    "matched_policies": [
      {
        "policy_id": "string",
        "title": "string",
        "policy_type": "string",
        "jurisdiction": "string",
        "codes": [
          {
            "code": "string",
            "code_system": "string",
            "disposition": "string",
            "condition_reference": "string"
          }
        ]
      }
    ],
    "negotiated_rates": {
      "property1": {
        "min_rate": "string",
        "max_rate": "string",
        "avg_rate": "string",
        "num_rates": 0,
        "payer": "string"
      },
      "property2": {
        "min_rate": "string",
        "max_rate": "string",
        "avg_rate": "string",
        "num_rates": 0,
        "payer": "string"
      }
    },
    "documentation_checklist": [
      "string"
    ],
    "criteria_details": {
      "indications": [
        {
          "text": "string",
          "tags": [
            "string"
          ],
          "policy_id": "string"
        }
      ],
      "limitations": [
        {
          "text": "string",
          "tags": [
            "string"
          ],
          "policy_id": "string"
        }
      ],
      "pagination": {
        "page": 0,
        "per_page": 0,
        "indications": {
          "total": 0,
          "total_pages": 0,
          "has_next": true,
          "has_previous": true
        },
        "limitations": {
          "total": 0,
          "total_pages": 0,
          "has_next": true,
          "has_previous": true
        },
        "documentation": {
          "total": 0,
          "total_pages": 0,
          "has_next": true,
          "has_previous": true
        }
      }
    },
    "mac": {
      "name": "string",
      "jurisdiction": "string",
      "states": [
        "string"
      ]
    }
  },
  "meta": {
    "idempotency_key": "string",
    "cached": true
  }
}
{
  "success": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Invalid query parameters",
    "hint": "Check the 'code' parameter format",
    "details": {}
  },
  "meta": {
    "request_id": "req_abc123"
  }
}
{
  "success": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Invalid query parameters",
    "hint": "Check the 'code' parameter format",
    "details": {}
  },
  "meta": {
    "request_id": "req_abc123"
  }
}
{
  "success": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Invalid query parameters",
    "hint": "Check the 'code' parameter format",
    "details": {}
  },
  "meta": {
    "request_id": "req_abc123"
  }
}