REST API for managing cases. A case is the long-lived relationship with a client or household that spans years, multiple applications, and multiple programs.

Base URL: https://api.example.com/case-management

Cases

Manage cases.

GET /cases List cases

Retrieve a paginated list of cases.

Parameters
Name Type In Req Description
q string query Search query using field:value syntax. Multiple conditions separated by
limit integer query

Maximum number of items to return (1-100).

offset integer query

Number of items to skip before collecting results.

sort string query Comma-separated list of fields to sort the response by. Prefix a field
Responses
200 A paginated collection of cases.
CaseList
total integer required Total number of items available.
limit integer required Maximum number of items requested.
offset integer required Number of items skipped before the current page.
hasNext boolean Whether more items are available beyond the current page.
items array[Case] required
status string Current status of the case. Will be driven by x-enum-source once a case-management state machine is defined.
enumactive closed
effectiveStartDate string (date) Date when coverage or the case relationship begins.
effectiveEndDate string (date) Date when the case was closed. Null while active.
primaryApplicantId string (uuid) Reference to the Person record for the primary applicant.
members array[CaseMember] Household members associated with this case.
personId string (uuid) required Reference to the Person record.
relationship string required Relationship to the primary applicant.
assignedToId string (uuid) Reference to the User record for the assigned case worker.
id string (uuid) read-only Unique identifier (server-generated).
createdAt string (date-time) read-only Timestamp when the case was created.
updatedAt string (date-time) read-only Timestamp when the case was last updated.
400 The request is malformed or contains invalid parameters.
BadRequest
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
500 An unexpected error occurred on the server.
InternalError
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
POST /cases Create a case

Create a new case record.

Request body required
CaseCreate
status string Current status of the case. Will be driven by x-enum-source once a case-management state machine is defined.
enumactive closed
effectiveStartDate string (date) Date when coverage or the case relationship begins.
effectiveEndDate string (date) Date when the case was closed. Null while active.
primaryApplicantId string (uuid) Reference to the Person record for the primary applicant.
members array[CaseMember] Household members associated with this case.
personId string (uuid) required Reference to the Person record.
relationship string required Relationship to the primary applicant.
assignedToId string (uuid) Reference to the User record for the assigned case worker.
Responses
201 Case created successfully.
Case
status string Current status of the case. Will be driven by x-enum-source once a case-management state machine is defined.
enumactive closed
effectiveStartDate string (date) Date when coverage or the case relationship begins.
effectiveEndDate string (date) Date when the case was closed. Null while active.
primaryApplicantId string (uuid) Reference to the Person record for the primary applicant.
members array[CaseMember] Household members associated with this case.
personId string (uuid) required Reference to the Person record.
relationship string required Relationship to the primary applicant.
assignedToId string (uuid) Reference to the User record for the assigned case worker.
id string (uuid) read-only Unique identifier (server-generated).
createdAt string (date-time) read-only Timestamp when the case was created.
updatedAt string (date-time) read-only Timestamp when the case was last updated.
400 The request is malformed or contains invalid parameters.
BadRequest
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
422 The request was well-formed but contained semantic errors.
UnprocessableEntity
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
500 An unexpected error occurred on the server.
InternalError
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
GET /cases/{caseId} Get a case

Retrieve a single case by identifier.

Parameters
Name Type In Req Description
caseId string path

Unique identifier of the case.

Responses
200 Case retrieved successfully.
Case
status string Current status of the case. Will be driven by x-enum-source once a case-management state machine is defined.
enumactive closed
effectiveStartDate string (date) Date when coverage or the case relationship begins.
effectiveEndDate string (date) Date when the case was closed. Null while active.
primaryApplicantId string (uuid) Reference to the Person record for the primary applicant.
members array[CaseMember] Household members associated with this case.
personId string (uuid) required Reference to the Person record.
relationship string required Relationship to the primary applicant.
assignedToId string (uuid) Reference to the User record for the assigned case worker.
id string (uuid) read-only Unique identifier (server-generated).
createdAt string (date-time) read-only Timestamp when the case was created.
updatedAt string (date-time) read-only Timestamp when the case was last updated.
404 The requested resource was not found.
NotFound
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
500 An unexpected error occurred on the server.
InternalError
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
PATCH /cases/{caseId} Update a case

Apply partial updates to an existing case.

Parameters
Name Type In Req Description
caseId string path

Unique identifier of the case.

Request body required
CaseUpdate
status string Current status of the case. Will be driven by x-enum-source once a case-management state machine is defined.
enumactive closed
effectiveStartDate string (date) Date when coverage or the case relationship begins.
effectiveEndDate string (date) Date when the case was closed. Null while active.
primaryApplicantId string (uuid) Reference to the Person record for the primary applicant.
members array[CaseMember] Household members associated with this case.
personId string (uuid) required Reference to the Person record.
relationship string required Relationship to the primary applicant.
assignedToId string (uuid) Reference to the User record for the assigned case worker.
Responses
200 Case updated successfully.
Case
status string Current status of the case. Will be driven by x-enum-source once a case-management state machine is defined.
enumactive closed
effectiveStartDate string (date) Date when coverage or the case relationship begins.
effectiveEndDate string (date) Date when the case was closed. Null while active.
primaryApplicantId string (uuid) Reference to the Person record for the primary applicant.
members array[CaseMember] Household members associated with this case.
personId string (uuid) required Reference to the Person record.
relationship string required Relationship to the primary applicant.
assignedToId string (uuid) Reference to the User record for the assigned case worker.
id string (uuid) read-only Unique identifier (server-generated).
createdAt string (date-time) read-only Timestamp when the case was created.
updatedAt string (date-time) read-only Timestamp when the case was last updated.
400 The request is malformed or contains invalid parameters.
BadRequest
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
404 The requested resource was not found.
NotFound
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
422 The request was well-formed but contained semantic errors.
UnprocessableEntity
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
500 An unexpected error occurred on the server.
InternalError
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
DELETE /cases/{caseId} Delete a case

Permanently remove a case record.

Parameters
Name Type In Req Description
caseId string path

Unique identifier of the case.

Responses
204 Case deleted successfully.
404 The requested resource was not found.
NotFound
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.
500 An unexpected error occurred on the server.
InternalError
code string required Machine-readable error code.
message string required Human-readable error description.
details array[object] Additional error details.