# Get task by ID

**Retrieve a specific task by its unique identifier**
Returns full task details including the associated task type, assignee staff
member, and parent job reference.
**Real Example:**

```bash
curl --location 'https://{{host}}/v1/task/456' \
--header 'Authorization: Bearer {{token}}'
```

Endpoint: GET /v1/task/{id}
Version: 1.0.0
Security: BearerAuth

## Path parameters:

  - `id` (integer, required)
    Unique identifier of the task

## Response 200 fields (application/json):

  - `tasks` (array)
    Single-element array containing the matching task (empty if not found)

  - `tasks.id` (integer)
    Unique identifier of the task
    Example: 456

  - `tasks.name` (string)
    Task name
    Example: Q4 Financial Statement Review

  - `tasks.overrideName` (string)
    Optional name that overrides the default task name
    Example: null

  - `tasks.status` (string)
    Current status of the task
    Example: IN_PROGRESS

  - `tasks.pmsRef` (string)
    Practice management system reference identifier
    Example: TASK-001

  - `tasks.jobId` (integer)
    ID of the job this task belongs to
    Example: 67890

  - `tasks.taskTypeId` (integer)
    ID of the task type
    Example: 1

  - `tasks.assigneeStaffId` (integer)
    ID of the staff member assigned to this task
    Example: 123

  - `tasks.startDate` (string)
    Actual start date of the task
    Example: 2024-10-01

  - `tasks.dueDate` (string)
    Actual due date of the task
    Example: 2024-12-31

  - `tasks.targetStartDate` (string)
    Planned target start date
    Example: 2024-09-15

  - `tasks.targetDueDate` (string)
    Planned target due date
    Example: 2024-12-15

  - `tasks.estimatedHours` (number)
    Estimated hours to complete the task
    Example: 40

  - `tasks.completedAt` (string)
    Timestamp when the task was completed
    Example: null

  - `tasks.description` (string)
    Detailed description of the task
    Example: Review and analyse Q4 financial statements including variance analysis

  - `tasks.ordinal` (integer)
    Display order position of the task
    Example: 1

  - `tasks.parentTaskId` (integer)
    ID of the parent task if this is a subtask
    Example: null

  - `tasks.jobTemplateTaskId` (integer)
    ID of the job template task this was created from
    Example: 10

  - `tasks.isCreatedByAiwyn` (boolean)
    Whether this task was created by Aiwyn
    Example: false

  - `tasks.isManagedByAiwyn` (boolean)
    Whether this task is managed by Aiwyn
    Example: false

  - `tasks.createdAt` (string)
    Timestamp when the task was created
    Example: 2024-09-01T08:00:00Z

  - `tasks.updatedAt` (string)
    Timestamp when the task was last updated
    Example: 2024-10-01T09:30:00Z

  - `tasks.taskType` (object)
    The task type associated with this task

  - `tasks.taskType.id` (integer)
    Example: 1

  - `tasks.taskType.code` (string)
    Example: TXPRP

  - `tasks.taskType.display` (string)
    Example: Tax Preparation

  - `tasks.taskType.billable` (boolean)
    Example: true

  - `tasks.taskType.taxable` (boolean)
    Example: false

  - `tasks.taskType.active` (boolean)
    Example: true

  - `tasks.assigneeStaff` (object)
    The staff member assigned to this task

  - `tasks.assigneeStaff.id` (integer)
    Example: 123

  - `tasks.assigneeStaff.firstName` (string)
    Example: John

  - `tasks.assigneeStaff.lastName` (string)
    Example: Smith

  - `tasks.assigneeStaff.email` (string)
    Example: john.smith@firm.com

  - `tasks.job` (object)
    The job this task belongs to

  - `tasks.job.id` (integer)
    Example: 67890

