Installation

Requires Node.js 18+ (uses native fetch). TypeScript 5.4+ recommended for type checking.

Initialize the Client

Or set the RULEBOOK_API_KEY environment variable and omit the parameter:
You can also override the base URL via the RULEBOOK_BASE_URL environment variable:

List Exchanges

Response type: ExchangeListResponse

Get Exchange Details

Response type: ExchangeDetailResponse

List Fee Schedule Results

Response type: PaginatedResponse<FeeScheduleResult> Filter parameters:

Get a Single Fee Schedule Result

Response type: FeeScheduleResultResponse

Get Available Filters

Discover valid filter values before querying results:
Response type: FeeScheduleResultFiltersResponse

Get Results by Version

Retrieve all fee schedule results from a specific extraction version:
Response type: PaginatedResponse<FeeScheduleResult>

Pagination

Fee schedule results are paginated. Use page_number and page_size to iterate:

Async by Default

The TypeScript SDK is async-native — all methods return a Promise and are designed for async/await usage. Unlike the Python SDK which provides separate Rulebook and AsyncRulebook clients, there is no separate sync client.

Next Steps

Error Handling

Handle API errors with typed exceptions

Advanced Usage

Timeouts, retries, raw responses, and per-request overrides