---
title: "List expanded"
method: GET
path: "/operations/operations_tasks/expanded/list/v1"
tags: ["/operations/operations_tasks"]
---

# List expanded

`GET /operations/operations_tasks/expanded/list/v1`

Lists OperationsTasks with task-list, department, and assigned-user details. | authz: min_org_role=operator | () -> (OperationsTaskExpandedListRes)

## Query parameters

- `sort_by` 'deadline_timestamp' | 'completed_at_timestamp'
- `sort_order` 'asc' | 'desc' — Sort order for query results
- `page` integer
- `page_size` integer
- `search` string, nullable — Search by title or description
- `filter_order_ids` string[], nullable — Filter to tasks on any of these order ids (e.g. the order_ids returned by the orders typeahead for a chosen short_id / off-chrt reference id)
- `filter_order_short_id` string, nullable — Filter to tasks for this order short ID
- `filter_order_off_chrt_reference_id` string, nullable — Must be a URL-safe string of 1-64 characters. Allowed characters: A-Z, a-z, 0-9, '.', '_', '~', '-' (RFC 3986 unreserved).
- `filter_department_id` string, nullable — Filter to tasks routed to this department (desk queue)
- `filter_task_type` OperationsTaskTypeEnum[], nullable — Filter by task type(s). Defaults to all types.
- `filter_status` OperationsTaskStatusEnum[], nullable — Filter by status(es). Defaults to all statuses.
- `filter_assigned_user_id` string, nullable — Must be a string starting with `user_`
- `filter_source_task_list_id` string, nullable — Filter to tasks created from this OperationsTaskList
- `filter_deadline_gte` string, date-time, nullable — Filter to tasks with deadline >= this timestamp
- `filter_deadline_lte` string, date-time, nullable — Filter to tasks with deadline <= this timestamp

## Response `200`

Successful Response

- OperationsTaskExpandedListRes
  - `items` OperationsTaskExpandedListItem[], required
    - `operations_task` OperationsTask1, required
      - `schema_version` 1, required
      - `order_id` string, required
      - `task_type` 'review_order_details' | 'flight_check' | 'facility_check' | 'weather_check' | 'book_cargo' | 'track_and_verify' | 'contact_customer' | 'contact_agent' | 'contact_airline' | 'contact_other' | 'finalize_billing' | 'custom' | 'other', required — Coarse functional buckets a dispatcher batch-processes (powers the per-type functional-queue index). Granular SOP specifics live in the Task's `title`/`description`, not here. Ordered roughly along the shipment lifecycle (review -> research -> book -> track/verify -> contact -> billing). The buckets are the distinct *modes of work* an operator sits down and batches; the exact SOP step (e.g. "Send Shipping Label", "CBC Call", "Get Pack Time") is captured in the title. Contact is split by *who* (customer, agent, airline, other), not by *channel* (call vs. email) — the recipient is what a dispatcher batches around, and the channel is captured in title/description detail.
      - `title` string, required
      - `description` string, required
      - `deadline_timestamp` string, date-time
      - `assigned_user_ids` string[]
      - `_id` string, required
      - `order_short_id` string, required
      - `order_off_chrt_reference_id` string, nullable — Must be a URL-safe string of 1-64 characters. Allowed characters: A-Z, a-z, 0-9, '.', '_', '~', '-' (RFC 3986 unreserved).
      - `org_id` string, required — Must be a string starting with `org_`
      - `department_id` string, nullable
      - `source_task_list_id` string, nullable
      - `status` 'not_started' | 'in_progress' | 'completed' | 'skipped' | 'cancelled' — Operator-driven lifecycle of an operations task. Manually driven by operators for now (no automatic transitions). Kept structurally parallel to the Check status model in anticipation of the eventual Task <-> Check merge.
      - `completed_at_timestamp` string, date-time, nullable
      - `completed_by_user_id` string, nullable — Must be a string starting with `user_`
      - `comments` OperationsTaskComment1[]
        - `id` string
        - `comment` string, required
        - `user_id` string, required — Must be a string starting with `user_`
        - `timestamp` string, date-time, required
    - `operations_task_list` OperationsTaskList1
      - `schema_version` 1, required
      - `name` string, required
      - `description` string, nullable
      - `entries` OperationsTaskListEntry1[]
        - `task_type` 'review_order_details' | 'flight_check' | 'facility_check' | 'weather_check' | 'book_cargo' | 'track_and_verify' | 'contact_customer' | 'contact_agent' | 'contact_airline' | 'contact_other' | 'finalize_billing' | 'custom' | 'other', required — Coarse functional buckets a dispatcher batch-processes (powers the per-type functional-queue index). Granular SOP specifics live in the Task's `title`/`description`, not here. Ordered roughly along the shipment lifecycle (review -> research -> book -> track/verify -> contact -> billing). The buckets are the distinct *modes of work* an operator sits down and batches; the exact SOP step (e.g. "Send Shipping Label", "CBC Call", "Get Pack Time") is captured in the title. Contact is split by *who* (customer, agent, airline, other), not by *channel* (call vs. email) — the recipient is what a dispatcher batches around, and the channel is captured in title/description detail.
        - `title` string, required
        - `description` string, required
        - `deadline_anchor` 'from_first_task' | 'from_previous_task' — What an entry's `deadline_offset_seconds` is measured from. Resolved in a single forward pass at apply time (see module docstring).
        - `deadline_offset_seconds` integer
        - `uuid` string
      - `_id` string, required
      - `org_id` string, required — Must be a string starting with `org_`
      - `archived` boolean
      - `created_by_user_id` string, required — Must be a string starting with `user_`
      - `created_at_timestamp` string, date-time, required
      - `updated_at_timestamp` string, date-time, required
    - `department` Department1 — unresolved $ref
    - `assigned_users` OrgMemberDetails[], required
      - `role` 'owner' | 'admin' | 'operator' | 'member', required — Organization roles used in authenticated caller claims. Hierarchy (highest to lowest): owner > admin > operator > member Role availability by org type: {owner, admin, operator, member} → PROVIDER | SHIPPER Note: Hierarchical enforcement depends on utils_shipping_authz helper functions. WorkOS role slugs match these enum values.
      - `user_id` string, required — Must be a string starting with `user_`
      - `first_name` string, nullable, required
      - `last_name` string, nullable, required
  - `total_count` integer, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/chrt/apis/chrt-fastapi.md) · [All operations](https://skmtc.dev/chrt/apis/chrt-fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/chrt/chrt-fastapi/revisions/ea04e157edb3/schema)
