---
title: "Star Component"
method: POST
path: "/v1/starred_components"
tags: ["v1", "starred_components"]
---

# Star Component

`POST /v1/starred_components`

## Request

- Base URL: `https://thrustlab.com`
- URL: `https://thrustlab.com/v1/starred_components`
- Auth: HTTP bearer

Star a component within a project.

Body fields: project_id (required, prefixed or UUID), component_id
(required, prefixed or UUID), component_type (motor|battery|propeller).

Both project_id and component_id accept prefixed or UUID forms — useful
during reference-app transition. Cross-user access returns 404s.

Returns the new starred_component resource (201).

Error 409 if the (project_id, component_id) pair is already starred.

## Request body

- StarredComponentCreateBody: Accepts either prefixed (``proj_<ksuid>`` / ``comp_<ksuid>``) or raw UUID strings — resolution happens in the handler so the same body shape works during the reference-app transition.
  - `component_id` string, required
  - `component_type` string, required
  - `project_id` string, required

## Response `201`

Successful Response

- StarredComponentResource
  - `component_id` string, required
  - `component_type` string, required
  - `created_at` string, date-time, required
  - `id` string, required
  - `object` string
  - `project_id` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/thrustlab/apis/thrustlab-api.md) · [All operations](https://skmtc.dev/thrustlab/apis/thrustlab-api/llms.txt) · [OpenAPI document](https://skmtc.dev/thrustlab/apis/thrustlab-api/revisions/c19717e52529?raw)
