PUT
/
public
/
v1
/
patient-plans
curl --request PUT \
  --url https://api.silnahealth.com/public/v1/patient-plans/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "member_number": "<string>",
  "group_number": null,
  "start_date": null,
  "end_date": null,
  "payor_entity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "insurance_type": null,
  "source_id": "<string>",
  "patient_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "plan_order_number": 123,
  "insurance_card_file_id": null,
  "insurance_card_back_file_id": null,
  "conflict_behavior": "REPLACE"
}'
{
  "patient_plan_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}

The default behavior of this API has destructive properties! If you have an existing primary plan for a patient and you create a new primary plan for the same patient, the existing primary plan will be deleted/archived and all in progress benefits check and prior authorizations will be withdrawn! If you want to protect against this behavior, we recommend setting conflict_behavior=RAISE_ERROR.

Behavior Overview

This API has two flows: update and create. We trigger the update flow if we find a plan for the input patient with a matching source_id or we determine the requested plan to be a duplicate. Else we trigger the create flow. Since all fields are immutable on the patient plan record except for the source_id, we will only update the source_id field in the case when we determine the patient plan to be a duplicate. This means that in the case of source_id match, this API will make no updates and will just return the found patient plan.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
Request schema for updating a patient plan

Request schema for updating a patient plan

member_number
string
required
Required string length: 2 - 80
payor_entity_id
string
required
source_id
string
required

Unique identifier for the patient plan. This is generated and supplied by API clients

patient_id
string
required
plan_order_number
integer
required

The order number of the plan (1 for primary, 2 for secondary, etc)

group_number
string | null
Required string length: 2 - 80
start_date
string | null
end_date
string | null
insurance_type
enum<string>

The type of insurance

Available options:
COMMERCIAL,
MEDICARE,
MEDICAID,
REGIONAL_CENTER,
WORKERS_COMPENSATION,
AUTO_INSURANCE
insurance_card_file_id
string | null

The file ID corresponding to the front of the insurance card

insurance_card_back_file_id
string | null

The file ID corresponding to the back of the insurance card

conflict_behavior
enum<string>

The behavior to take when there is a conflict with an existing patient plan.REPLACE will replace the existing plan (this will halt all in progress benefits checks and prior authorizations for the plan). RAISE_ERROR will raise an error if there is a conflict. The default behavior is REPLACE

Available options:
RAISE_ERROR,
REPLACE

Response

200
application/json
Response schema for creating a patient plan

Response schema for creating a patient plan

patient_plan_id
string
required