Work with the Intake API
Create, update, search, fetch, and delete intake reports programmatically with the Casebook Intake API
Introduction
In Casebook, an Intake Report is the starting point that captures an inquiry, service referral, or incident.
Intake reports bring together key details about a situation, the people involved, and any early assessments or screening decisions before potentially advancing into a Case.
Operations in the Intake API reflect entities, attributes, and relationships in Casebook:
- Reports
- Incidents
- Screening Decisions
This guide focuses on the most common use cases to help you quickly integrate core intake functionality into your applications.
Prerequisites
Your organization must be licensed for External Data Interoperability (API) to interact with the Casebook API.
You will need to register an incoming application and obtain a Bearer token before starting this guide.
Instructions
Create a Report
Intake - POST Report can be used to create a new Intake Report in Casebook
POST <BASE_URL>/intake/reports
- Application Roles:
- Intake - Create (All)
- People - Create (All)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Body: Report attributes and relationships
- Query Parameters: N/A
Query all Reports
Intake - GET Reports can be used to retrieve a list of Intake Reports in Casebook
GET <BASE_URL>/intake/reports
- Application Roles:
- Intake - View (All, Limited access, or User's assignments only)
- People - View (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Body: N/A
- Query Parameters:
fields(Optional): Specify the exact attributes to be included in the response payload to reduce data overheadfilter(Optional): Limit the retrieved results based on specific criteria or field valuesinclude(Optional): Request related entities to be side-loaded and included in the response for a more comprehensive data setpage(Optional): Navigate through result sets by returning records in separate pages for faster performance (10 records per page by default)sort(Optional): Order the results in ascending or descending order based on a specified field
Fetch the details of a specific Report
Intake - GET Report by ID can be used to retrieve the full details of a specific Report in Casebook
GET <BASE_URL>/intake/reports/:id
- Application Roles:
- Intake - View (All, Limited access, or User's assignments only)
- People - View (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Body: N/A
- Query Parameters:
fields(Optional): Specify the exact attributes to be included in the response payload to reduce data overheadinclude(Optional): Request related entities to be side-loaded and included in the response for a more comprehensive data set
Update a Report
Intake - PATCH Report by ID can be used to update a Report in Casebook
PATCH <BASE_URL>/intake/reports/:id
- Application Roles:
- Intake - Edit (All, Limited access, or User's assignments only)
- People - Edit (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Body: Report attributes and relationships
- Query Parameters: N/A
Delete a Report
Intake - DELETE Report by ID can be used to soft-delete a Report in Casebook
DELETE <BASE_URL>/intake/reports/:id
- Application Roles:
- Intake - Delete (All, Limited access, or User's assignments only)
- People - Delete (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Body: N/A
- Query Parameters: N/A
Tips
All required fields must be provided to create or update records - see Admin → Intake → Dynamic pages for a list of fields which have been set to required in Casebook.
An ID must be provided to fetch, update, or delete a specific record - If Report ID is unknown, you can first Query all Reports to fetch its value.
Only the attributes included in your request will be created or updated - you do not need to include attributes which are empty or have not changed.
Deleting records hides them from view in Casebook and Reporting - contact Casebook Support if you need to permanently purge records.
Next steps
Next, explore all endpoints available in the Intake API to plan your integration or learn how to access custom fields in Intake Reports
For more help with the Casebook API, get in touch with the Casebook Support team.