---
title: "List Milestones that belong to the specified Engagement"
method: GET
path: "/v1/engagements/{uuid}/milestones"
tags: ["milestones", "engagements"]
---

# List Milestones that belong to the specified Engagement

`GET /v1/engagements/{uuid}/milestones`

## Path parameters

- `uuid` string, uuid, required

## Query parameters

- `associated_engagement_status` 'Pending' | 'In Progress' | 'Complete' | 'Archived' — An optional association to an Engagement lifecycle phase. It does not change the Engagement's current status or determine Milestone completion.
- `client_can_view` boolean
- `is_completed` boolean
- `sort_by` 'created_at' | 'sequence'
- `page` number, nullable
- `per_page` number, nullable
- `sort_order` 'asc' | 'desc'

## Response `200`

The visible Milestones for the Engagement

- object
  - `data` MilestoneRead[], required
    - `uuid` string, uuid, required
    - `engagement_uuid` string, uuid, required — UUID of the Engagement that owns this Milestone.
    - `name` string, required
    - `sequence` integer, required — The Milestone's display order within its Engagement.
    - `associated_engagement_status` 'Pending' | 'In Progress' | 'Complete' | 'Archived', required — An optional association to an Engagement lifecycle phase. It does not change the Engagement's current status or determine Milestone completion.
    - `due_date` string, date, nullable, required
    - `completed_at` string, date-time, nullable, required — The authoritative completion indicator. Null means the Milestone is incomplete.
    - `completed_by_user_uuid` string, uuid, nullable, required — UUID of the user who completed the Milestone.
    - `owner_user_uuid` string, uuid, nullable, required — UUID of the user assigned to own the Milestone.
    - `client_can_view` boolean, required — Whether client users can view the Milestone.
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `_links` MilestoneReadLinks, required
      - `self` HalLink, required
        - `href` string, uri, required
        - `title` string — A human-readable title for the link
        - `type` string, required — The content-type
      - `collection` HalLink, required
        - `href` string, uri, required
        - `title` string — A human-readable title for the link
        - `type` string, required — The content-type
      - `engagement` HalLink, required
        - `href` string, uri, required
        - `title` string — A human-readable title for the link
        - `type` string, required — The content-type
      - `fieldguide` HalLink, required
        - `href` string, uri, required
        - `title` string — A human-readable title for the link
        - `type` string, required — The content-type
  - `_links` object, required
    - `self` object, required — The URL for the current page being fetched
      - `href` string
    - `first` object, required — The URL for the first page of the set
      - `href` string
    - `last` object, required — The URL for the last page of the set
      - `href` string
    - `previous` object — The URL for the previous page in the set, if there is one
      - `href` string
    - `next` object — The URL for the next page in the set, if there is one
      - `href` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden Forbidden (requires scopes `milestones:read`)
- `404` — Resource not found
- `429` — Too many requests

---

[API](https://skmtc.net/fieldguide/apis/fieldguide-api.md) · [All operations](https://skmtc.net/fieldguide/apis/fieldguide-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fieldguide/fieldguide-api/revisions/6f6009a58cdd/schema)
