Working with People
Create, update, search, and fetch people programmatically 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
In Casebook, People records connect a user to their full history with your organization—including their involvement in Intake Reports, Cases, Services, and other program activity, keeping information about each individual consistent and centralized.
This guide focuses on the most common use cases to help you quickly integrate core intake functionality into your applications.
Prerequisites
You'll need to register an incoming application and obtain a Bearer token to authorize your requests to the Casebook API
Instructions
Create a Person
People - POST Person can be used to create a new Person in your Casebook system.
POST <BASE_URL>/people/people
- Application Roles:
- People - Create (All)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Operation:
POST - Casebook service:
/people - Endpoint:
/people - Body:
- All required attributes must be populated in order to successfully create a Case
- See Admin → Intake → Dynamic pages for a list of fields which have been set to required within your Casebook system
- Only the attributes included in your request will be created - you do not need to include attributes without values
- All required attributes must be populated in order to successfully create a Case
- Query parameters: N/A
Query all People
People - GET People can be used to retrieve a list of People in your Casebook system.
GET <BASE_URL>/people/people
- Application Roles:
- People - View (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Operation:
GET - Casebook service:
/people - Endpoint:
/people - Body: N/A
- Query parameters:
- Use
filterparameters to limit the results retrieved based on any field(s) in the Person record - Use
pageparameters to return results in separate pages for faster performance (10 records per page by default)
- Use
Fetch the details of a specific Person
People - GET Person by ID can be used to retrieve the full details of a specific Person in your Casebook system
GET <BASE_URL>/people/people/:id
- Application Roles:
- People - View (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Operation:
GET - Casebook service:
/people - Endpoint:
/people/:id- ID for the Person you would like to fetch must be provided in the endpoint's address - If Person ID is unknown, you should first query all People to fetch its value
- Body: N/A
- Query parameters:
- Use
fieldsparameters to include only specific fields in the response
- Use
Update a Person
People - PATCH Person by ID can be used to update a Person in your Casebook system
PATCH <BASE_URL>/people/people/:id
- Application Roles:
- People - Edit (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Operation:
PATCH - Casebook service:
/people - Endpoint:
/people/:id- ID for the Person you would like to update must be provided in the endpoint's address - If Person ID is unknown, you should first query all People to fetch its value
- Body:
- Only the attributes included in your request will be updated - you do not need to include attributes which have not changed
- Query parameters:
- Use
fieldsparameters to include only specific fields in the response
- Use
Delete a Person
People - DELETE Person by ID can be used to soft-delete a Person in your Casebook system
DELETE <BASE_URL>/people/people/:id
All Delete actions in Casebook are "soft-deletes", flagging and excluding those records from view in Casebook
Contact Casebook Support if you need to "hard-delete" or purge records- Application Roles:
- People - Delete (All or Limited access)
- Headers:
- Authorization:
Bearer <YOUR_BEARER_TOKEN> - Content-Type:
application/vnd.api+json
- Authorization:
- Operation:
PATCH - Casebook service:
/people - Endpoint:
/people/:id- ID for the Person you would like to delete must be provided in the endpoint's address - If Person ID is unknown, you should first query all People to fetch its value
- Body: N/A
- Query Parameters: N/A