---
title: "Review and queue multiple insurances for writeback"
method: POST
path: "/insurances/writeback"
tags: ["insurances"]
---

# Review and queue multiple insurances for writeback

`POST /insurances/writeback`

Bulk sets the staff review status across multiple insurances. The new review status is only applied to insurances whose current review status is `pending` or unset.

## Request body

- object
  - `insuranceIds` string[], required — IDs of the insurances to review.
  - `staffReview` boolean — When true, the new review status is `pending`; when false, `ignored`.

## Response `200`

The updated insurances

- InsuranceResponse[]
  - `_id` string — Luma's internal ID of an object.
  - `user` string — The ID of the root account user.
  - `deleted` 0 | 1 — Flag for logical deletion where 1 means deleted.
  - `createdBy` string — The ID of the user who created this object.
  - `updatedBy` string — The ID of the user who updated this object.
  - `createdAt` string, date-time — The date/time when this object was created.
  - `updatedAt` string, date-time — The date/time when this object was updated.
  - `planName` string — Name of the insurance plan.
  - `memberName` string — The person's name as printed on the insurance card.
  - `memberNumber` string — The subscriber's ID number on the insurance card.
  - `subscriber` object — The subscriber of the insurance plan, if different from the patient.
    - `firstname` string
    - `lastname` string
    - `dateOfBirth` object
      - `year` integer
      - `month` integer
      - `day` integer
  - `insuranceGroupName` string — Group name or code printed on the insurance card.
  - `url` string — URL of the front-of-card image.
  - `urlBack` string — URL of the back-of-card image.
  - `fileUpload` string — ID of the FileUpload for the front-of-card image.
  - `fileUploadBack` string — ID of the FileUpload for the back-of-card image.
  - `active` boolean — Whether this insurance is currently active for the patient.
  - `status` 'archived' | 'active' | 'cancelled' | 'draft' | 'entered-in-error' — Lifecycle status of the insurance record, aligned with the HL7 FHIR fm-status value set.
  - `patient` string — ID of the patient this insurance belongs to.
  - `relationshipToSubscriber` object — The patient's relationship to the subscriber, per the HL7 subscriber relationship code set.
    - `code` string
    - `label` string
  - `externalId` object — External identifier for this insurance in an integrated EHR.
    - `source` string
    - `value` string
  - `payerId` string — The payer identifier, as required by third-party eligibility/verification APIs.
  - `payerName` string — The payer's display name.
  - `payor` string — ID of the InsurancePayor this insurance's payer is matched to.
  - `dependentId` string — The patient's dependent identification string, if the patient is a dependent of the subscriber.
  - `startDate` string, date-time
  - `endDate` string, date-time
  - `primary` boolean — Whether this is the patient's primary insurance. Only one insurance per patient can be primary.
  - `integratorStatus` 'success' | 'pending' | 'failed' | 'skipped' — Status of writing this insurance back to the EHR integrator.
  - `integratorResults` object — The results of the last writeback attempt to the integrator.
    - `message` string
    - `lastAttemptedAt` string, date-time
    - `lastSuccess` string, date-time
  - `source` 'sync' | 'patient' | 'staff' — How this insurance was created.
  - `staffReview` object — Staff review status for this insurance, used before writing it back to the integrator.
    - `reviewedBy` string
    - `reviewedAt` string, date-time
    - `reviewStatus` 'ignored' | 'pending' | 'approved'
  - `lastSyncedAt` string, date-time — When this insurance was last synced from the integrator.
  - `verification` object — The most recent eligibility verification result for this insurance.
    - `status` 'unknown' | 'active' | 'inactive' | 'failed'
    - `updatedAt` string, date-time
    - `requestedBy` string
    - `refId` string — ID of the related InsuranceVerification record.
    - `errorReason` string

## Other responses

- `400` — Invalid insuranceIds
- `401` — Not authenticated
- `403` — Access token does not have the required scope

---

[API](https://skmtc.net/lumahealth/apis/rest-service.md) · [All operations](https://skmtc.net/lumahealth/apis/rest-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lumahealth/rest-service/revisions/d3c75c2a2f1d/schema)
