Bills API

Extract report suggestions

Extract review-only bill suggestions from one report PDF without saving or submitting a bill.

POSThttps://app.mindbill.org/partner/v2/report-autofill

Offer optional report-assisted entry after written agreement and operator provisioning of the organization's reportAutofill capability.

AuthenticationServer API key or browser session + Origin
Permissions by credentialServer: operator credential with autofill:write · Browser: explicitly delegated autofill:run
IdempotencyNot required

Use this URL with a server API key or a browser session and its exact allowed Origin. Both credentials use the same request and response contract. See the component API inventory for exact paths and SDK methods.

Request body

FieldTypeDescription
reportRequired
file (multipart/form-data)

Exactly one non-empty, unencrypted PDF. Do not send JSON or additional multipart fields.

1–100 pages; at most 25 MiB

Examples

Extract a synthetic report
curl https://app.mindbill.org/partner/v2/report-autofill \
  --header "Authorization: Bearer $MINDBILL_API_KEY" \
  --form 'report=@synthetic-report.pdf;type=application/pdf'

Response

200 OK

Response
{
  "data": {
    "model": "gpt-5.6-luna",
    "requiresReview": true,
    "fields": [
      {
        "key": "dos",
        "value": "2026-09-01",
        "sourceText": "Date of service: September 1, 2026",
        "confidence": "high"
      }
    ],
    "matches": {
      "patient": {
        "status": "none",
        "candidates": []
      },
      "billingProvider": {
        "status": "none",
        "candidates": []
      },
      "renderingProvider": {
        "status": "none",
        "candidates": []
      },
      "serviceLocation": {
        "status": "none",
        "candidates": []
      }
    },
    "warnings": []
  }
}
FieldTypeDescription
data.modelRequired
"gpt-5.6-luna"

Extraction model.

data.requiresReviewRequired
true

Every suggestion requires human review before applying it.

data.fieldsRequired
ReportField[]

Explicitly supported report facts; missing or uncertain values are omitted.

data.fields[].keyRequired
string

patientFirstName, patientLastName, dob, claimNumber, doi, adjNumber, employer, dos, bodyParts, dxCode, renderingProvider, claimsAdminName, evaluationLocation, addressLine, city, state, zip, billingProvider, billingProviderNpi, or renderingProviderNpi.

data.fields[].valueRequired
string

Suggested value. Dates use real YYYY-MM-DD calendar dates. Address fields describe the patient, not the service facility.

data.fields[].sourceTextRequired
string

Source excerpt to display during review.

data.fields[].confidenceRequired
"high" | "medium"

Extraction confidence; does not replace human review.

data.matchesRequired
object

patient, billingProvider, renderingProvider, and serviceLocation match results.

data.matches.*.statusRequired
"matched" | "ambiguous" | "none"

Whether existing authorized records provide a unique, ambiguous, or absent match.

data.matches.*.candidatesRequired
{ id: string; name: string }[]

Authorized saved-record candidates.

data.matches.*.selectedId
string

Present only for a unique match. Do not replace existing form selections automatically.

data.warningsRequired
string[]

Issues that must remain visible during review.