---
title: "Read one task"
method: GET
path: "/v1/tasks/{id}"
tags: ["tasks"]
---

# Read one task

`GET /v1/tasks/{id}`

## Request

- Base URL: `https://api.indraft.io`
- URL: `https://api.indraft.io/v1/tasks/{id}`
- Auth: HTTP bearer

One task by its id, including the records it is linked to. A task can hang off several records at once, which is how a follow-up that concerns two accounts stays visible on both.

## Path parameters

- `id` string, required

## Response `200`

Success

- object
  - `task` object, required
    - `id` string, required
    - `title` string, required
    - `status` 'open' | 'done' | 'cancelled', required
    - `assigneeActorId` string, required
    - `assignee` object
      - `id` string, required
      - `kind` 'human' | 'agent' | 'api_token' | 'system', required
      - `label` string, required
    - `dueAt` string, required
    - `priority` 'low' | 'normal' | 'high', required
    - `completedAt` string, required
    - `ownerActorId` string, required
    - `version` integer, required
    - `links` object[], required
      - `objectType` 'company' | 'contact' | 'opportunity', required
      - `objectId` string, required
    - `createdAt` string, required
    - `updatedAt` string, required
    - `archivedAt` string, required
  - `derived` object[], required
    - `name` string, required
    - `value` integer, required
    - `unit` 'minor_units' | 'days', required
    - `currency` string, required
    - `inputs` object, required
  - `standing` object, required: Per field: which kind of claim is standing on it, who asserted it, and when. This is the provenance the product is sold on, keyed by column name so it lines up with `changes`, `held[]` and the unconfirmed queue. `confirmed` means a person checked it and outranks everything an agent can assert; `inferred` is the weakest and is what an agent's own conclusion should carry. A write whose claim ranks below what is here is held rather than applied.
  - `requestId` string, required

## Other responses

- `401`: No credential, or one that has been revoked.
- `403`: Authenticated, and this capability is not held.
- `404`: No such record, or it belongs to another workspace.
- `429`: Infrastructure protection tripped. This is not a product quota.
- `500`: A defect on our side. The hint says so, and carries an incident id.

---

[API](https://skmtc.dev/indraft/apis/indraft-api.md) · [All operations](https://skmtc.dev/indraft/apis/indraft-api/llms.txt) · [OpenAPI document](https://skmtc.dev/indraft/apis/indraft-api/revisions/d9bb05346d66?raw)
