Skip to main content
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>'
{
  "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
    }
  ],
  "pagination": {
    "page": 123,
    "page_size": 123,
    "total_records": 123,
    "total_pages": 123
  }
}
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, max 500).
  • search: Filter by code or description (case-insensitive).
  • validity: Filter to valid or invalid codes.

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: valid or invalid. Invalid codes are retained so historical claims can still be cross-referenced.
  • pagination: page, page_size, total_records, total_pages.

Authorizations

client_id
string
header
required
client_secret
string
header
required
access_token
string
header
required

Path Parameters

feeScheduleId
string
required

Cobalt fee schedule ID from the list endpoint.

Query Parameters

page
integer
default:1

Page number (default 1).

page_size
integer
default:100

Items per page (default 100, max 500).

Required range: x <= 500

Filter by code or description (case-insensitive).

validity
enum<string>

Filter by code validity.

Available options:
valid,
invalid

Response

Successful response

success
boolean
items
object[]
pagination
object