ClientCasa
API

Plan event samples

Retrieve actual announced Plan events to test an integration.

GET /api/v1/plan-events returns samples of events ClientCasa has already announced. Use read:to-dos (or to-dos:read for API keys) and supply the required event query parameter. The supported event names appear in the reference below, including the compatible timeline_item_completed event.

Each sample preserves its original event envelope and event ID. The reader checks your current access to its project, client and event day before returning it, including when the original subject has since been merged or retired. Samples belong to the authenticated organization.

Read the result

The endpoint returns up to three accessible samples from the newest matching candidates. It examines at most 200 candidates and can also stop when its read budget is reached. The response contains data, complete, stopped and notice; it has no pagination cursor.

When complete is true, an empty data means there were no accessible samples in the inspected candidates. When stopped is true, show the returned notice: more events may still be available. An empty stopped result does not establish that no events exist.

Use this endpoint to inspect real payloads while setting up an integration. Use webhooks for ongoing event delivery. The sample endpoint does not provide a complete activity history.

GET
/api/v1/plan-events
x-api-key<token>

In: header

Query Parameters

event*string
Value in"project_stage_changed" | "todo_created" | "todo_updated" | "todo_scheduled" | "todo_started" | "todo_completed" | "todo_reopened" | "todo_cancelled" | "todo_restored" | "todo_merged" | "plan_template_applied" | "project_event_date_changed" | "project_act_recorded" | "timeline_item_completed"

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://www.clientcasa.com/api/v1/plan-events?event=project_stage_changed"
{
  "data": [
    {
      "property1": null,
      "property2": null
    }
  ],
  "complete": true,
  "stopped": true,
  "notice": "string"
}
{
  "error": {
    "code": "unauthorized",
    "message": "string",
    "requestId": "string",
    "details": {
      "code": "invalid_step_graph",
      "property1": null,
      "property2": null
    }
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "string",
    "requestId": "string",
    "details": {
      "code": "invalid_step_graph",
      "property1": null,
      "property2": null
    }
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "string",
    "requestId": "string",
    "details": {
      "code": "invalid_step_graph",
      "property1": null,
      "property2": null
    }
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "string",
    "requestId": "string",
    "details": {
      "code": "invalid_step_graph",
      "property1": null,
      "property2": null
    }
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "string",
    "requestId": "string",
    "details": {
      "code": "invalid_step_graph",
      "property1": null,
      "property2": null
    }
  }
}

On this page