---
title: "Get Component Specs"
method: GET
path: "/v1/components/{component_id}/specs"
tags: ["v1", "components"]
---

# Get Component Specs

`GET /v1/components/{component_id}/specs`

## Request

- Base URL: `https://thrustlab.com`
- URL: `https://thrustlab.com/v1/components/{component_id}/specs`
- Auth: HTTP bearer

One component's full datasheet. No tier, no challenge, no budget (D5).

This endpoint used to be the narrow, metered door to the catalog: free tier
402, paid tiers a Turnstile challenge plus a per-account budget of DISTINCT
components per hour and per day, on the reasoning that the datasheet values
were the product and had to be defended from a scraper.

That reasoning is reversed (2026-09-17). The database is the thing worth
publishing, not the thing worth hoarding: a component catalog that anybody
can read, cite and link to is how the product gets found, and the paid tiers
now sell the geometry model, dynamic runs, batch, FMU and CAD instead. So the
capability check, the challenge, the lease and the budget headers are all
gone, and the projection is the same one the list and detail reads return.

The caller's own custom component still returns its raw ``spec_json`` — that
is their data, not the catalog's, and it may carry fields no catalog row has.

## Path parameters

- `component_id` string, required

## Response `200`

Successful Response

- ComponentSpecsResponse: The Turnstile-leased datasheet readout (spec gating, 2026-08-30). ``spec_json`` is the DATASHEET projection (``_CATALOG_DATASHEET_KEYS``) for a catalog motor/battery, the headline projection for other catalog types, and the raw spec for the caller's own custom row. Never carries a catalog row's ``inertia`` / ``L`` / battery resistances — those are absent from every allowlist this response can be built from.
  - `id` string, required
  - `object` string
  - `spec_json` object, required
  - `type` 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)
