---
title: "Get a scheduling task"
method: GET
path: "/v1/tasks/{taskId}"
tags: ["Scheduling Task"]
---

# Get a scheduling task

`GET /v1/tasks/{taskId}`

Returns one scheduling task with its application, stage, assignee, queue, tags, flags, delegation, notes, and timing metadata. The task must belong to the authenticated organization or the request returns not found.

## Path parameters

- `taskId` string, required — a task ID. Accepts the canonical prefixed compact UUID, a prefixed dashed UUID, a bare dashed UUID, or a bare compact UUID; input is case-insensitive.

## Response `200`

Success

- SchedulingTask
  - `id` string, required — Canonical task ID (tsk_ followed by 32 lowercase hexadecimal UUID characters).
  - `application` object, required
    - `id` string, required — Canonical application ID (app_ followed by 32 lowercase hexadecimal UUID characters).
    - `candidate` object, required
      - `id` string, required — Canonical candidate ID (can_ followed by 32 lowercase hexadecimal UUID characters).
      - `name` string, required
    - `job` object, required
      - `id` string, required — Canonical job ID (job_ followed by 32 lowercase hexadecimal UUID characters).
      - `name` string, required
  - `job_stage` object, required
    - `id` string, required — Canonical job stage ID (stg_ followed by 32 lowercase hexadecimal UUID characters).
    - `name` string, required
  - `status` 'NEEDS_AVAILABILITY' | 'WAITING_FOR_CANDIDATE' | 'READY_TO_SCHEDULE' | 'READY_TO_RESCHEDULE' | 'HOLD' | 'READY_TO_SEND_TO_CANDIDATE' | 'SCHEDULED' | 'COMPLETED' | 'CANCELED' | 'NEEDS_DEBRIEF', required
  - `is_urgent` boolean, required
  - `assignee` object, nullable, required
    - `id` string, required — Canonical employee ID (emp_ followed by 32 lowercase hexadecimal UUID characters).
    - `name` string, required
  - `queue_id` string, nullable, required — Canonical task queue ID (que_ followed by 32 lowercase hexadecimal UUID characters).
  - `tags` string[], required
  - `flags` object[], required
    - `code` string, required
    - `message` string, required
    - `raised_at` string, date-time, required — ISO 8601 timestamp.
  - `is_debrief_required` boolean, required
  - `delegation` object, required
    - `type` 'NONE' | 'AGENT', required
    - `status` 'NONE' | 'QUEUED' | 'ACTIVE' | 'WAITING_ON_CANDIDATE' | 'WAITING_ON_TEAM' | 'COMPLETED' | 'STOPPED', required
  - `notes` object[], required
    - `id` string, required
    - `author` object, required
      - `id` string, required — Canonical employee ID (emp_ followed by 32 lowercase hexadecimal UUID characters).
      - `name` string, required
    - `body` string, required
    - `created_at` string, date-time, required — ISO 8601 timestamp.
  - `created_at` string, date-time, required — ISO 8601 timestamp.
  - `updated_at` string, date-time, required — ISO 8601 timestamp.
  - `app_url` string, uri, required

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `409` — Conflict
- `410` — Gone
- `500` — Internal error

---

[API](https://skmtc.dev/modernloop/apis/modernloop-platform-api.md) · [All operations](https://skmtc.dev/modernloop/apis/modernloop-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/modernloop/modernloop-platform-api/revisions/33a0f9f44e4c/schema)
