Case Activities

A case activity is any procedural action recorded against a case — a hearing, an order, minutes of the hearing, a subpoena, a sheriff's report, or a stenographic note. Activities form a self-referential tree (activity_id points to a parent activity), which is how Sheriff Reports and Stenographic Notes are threaded off of the hearing they relate to.

The case activity model

  • Name
    id
    Type
    string
    Description

    Unique UUID identifier for the activity.

  • Name
    case_record_id
    Type
    string
    Description

    The case record this activity belongs to.

  • Name
    activity
    Type
    string
    Description

    The kind of activity, e.g. Hearing, Order/Constancia, Minutes of the Hearing, Transcript of Stenographic Notes, Case Ammendment.

  • Name
    type
    Type
    string
    Description

    Broad category, e.g. Court Actions.

  • Name
    tag
    Type
    string | null
    Description

    Free-text tag used to filter specialized views, e.g. Sheriff's Report.

  • Name
    stage
    Type
    string | null
    Description

    The case stage this activity is associated with.

  • Name
    status
    Type
    string
    Description

    One of Confirmed, Expunged, Granted, Denied, for_update.

  • Name
    hearing_status
    Type
    string | null
    Description

    Status specific to hearing-type activities.

  • Name
    due_at
    Type
    date | null
    Description

    Due date for compliance-type activities.

  • Name
    scheduled_at
    Type
    timestamp | null
    Description

    Scheduled date/time for hearing-type activities.

  • Name
    confirmed_at
    Type
    timestamp | null
    Description

    Timestamp when the activity was confirmed.

  • Name
    filed_at
    Type
    date | null
    Description

    Filing date of the activity.

  • Name
    remarks
    Type
    string | null
    Description

    Free-text remarks.

  • Name
    activity_id
    Type
    string | null
    Description

    Self-referential parent activity id — used to thread replies (e.g. a sheriff's report against a hearing).

  • Name
    hearing_parent_id
    Type
    string | null
    Description

    Parent hearing id, for hearing-specific children.

  • Name
    form_template_id
    Type
    string | null
    Description

    The document template used to render this activity, if any.

  • Name
    in_calendar
    Type
    boolean
    Description

    Whether this activity appears on the Events calendar feed.

  • Name
    is_order
    Type
    boolean
    Description

    Whether this activity represents a court order.

  • Name
    is_amendment
    Type
    boolean
    Description

    Whether this activity was created as part of a Case Ammendment.

  • Name
    with_compliance
    Type
    boolean
    Description

    Whether this activity requires a compliance response.

  • Name
    complied_at
    Type
    timestamp | null
    Description

    Timestamp when the compliance requirement was satisfied.

  • Name
    created_at
    Type
    timestamp
    Description

    Timestamp when the activity was created.

  • Name
    updated_at
    Type
    timestamp
    Description

    Timestamp when the activity was last updated.


GET/api/case/{case}/activities

List activities for a case

Retrieve all activities recorded against a case record, ordered with Order/Constancia, Minutes of the Hearing, Transcript of Stenographic Notes, Subpoena, and Sheriff's Report activities grouped by their parent hearing.

Path parameters

  • Name
    case
    Type
    string
    Description

    The UUID of the case record.

Request

GET
/api/case/{case}/activities
curl https://your-domain.com/api/case/a1b2c3d4-e5f6-7890-abcd-ef1234567890/activities \
  -H "Accept: application/json" \
  -H "X-XSRF-TOKEN: {token}" \
  --cookie "cms_admin_session={session}"

Response

{
  "data": [
    {
      "id": "e5f6a7b8-c9d0-1234-ef56-7890abcdef12",
      "activity": "Hearing",
      "type": "Court Actions",
      "status": "Confirmed",
      "scheduled_at": "2026-03-05T09:00:00+00:00",
      "replies": [
        {
          "id": "f6a7b8c9-d0e1-2345-f678-90abcdef1234",
          "activity": "Minutes of the Hearing",
          "status": "Confirmed"
        }
      ]
    }
  ]
}

POST/api/case/{case}/activities

Create an activity for a case

Record a new activity against a case record.

Path parameters

  • Name
    case
    Type
    string
    Description

    The UUID of the case record.

Required attributes

  • Name
    activity
    Type
    string
    Description

    The kind of activity, e.g. Hearing, Order/Constancia.

  • Name
    type
    Type
    string
    Description

    Broad category, e.g. Court Actions.

Optional attributes

  • Name
    scheduled_at
    Type
    timestamp
    Description

    Scheduled date/time, for hearing-type activities.

  • Name
    due_at
    Type
    date
    Description

    Due date, for compliance-type activities.

  • Name
    remarks
    Type
    string
    Description

    Free-text remarks.

  • Name
    activity_id
    Type
    string
    Description

    Parent activity id, to thread this as a reply.

Request

POST
/api/case/{case}/activities
curl -X POST https://your-domain.com/api/case/a1b2c3d4-e5f6-7890-abcd-ef1234567890/activities \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-XSRF-TOKEN: {token}" \
  --cookie "cms_admin_session={session}" \
  -d '{
    "activity": "Hearing",
    "type": "Court Actions",
    "scheduled_at": "2026-03-05T09:00:00+00:00"
  }'

