curl --request GET \
--url https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context \
--header 'API-KEY: <api-key>' \
--header 'TENANT: <tenant>'import requests
url = "https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context"
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>'}};
fetch('https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context', 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://api.decodahealth.com/billing/charge/{charge_id}/superbill-context",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"TENANT: <tenant>"
],
]);
$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://api.decodahealth.com/billing/charge/{charge_id}/superbill-context"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"chargeId": "<string>",
"patient": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"dateOfBirth": "2023-12-25",
"email": "<string>",
"phoneNumber": "<string>",
"address": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>"
},
"guarantor": {
"name": "<string>",
"relationship": "<string>",
"patientId": "<string>"
},
"insuranceCoverages": [
{
"id": "<string>",
"isPrimary": true,
"inNetwork": true,
"insurerName": "<string>",
"memberId": "<string>",
"policyHolderName": "<string>",
"policyHolderDob": "2023-12-25",
"groupId": "<string>",
"pverifyCode": "<string>",
"phoneNumber": "<string>",
"coverageType": "<string>",
"planName": "<string>",
"planType": "<string>",
"effectiveDate": "2023-12-25",
"eligibilityNote": "<string>",
"claimsAddress": "<string>"
}
],
"event": {
"id": "<string>",
"start": "2023-11-07T05:31:56Z",
"end": "2023-11-07T05:31:56Z",
"serviceSegments": [
{
"id": "<string>",
"start": "2023-11-07T05:31:56Z",
"end": "2023-11-07T05:31:56Z",
"serviceId": "<string>",
"serviceName": "<string>",
"provider": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"npi": "<string>",
"credentials": "<string>"
}
}
],
"location": {
"id": "<string>",
"name": "<string>",
"addressLineOne": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"phoneNumber": "<string>"
}
},
"savedPayload": {
"services": [
{
"chargeItemId": "<string>",
"included": true,
"billingCode": "<string>",
"billingCodeDescription": "<string>",
"modifiers": [],
"icd10Codes": [],
"ndcCode": "<string>",
"placeOfService": "<string>",
"startDate": "2023-12-25",
"endDate": "2023-12-25",
"quantity": 1,
"quantityLabel": "QUANTITY",
"billedChargeCents": 0
}
],
"serviceDetails": {
"renderingProviderId": "<string>",
"renderingProviderName": "<string>",
"renderingProviderNpi": "<string>",
"billingProviderId": "<string>",
"billingProviderName": "<string>",
"billingProviderNpi": "<string>",
"tin": "<string>",
"otherProviderName": "<string>",
"placeOfService": "<string>",
"facilityName": "<string>",
"startDate": "2023-12-25",
"endDate": "2023-12-25",
"hospitalAdmitDate": "2023-12-25",
"dateOfInjury": "2023-12-25",
"priorAuthNumber": "<string>"
},
"insurance": {
"coverageType": "<string>",
"payerName": "<string>",
"planName": "<string>",
"planType": "<string>",
"insuranceId": "<string>",
"groupId": "<string>",
"effectiveDate": "2023-12-25",
"eligibilityNote": "<string>",
"claimsAddress": "<string>",
"guarantorName": "<string>"
},
"notes": "<string>",
"includeCodeSummary": true
},
"noteCodes": {
"noteId": "<string>",
"cptCodes": [],
"icd10Codes": [],
"cptModifiers": {}
},
"serviceDefaults": [],
"defaultPlaceOfService": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Get Superbill Context
Return autofill data for the superbill page: linked event (location, service segments with providers and NPIs), patient demographics, insurance coverages, and guarantor.
curl --request GET \
--url https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context \
--header 'API-KEY: <api-key>' \
--header 'TENANT: <tenant>'import requests
url = "https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context"
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>'}};
fetch('https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context', 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://api.decodahealth.com/billing/charge/{charge_id}/superbill-context",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"TENANT: <tenant>"
],
]);
$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://api.decodahealth.com/billing/charge/{charge_id}/superbill-context"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/billing/charge/{charge_id}/superbill-context")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"chargeId": "<string>",
"patient": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"dateOfBirth": "2023-12-25",
"email": "<string>",
"phoneNumber": "<string>",
"address": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>"
},
"guarantor": {
"name": "<string>",
"relationship": "<string>",
"patientId": "<string>"
},
"insuranceCoverages": [
{
"id": "<string>",
"isPrimary": true,
"inNetwork": true,
"insurerName": "<string>",
"memberId": "<string>",
"policyHolderName": "<string>",
"policyHolderDob": "2023-12-25",
"groupId": "<string>",
"pverifyCode": "<string>",
"phoneNumber": "<string>",
"coverageType": "<string>",
"planName": "<string>",
"planType": "<string>",
"effectiveDate": "2023-12-25",
"eligibilityNote": "<string>",
"claimsAddress": "<string>"
}
],
"event": {
"id": "<string>",
"start": "2023-11-07T05:31:56Z",
"end": "2023-11-07T05:31:56Z",
"serviceSegments": [
{
"id": "<string>",
"start": "2023-11-07T05:31:56Z",
"end": "2023-11-07T05:31:56Z",
"serviceId": "<string>",
"serviceName": "<string>",
"provider": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"npi": "<string>",
"credentials": "<string>"
}
}
],
"location": {
"id": "<string>",
"name": "<string>",
"addressLineOne": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"phoneNumber": "<string>"
}
},
"savedPayload": {
"services": [
{
"chargeItemId": "<string>",
"included": true,
"billingCode": "<string>",
"billingCodeDescription": "<string>",
"modifiers": [],
"icd10Codes": [],
"ndcCode": "<string>",
"placeOfService": "<string>",
"startDate": "2023-12-25",
"endDate": "2023-12-25",
"quantity": 1,
"quantityLabel": "QUANTITY",
"billedChargeCents": 0
}
],
"serviceDetails": {
"renderingProviderId": "<string>",
"renderingProviderName": "<string>",
"renderingProviderNpi": "<string>",
"billingProviderId": "<string>",
"billingProviderName": "<string>",
"billingProviderNpi": "<string>",
"tin": "<string>",
"otherProviderName": "<string>",
"placeOfService": "<string>",
"facilityName": "<string>",
"startDate": "2023-12-25",
"endDate": "2023-12-25",
"hospitalAdmitDate": "2023-12-25",
"dateOfInjury": "2023-12-25",
"priorAuthNumber": "<string>"
},
"insurance": {
"coverageType": "<string>",
"payerName": "<string>",
"planName": "<string>",
"planType": "<string>",
"insuranceId": "<string>",
"groupId": "<string>",
"effectiveDate": "2023-12-25",
"eligibilityNote": "<string>",
"claimsAddress": "<string>",
"guarantorName": "<string>"
},
"notes": "<string>",
"includeCodeSummary": true
},
"noteCodes": {
"noteId": "<string>",
"cptCodes": [],
"icd10Codes": [],
"cptModifiers": {}
},
"serviceDefaults": [],
"defaultPlaceOfService": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Headers
The tenant you are making this request on behalf of
Your api key
Path Parameters
Response
Successful Response
Autofill data for the superbill page: event details + insurance + guarantor.
If staff has previously saved a draft for this charge, saved_payload carries
their last-known values so the page can hydrate the editor (overrides autofill).
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Full superbill document state — what staff fills in + what was autofilled.
Show child attributes
Show child attributes
Codes already extracted onto the linked clinical note by the scribe flow.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
