Skip to content
  • There are no suggestions because the search field is empty.

Format requests to the Casebook API

The Casebook API allows you to create, read, update, and delete data in Casebook. This developer guide introduces common examples to help you get started with the Casebook API.

To interact with the Casebook API, your organization must be licensed for External Data Interoperability (API), included in Casebook Enterprise.

For more help with the Casebook API, get in touch with the Casebook Support team.


Introduction

Requests to the Casebook API support standard JSON:API modifiers for formatting, filtering, sorting, and pagination.

Prerequisites

You'll need to register an incoming application and obtain a Bearer token to authorize your requests to the Casebook API

Instructions

Set Authorization and Content-Type headers

Each request must include the following headers:

  • Authorization: Bearer <YOUR_ACCESS_TOKEN>

  • Content-Type: application/vnd.api+json

Route your request

Start with the base URL

First, all requests to the Casebook API must be directed to the correct base URL.

  • For accounts in Canada, use https://api.casebookca.net
  • For accounts in the US, use https://api.casebook.net
Add the Service

Next, add the relevant Casebook service after the base URL in your request.

Here are a few common examples:

Specify the Operation and Endpoint

Next, specify the Operation (GET, POST, PATCH, or DELETE) and the relevant endpoint in your request.

Here are a few common examples:

Include query parameters to modify results

Requests often require sorting, filters, and pagination to narrow down the records you want to retrieve. Query parameters let you specify these filters directly in the endpoint URL.

Use ? before the first modifier, and & before any additional modifiers to chain multiple conditions.

Here are a few common examples:

Filter

Flter results based on values in one or more fields

  • Exact match: filter results with a case-sensitive exact match on a field
    • Equals: filter[<YOUR_FIELD_NAME>]=<YOUR_VALUE>
    • Not equals: filter[<YOUR_FIELD_NAME>][neq]=<YOUR_VALUE>
  • Comparing dates and numbers: filter results within a range of values
    • Greater than: filter[<YOUR_FIELD_NAME>][g]=<YOUR_VALUE>
    • Greater than or equal to: filter[<YOUR_FIELD_NAME>][ge]=<YOUR_VALUE>
    • Less than: filter[<YOUR_FIELD_NAME>][l]=<YOUR_VALUE>
    • Less than or equal to: filter[<YOUR_FIELD_NAME>][le]=<YOUR_VALUE>
  • Empty values: filter results 
    • Include only empty values: filter[<YOUR_FIELD_NAME>]=null;
    • Exclude empty values: filter[<YOUR_FIELD_NAME>][neq]=null

Sort

Determine the sort order for your results based on values in one or more fields

  • Sort in ascending order: sort=<YOUR_FIELD_NAME>
  • Sort in descending order: sort=-<YOUR_FIELD_NAME>

Page

Ten results will be returned with each request by default - use page numbers to return a specific set of results.  Specify the page size for your results to override the default.

  • Return a specific page of results: page=<YOUR_PAGE_NUMBER>
  • Specify the page size for results: page[size]=<YOUR_PAGE_SIZE>

Tips

While chaining multiple query parameters, remember to use ? before the first and & before each additional parameter

Examples

Get all active Services offered by a specific Provider

GET <BASE_URL>/services/service_offerings?filter[provider_id]=<YOUR_PROVIDER_ID>&filter[archived]=false
  • Headers:
    • Authorization: Bearer <YOUR_BEARER_TOKEN>
    • Content-Type: application/vnd.api+json
  • Operation: GET
  • Base URL: either https://api.casebookca.net (Canada) or https://api.casebook.net (US)
  • Casebook service: /services
  • Endpoint: /service_offerings
  • Query parameters:
    • filter[provider_id]=<YOUR_PROVIDER_ID>
    • filter[archived]=false
Try it

Get all Notes created between two dates

GET <BASE_URL>/attachments/notes?filter[created_at][ge]=2025-01-01T00:00:00Z&filter[created_at][le]=2025-06-30T23:59:59Z
  • Headers:
    • Authorization: Bearer <YOUR_BEARER_TOKEN>
    • Content-Type: application/vnd.api+json
  • Operation: GET
  • Base URL: either https://api.casebookca.net (Canada) or https://api.casebook.net (US)
  • Casebook service: /attachments
  • Endpoint: /notes
  • Query parameters:
    • filter[provider_id]=<YOUR_PROVIDER_ID>
    • filter[archived]=false
Try it


People - Get all People with a specific last name

GET <BASE_URL>/people/people?filter[last_name][like]=Doe
  • Headers:
    • Authorization: Bearer <YOUR_BEARER_TOKEN>
    • Content-Type: application/vnd.api+json
  • Operation: GET
  • Base URL: either https://api.casebookca.net (Canada) or https://api.casebook.net (US)
  • Casebook service: /people
  • Endpoint: /people
  • Query parameters:
    • filter[last_name][like]=Doe
Try it out