> ## Documentation Index
> Fetch the complete documentation index at: https://docs.outkit.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# GET /components

> List available component types

Returns the component types available for your API key and plan.

## Request

```bash theme={null}
curl https://api.outkit.dev/components \
  -H "x-outkit-api-key: your-api-key"
```

No request body or parameters required.

## Response

```json theme={null}
{
  "specVersion": "1.0",
  "components": [
    { "name": "table",     "description": "Structured data in rows and columns" },
    { "name": "card",      "description": "Single entity with structured attributes" },
    { "name": "alert",     "description": "Warnings, caveats, important notices" },
    { "name": "checkbox",  "description": "Checklists and to-do items" },
    { "name": "accordion", "description": "Collapsible FAQ-style sections" },
    { "name": "tabs",      "description": "Parallel alternatives and categories" },
    { "name": "steps",     "description": "Numbered processes, workflows, setup guides" },
    { "name": "timeline",  "description": "Chronological events and milestones" },
    { "name": "line",      "description": "Trends, time series, continuous data" },
    { "name": "bar",       "description": "Comparisons, distributions, rankings" },
    { "name": "progress",  "description": "Scores, ratings, completion percentages" }
  ]
}
```

### Response Fields

<ResponseField name="specVersion" type="string">
  The Outkit spec version. Currently `"1.0"`.
</ResponseField>

<ResponseField name="components" type="array">
  Array of available component types.

  <Expandable title="Component fields">
    <ResponseField name="name" type="string">
      The component identifier. Use this as the value in `preferences.preferredTypes` when calling `/render/enhance`.
    </ResponseField>

    <ResponseField name="description" type="string">
      What kind of content maps to this component type.
    </ResponseField>
  </Expandable>
</ResponseField>
