How It Works
- Create a run using the POST endpoint, passing the patient ID.
- Poll for results using the GET endpoint with the returned run ID. Results are typically fast.
- Inspect detections once the run status is
COMPLETE. Each detection tells you whether coverage was found, and if so, with which payor.
Understanding Results
Each detection in the response has two key fields that work together:status and confidence_level.
Confidence Levels
confidence_level is a high-level summary that tells you how to act on the result:
| Confidence Level | Meaning | Action |
|---|---|---|
COVERAGE_FOUND | Confirmed active coverage with a known payor and member number | Actionable. Create a patient plan using the Patient Plan API. |
POTENTIAL_COVERAGE | Coverage was found but something is missing (e.g., no member number or unknown payor) | Review recommended. You may need to obtain additional information before creating a plan. |
NO_COVERAGE | No actionable coverage was found | No action needed. |
Detailed Statuses
status provides a more specific explanation for each detection. Each status maps to one of the confidence levels above:
COVERAGE_FOUND:
ACTIVE_PLAN— An active plan was found for this patient with a known payor and member number.
ACTIVE_PLAN_NO_MEMBER_NUMBER— A plan was found but no member number was returned. The plan may still be valid, but you will need to obtain the member number before creating a patient plan.ACTIVE_PLAN_OTHER_PAYOR— A plan was found, but the detected payor could not be identified. Thedetected_payor_entity_idanddetected_payor_entity_namefields will be empty.
NO_ACTIVE_PLAN— No active plan was found for this patient with this payor.ACTIVE_PLAN_EXPIRED— A plan was found but it has already expired.ACTIVE_PLAN_DENTAL_OR_VISION— A plan was found but it is a dental or vision plan, not medical.ACTIVE_PLAN_RELATED_PAYOR— A plan was found, but the patient already has an existing plan with a related payor (e.g., a subsidiary or parent organization of the same payor family).ACTIVE_PLAN_MEDICAID_DUPLICATE— A Medicaid plan was found, but the patient already has an active Medicaid plan on file.
Queried Payor vs Detected Payor
Each detection includes both a queried payor and a detected payor. Understanding the difference is important:- Queried payor (
queried_payor_entity_id,queried_payor_entity_name) — The payor that Silna asked about the patient’s coverage. This is informational. - Detected payor (
detected_payor_entity_id,detected_payor_entity_name) — The payor that actually covers the patient. This is the payor you care about. The detected payor may differ from the queried payor. For example, querying a large national payor may reveal that the patient’s plan is actually administered by a regional subsidiary.
detected_payor_entity_id.
Other Payors (Coordination of Benefits)
Theother_payors field lists additional payors identified in the response. If present, this indicates the patient may have
coordination of benefits with other insurance. The names in this field are raw strings from the eligibility response and may not
match Silna payor entity names exactly, but they can be a useful signal that the patient has additional coverage worth investigating.
Patient Identity Confirmation
Each detection returnspatient_first_name, patient_last_name, and patient_date_of_birth as reported by the payor.
These fields are useful for confirming that the correct patient was matched during the eligibility check.
Creating a Patient Plan from a Detection
When you find a detection withconfidence_level of COVERAGE_FOUND, you have everything you need to create a patient plan:
- Use the
detected_payor_entity_idas the payor for the plan - Use the
member_numberas the member/subscriber number - Call the Create Patient Plan API with these details