---
title: "Retrieve a task"
description: "One task with its trigger, its settings, and when it last ran and will run next."
url: "https://openemail.uk/docs/api/tasks/get"
area: "API"
category: "Mailbox"
---

# Retrieve a task

One task with its trigger, its settings, and when it last ran and will run next.

`GET /tasks/{id}`

## GET /tasks/{id}

One task with its trigger, its settings, and when it last ran and will run next.

## Example

Needs `tasks:read`, `threads:read` and `emails:read`.

**curl**

```
curl "$OE/tasks/tsk_4b9e2c7a1f3d86e05a9c2b7d" -H "$AUTH"
```

**Response**

```
{
  "object": "task",
  "id": "tsk_4b9e2c7a1f3d86e05a9c2b7d",
  "name": "Morning summary",
  "instruction": "Go through the mail that arrived since yesterday. Tell me which conversations need a reply from me, most urgent first, and draft a short reply for each.",
  "status": "active",
  "pausedReason": null,
  "trigger": {
    "kind": "schedule",
    "schedule": {
      "cadence": "daily",
      "everyHours": 1,
      "hour": 8,
      "minute": 0,
      "weekdays": [1, 2, 3, 4, 5],
      "monthDay": 1,
      "timezone": "Europe/London"
    },
    "mail": null
  },
  "autonomy": "organize",
  "toolkits": ["notes", "drafts", "knowledge"],
  "model": "standard",
  "notify": "attention",
  "maxRunsPerDay": 50,
  "maxSteps": 20,
  "nextRunAt": "2026-10-14T07:00:00.000Z",
  "heldUntil": null,
  "lastRunAt": "2026-10-13T07:00:04.112Z",
  "lastRunStatus": "done",
  "runCount": 12,
  "pendingApprovals": 0,
  "createdAt": "2026-10-01T09:12:44.000Z",
  "updatedAt": "2026-10-13T07:01:10.530Z"
}
```

> `lastRunStatus` is the state of the newest run, so `waiting` means it has asked for something.

> A task that does not exist answers 404 `task_not_found`.

## Reference

- [`GET /tasks/{id}`](https://openemail.uk/docs/api/reference/tasks#get-tasks-id): full reference
