---
title: "Get Part Annotations"
method: GET
path: "/api/v1/admin/parts/{part_id}/annotations"
tags: ["admin-annotations"]
---

# Get Part Annotations

`GET /api/v1/admin/parts/{part_id}/annotations`

Return all user annotations for a part, grouped by feature_id.

Requires ``projects:view`` permission.

## Path parameters

- `part_id` string, uuid, required

## Response `200`

Successful Response

- PartAnnotationBundle
  - `part_id` string, uuid, required
  - `version_id` string, uuid, required
  - `version_number` integer, required
  - `thumbnail_url` string, nullable
  - `annotated_features` FeatureAnnotationSummary[], required
    - `feature_id` string, required
    - `feature_type` string, required
    - `feature_subtype` string, nullable
    - `dimensions` object, required
    - `confidence` number, nullable
    - `notes` FeatureNote[], required
      - `id` string, uuid, required
      - `note` string, required
      - `author` string, required
      - `created_at` string, date-time, required
    - `tolerances` ToleranceSpec[], required
      - `id` string, uuid, required
      - `tolerance_type` string, required
      - `data` object, required
      - `created_at` string, date-time, required
    - `reclassifications` Reclassification[], required
      - `id` string, uuid, required
      - `new_type` string, required
      - `is_confirmation` boolean
      - `reason` string, nullable
      - `created_at` string, date-time, required
    - `dfm_acknowledgments` DfmAcknowledgment[], required
      - `id` string, uuid, required
      - `action` string, required
      - `finding_id` string, nullable
      - `reason` string, nullable
      - `outcome_type` string, required
      - `created_at` string, date-time, required
    - `callouts` CalloutSummary[], required
      - `id` string, uuid, required
      - `callout_type` string, required
      - `severity` string, required
      - `title` string, required
      - `body` string, nullable
      - `state` string, required
      - `answered` boolean, required
      - `answer_text` string, nullable
    - `has_surface_finish` boolean
  - `unannotated_feature_count` integer, required
  - `part_level_notes` FeatureNote[], required
    - `id` string, uuid, required
    - `note` string, required
    - `author` string, required
    - `created_at` string, date-time, required
  - `design_intent` DesignIntentSummary
    - `purpose` string, nullable
    - `primary_function` string, nullable
    - `environment` string, nullable
    - `critical_features` object[], required
    - `mating_surfaces` object[], required
    - `load_paths` object[], required
    - `tolerance_rationale` object[], required
    - `free_text_notes` string, nullable
    - `interview_status` string, required
  - `welds` WeldSummary[]
    - `weld_id` string, uuid, required
    - `edge_id` string, required
    - `weld_type` string, required
    - `size_mm` number, required
    - `length_mm` number, nullable
    - `process` string, nullable
    - `side` string
    - `all_around` boolean
    - `notes` string, nullable
    - `label` string, required
    - `state` string, required
    - `source` string, required
    - `created_at` string, date-time, required
  - `total_welds` integer
  - `surface_finishes` SurfaceFinishSummary[]
    - `id` string, uuid, required
    - `face_id` string, required
    - `finish_type` string, required
    - `ra_um` number, nullable
    - `custom_color_hex` string, nullable
    - `notes` string, nullable
    - `label` string, required
    - `author` string, nullable
    - `source` string, required
    - `state` string, required
    - `is_process_mismatch` boolean
    - `created_at` string, date-time, required
    - `feature_id` string, nullable
  - `total_surface_finishes` integer
  - `edge_tolerances` EdgeToleranceSummary[]
    - `id` string, uuid, required
    - `edge_id` string, required
    - `tolerance_type` string, required
    - `size_mm` number, nullable
    - `angle_deg` number, nullable
    - `notes` string, nullable
    - `label` string, required
    - `author` string, nullable
    - `source` string, required
    - `state` string, required
    - `created_at` string, date-time, required
  - `total_edge_tolerances` integer
  - `total_notes` integer, required
  - `total_tolerances` integer, required
  - `total_reclassifications` integer, required
  - `total_callouts` integer, required

## Other responses

- `422` — Validation Error

---

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