Get Payor Inference
curl --request GET \
--url https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "COMPLETED",
"inference_result": null
}{
"message": "<string>",
"type": "AUTH_INVALID_REQUEST_HEADER"
}{
"message": "<string>"
}{
"message": "<string>"
}Payor Inference
Get Payor Inference
GET
/
public
/
v1
/
payor_inference
/
{payor_inference_id}
Get Payor Inference
curl --request GET \
--url https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.silnahealth.com/api/public/v1/payor_inference/{payor_inference_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "COMPLETED",
"inference_result": null
}{
"message": "<string>",
"type": "AUTH_INVALID_REQUEST_HEADER"
}{
"message": "<string>"
}{
"message": "<string>"
}The request is complete once status is
COMPLETED or FAILED. A COMPLETED status is returned
even when Silna is unable to determine patient or payor information. A FAILED status indicates an
issue on Silna’s end — we recommend contacting us or retrying the request.
When the request is complete, the response includes the inference_result field with an array of
individuals and their plans. If you submit a document with multiple individuals (e.g., an insurance card
listing each family member), each individual is returned with their respective plans.
Confirmation
When you use theBASE or CONFIRMATION strategy, each plan includes a confirmation object showing whether the
payor recognized the plan. See the Payor Inference Overview
for an explanation of the confirmation fields.
When confirmation is null, no confirmation was performed. Proceed with creating the patient plan using
the returned values as-is.
Example: Confirmed with corrections
In this example, the member number was corrected by the payor fromXYZ456 to XYZ789. The top-level plan
fields reflect the best available values. The confirmation object shows whether those values were verified
with the payor, and confirmation.requested preserves what was originally submitted so you can see what changed.
Always verify that any corrections look right before using them to create a patient plan.
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "COMPLETED",
"inference_result": {
"individuals": [
{
"first_name": "John",
"last_name": "Doe",
"plans": [
{
"member_number": "XYZ789",
"group_number": "98765",
"payor_entity_id": "f5e6d7c8-0000-0000-0000-000000000010",
"plan_order_number": 1,
"name": "BCBS",
"insurance_type": "COMMERCIAL",
"confirmation": {
"id": "e5f6a7b8-0000-0000-0000-000000000001",
"result": "CONFIRMED",
"requested": {
"payor_entity_id": "f5e6d7c8-0000-0000-0000-000000000010",
"payor_entity_name": "Blue Cross",
"member_number": "XYZ456",
"first_name": "John",
"last_name": "Doe",
"date_of_birth": "1990-01-15"
},
"detected": {
"payor_entity_id": "f5e6d7c8-0000-0000-0000-000000000010",
"payor_entity_name": "Blue Cross Blue Shield",
"member_number": "XYZ789",
"first_name": "John",
"last_name": "Doe",
"date_of_birth": "1990-01-15"
},
"error": null
}
}
]
}
]
}
}
Example: Not confirmed
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "COMPLETED",
"inference_result": {
"individuals": [
{
"first_name": "John",
"last_name": "Doe",
"plans": [
{
"member_number": "ABC789",
"payor_entity_id": "f5e6d7c8-0000-0000-0000-000000000020",
"plan_order_number": 1,
"confirmation": {
"id": "e5f6a7b8-0000-0000-0000-000000000002",
"result": "NOT_CONFIRMED",
"requested": {
"payor_entity_id": "f5e6d7c8-0000-0000-0000-000000000020",
"payor_entity_name": "Aetna",
"member_number": "ABC789",
"first_name": "John",
"last_name": "Doe",
"date_of_birth": "1990-01-15"
},
"detected": null,
"error": {
"type": "AAA",
"code": "72",
"message": "Invalid/Missing Subscriber/Insured ID"
}
}
}
]
}
]
}
}
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.