List fee-schedule items
curl --request GET \
--url https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items \
--header 'access_token: <api-key>' \
--header 'client_id: <api-key>' \
--header 'client_secret: <api-key>'import requests
url = "https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items"
headers = {
"client_id": "<api-key>",
"client_secret": "<api-key>",
"access_token": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {client_id: '<api-key>', client_secret: '<api-key>', access_token: '<api-key>'}
};
fetch('https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items', 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.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"access_token: <api-key>",
"client_id: <api-key>",
"client_secret: <api-key>"
],
]);
$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.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("client_id", "<api-key>")
req.Header.Add("client_secret", "<api-key>")
req.Header.Add("access_token", "<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.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items")
.header("client_id", "<api-key>")
.header("client_secret", "<api-key>")
.header("access_token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["client_id"] = '<api-key>'
request["client_secret"] = '<api-key>'
request["access_token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"items": [
{
"item_id": "<string>",
"code": "<string>",
"name": "<string>",
"fee": 123,
"allowed_fee": 123,
"cost": 123,
"patient_portion": 123,
"bill_to_patient": true,
"modifiers": [
"<string>"
],
"pos": "<string>",
"tos": "<string>",
"ndc": {
"code": "<string>",
"units": "<string>",
"uom": "<string>",
"unit_price": "<string>"
},
"exclude_cpt": true,
"validity": "<string>"
}
],
"pagination": {
"page": 123,
"page_size": 123,
"total_records": 123,
"total_pages": 123
}
}{
"success": false,
"message": "<string>"
}{
"success": false,
"message": "<string>"
}{
"success": false,
"message": "<string>"
}{
"success": false,
"message": "<string>"
}Fee Schedules
Get Fee Schedule Items
Returns a page of per-code pricing for a single fee schedule.
GET
/
fee-schedules
/
{feeScheduleId}
/
items
List fee-schedule items
curl --request GET \
--url https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items \
--header 'access_token: <api-key>' \
--header 'client_id: <api-key>' \
--header 'client_secret: <api-key>'import requests
url = "https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items"
headers = {
"client_id": "<api-key>",
"client_secret": "<api-key>",
"access_token": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {client_id: '<api-key>', client_secret: '<api-key>', access_token: '<api-key>'}
};
fetch('https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items', 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.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"access_token: <api-key>",
"client_id: <api-key>",
"client_secret: <api-key>"
],
]);
$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.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("client_id", "<api-key>")
req.Header.Add("client_secret", "<api-key>")
req.Header.Add("access_token", "<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.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items")
.header("client_id", "<api-key>")
.header("client_secret", "<api-key>")
.header("access_token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.usecobalt.com/v1/fee-schedules/{feeScheduleId}/items")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["client_id"] = '<api-key>'
request["client_secret"] = '<api-key>'
request["access_token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"items": [
{
"item_id": "<string>",
"code": "<string>",
"name": "<string>",
"fee": 123,
"allowed_fee": 123,
"cost": 123,
"patient_portion": 123,
"bill_to_patient": true,
"modifiers": [
"<string>"
],
"pos": "<string>",
"tos": "<string>",
"ndc": {
"code": "<string>",
"units": "<string>",
"uom": "<string>",
"unit_price": "<string>"
},
"exclude_cpt": true,
"validity": "<string>"
}
],
"pagination": {
"page": 123,
"page_size": 123,
"total_records": 123,
"total_pages": 123
}
}{
"success": false,
"message": "<string>"
}{
"success": false,
"message": "<string>"
}{
"success": false,
"message": "<string>"
}{
"success": false,
"message": "<string>"
}A fee schedule contains the full CPT/HCPCS catalog (thousands of codes), so its
items are paginated. Get the
feeScheduleId from
Get Fee Schedules, then page through the
codes here. You can narrow results with search (code or description) and
validity.
Example Request
curl -X GET "https://api.usecobalt.com/v1/fee-schedules/abc123def4567890abcdef1234567890/items?page=1&page_size=100&search=99213&validity=valid" \
-H 'Content-Type: application/json' \
-H 'client_id: ci_live_198908HJDKJSH98789OHKJL' \
-H 'client_secret: cs_live_9827hofdsklOYYHJLJh' \
-H 'access_token: 493JKLHIU98789hLKH9HHJH'
Example Response
{
"success": true,
"items": [
{
"item_id": "279840",
"code": "49082",
"name": "ABD PARACENTESIS",
"fee": 287.0,
"allowed_fee": 191.28,
"cost": 0.0,
"patient_portion": 0.0,
"bill_to_patient": false,
"modifiers": [],
"pos": null,
"tos": null,
"ndc": {
"code": null,
"units": null,
"uom": null,
"unit_price": null
},
"exclude_cpt": false,
"validity": "valid"
}
],
"pagination": {
"page": 1,
"page_size": 100,
"total_records": 2624,
"total_pages": 27
}
}
Query Parameters
- page: Page number (default
1). - page_size: Items per page (default
100, max500). - search: Filter by code or description (case-insensitive).
- validity: Filter to
validorinvalidcodes.
Response Parameters
- item_id: EMR item identifier, stable per code within the schedule.
- code: CPT/HCPCS code.
- name: Code description.
- fee: Billed/charge amount. allowed_fee: Contracted allowed amount. These differ per schedule for the same code.
- cost / patient_portion: Cost and patient-portion amounts.
- bill_to_patient / exclude_cpt: Billing flags.
- modifiers: Procedure modifiers (only non-empty slots are returned).
- pos / tos: Place of service / type of service.
- ndc: National Drug Code details (
code,units,uom,unit_price). - validity:
validorinvalid. Invalid codes are retained so historical claims can still be cross-referenced. - pagination:
page,page_size,total_records,total_pages.
Authorizations
Path Parameters
Cobalt fee-schedule ID.
Example:
"fee-schedule-123"
Query Parameters
Filter by CPT/HCPCS code or description.
Example:
"99213"
Filter by validity. One of: "valid", "invalid".
Example:
"valid"
Page number.
Required range:
x >= 1Items per page (max 500).
Required range:
1 <= x <= 500