Response

{
  "data": {
    "id": "e5f6a7b8-c9d0-1234-ef56-7890abcdef12",
    "activity": "Hearing",
    "type": "Court Actions",
    "status": "Confirmed",
    "scheduled_at": "2026-03-05T09:00:00+00:00",
    "created_at": "2026-02-20T10:30:00+00:00"
  }
}

POST/api/case-activities/{caseActivity}/update-status

Update activity status

Transition an activity to a new status.

Path parameters

  • Name
    caseActivity
    Type
    string
    Description

    The UUID of the activity.

Required attributes

  • Name
    status
    Type
    string
    Description

    One of Confirmed, Expunged, Granted, Denied, for_update.

Request

POST
/api/case-activities/{caseActivity}/update-status
curl -X POST https://your-domain.com/api/case-activities/e5f6a7b8-c9d0-1234-ef56-7890abcdef12/update-status \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-XSRF-TOKEN: {token}" \
  --cookie "cms_admin_session={session}" \
  -d '{"status": "Granted"}'

Response

{
  "data": {
    "id": "e5f6a7b8-c9d0-1234-ef56-7890abcdef12",
    "status": "Granted",
    "updated_at": "2026-02-20T11:00:00+00:00"
  }
}

DELETE/api/case-activities/{caseActivityId}

Delete an activity

Remove an activity from a case record.

Path parameters

  • Name
    caseActivityId
    Type
    string
    Description

    The UUID of the activity to delete.

Request

DELETE
/api/case-activities/{caseActivityId}
curl -X DELETE https://your-domain.com/api/case-activities/e5f6a7b8-c9d0-1234-ef56-7890abcdef12 \
  -H "Accept: application/json" \
  -H "X-XSRF-TOKEN: {token}" \
  --cookie "cms_admin_session={session}"

Response

{
  "message": "Activity deleted successfully."
}

POST/api/case/{caseId}/hearing

Schedule a case hearing

Create a Hearing activity for a case and place it on the calendar. Also validated against holidays — see Events.

Path parameters

  • Name
    caseId
    Type
    string
    Description

    The UUID of the case record.

Required attributes

  • Name
    scheduled_at
    Type
    timestamp
    Description

    The date and time of the hearing.

  • Name
    hearing_mode
    Type
    string
    Description

    e.g. in-person, videoconferencing.

Request

POST
/api/case/{caseId}/hearing
curl -X POST https://your-domain.com/api/case/a1b2c3d4-e5f6-7890-abcd-ef1234567890/hearing \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-XSRF-TOKEN: {token}" \
  --cookie "cms_admin_session={session}" \
  -d '{"scheduled_at": "2026-03-05T09:00:00+00:00", "hearing_mode": "in-person"}'

Response

{
  "data": {
    "id": "e5f6a7b8-c9d0-1234-ef56-7890abcdef12",
    "activity": "Hearing",
    "scheduled_at": "2026-03-05T09:00:00+00:00",
    "hearing_mode": "in-person",
    "status": "Confirmed"
  }
}

Was this page helpful?