Case Management

Case Notes

The Case Notes API allows you to retrieve case notes and records from your organisation's case management system. Case notes are used to document interactions, progress, and important information about members.

List Case Notes

Retrieve a paginated list of case notes with optional filtering.

Endpoint

GET /api/v1/case-notes

Query Parameters

Pagination:

  • limit (number, default: 100, max: 250) - Maximum number of notes to return
  • offset (number, default: 0) - Number of notes to skip for pagination

Filtering:

  • caseId (string) - Filter by case ID
  • Creator (string) - Filter by creator user ID
  • Pinned (boolean) - Filter by pinned status
  • Private (boolean) - Filter by privacy status

Response

{
  "caseNotes": [
    {
      "noteId": "note_abc123",
      "managedBy": "org123",
      "caseId": "case_xyz789",
      "creator": "user_456",
      "updatedBy": "user_456",
      "date": "2025-01-20T10:30:00.000Z",
      "created": "2025-01-20T10:30:00.000Z",
      "updated": "2025-01-20T11:15:00.000Z",
      "content": "Met with client to discuss progress on housing application. They have completed the required documentation and we submitted the application together. Follow-up scheduled for next week.",
      "linkedEntities": {
        "memberIds": ["member_123"],
        "partnerIds": ["partner_456"],
        "volunteerIds": []
      },
      "tags": ["housing", "application", "progress"],
      "isPrivate": false,
      "isPinned": true,
      "documentIds": ["doc_001", "doc_002"]
    }
  ],
  "offset": 0,
  "limit": 100,
  "total": 128
}

Example Requests

List all case notes:

curl -X GET "https://app.plinth.org.uk/api/v1/case-notes" \
  -H "x-api-key: sk_your_api_key"

Filter by case ID:

curl -X GET "https://app.plinth.org.uk/api/v1/case-notes?caseId=case_xyz789" \
  -H "x-api-key: sk_your_api_key"

Get pinned notes only:

curl -X GET "https://app.plinth.org.uk/api/v1/case-notes?Pinned=true" \
  -H "x-api-key: sk_your_api_key"

Filter by creator:

curl -X GET "https://app.plinth.org.uk/api/v1/case-notes?Creator=user_456" \
  -H "x-api-key: sk_your_api_key"

Exclude private notes:

curl -X GET "https://app.plinth.org.uk/api/v1/case-notes?Private=false" \
  -H "x-api-key: sk_your_api_key"

Response Fields

Case Note Object

FieldTypeDescription
noteIdstringUnique identifier for the note
managedBystringOrganisation ID that manages this note
caseIdstringID of the case this note belongs to
creatorstringUser ID of the person who created the note
updatedBystring/nullUser ID of the person who last updated the note
datestringNote date (ISO 8601)
createdstringCreation timestamp (ISO 8601)
updatedstring/nullLast update timestamp (ISO 8601)
contentstringThe note content/text
linkedEntitiesobjectAssociated members, partners, and volunteers
tagsarrayTags associated with this note
isPrivatebooleanWhether the note is marked as private
isPinnedbooleanWhether the note is pinned
documentIdsarrayIDs of attached documents

Linked Entities Object

FieldTypeDescription
memberIdsarrayIDs of members linked to this note
partnerIdsarrayIDs of partners linked to this note
volunteerIdsarrayIDs of volunteers linked to this note

Use Cases

Building a Case Timeline

To build a complete timeline for a case, fetch all notes for that case and sort by date:

curl -X GET "https://app.plinth.org.uk/api/v1/case-notes?caseId=case_xyz789&limit=250" \
  -H "x-api-key: sk_your_api_key"

Finding Key Notes

Use the Pinned filter to find important notes that have been flagged:

curl -X GET "https://app.plinth.org.uk/api/v1/case-notes?caseId=case_xyz789&Pinned=true" \
  -H "x-api-key: sk_your_api_key"

Privacy Considerations

Notes marked as isPrivate: true contain sensitive information. Ensure your application handles these appropriately based on user permissions.

Error Responses

StatusDescription
400Bad Request - Invalid parameters
401Unauthorized - Invalid or missing API key
500Internal Server Error
Previous
Survey Responses