# Create Subtask

`lawmatics_create-subtask` · Lawmatics MCP tool · Subtasks

Add a subtask (checklist item) to a Lawmatics task. Provide the text content and, optionally, an initial completion status. Returns a `relationships` envelope with an {id,type} pointer to the parent task.

## Input

- **taskId** `string` (required, pattern: ^\d+$) — ID of the parent task to add the subtask to; a numeric string
- **body** `string` (required) — Text content of the subtask
- **done** `boolean` (default: false) — Completion status; defaults to false for a new subtask

## Output

- **id** `string` (required) — Unique ID of the created subtask
- **body** `string` (required) — Text content of the subtask
- **order** `integer` (required) — Read-only zero-based position of the subtask within the parent task's checklist
- **done** `boolean` (required) — Whether the subtask is completed
- **createdAt** `string` (required) — When the subtask was created, as an ISO 8601 timestamp
- **updatedAt** `string` (required) — When the subtask was last updated, as an ISO 8601 timestamp
- **relationships** `object` (required) — JSON:API relationship pointers to related records as {id,type} stubs. Not materialized — follow the pointer by calling that resource's own tool (type 'task' -> get-task).
  - **task** `object | null` (required) — Parent task pointer (type 'task'); null when unreported
    - **id** `string` (required) — ID of the referenced Lawmatics record
    - **type** `string` (required) — JSON:API record class of the reference (e.g. "user", "contact", "prospect", "firm"); resolve it by calling that resource's own get/find tool — this pointer is not materialized
