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

# Quickstart

Enrich product data with source citations in under 2 minutes.

## 1. Get your API key

[dashboard.rastro.ai/settings/api-keys](https://dashboard.rastro.ai/settings/api-keys) → Create New Key → Copy it.

## 2. Enrich your first item

<CodeGroup>
  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://catalogapi.rastro.ai/api/public/enrich",
      headers={"Authorization": "Bearer YOUR_API_KEY"},
      json={
          "items": [{"part_number": "6205-2RS", "name": "Deep Groove Ball Bearing"}],
          "output_schema": [
              {"name": "bore_diameter", "type": "string", "description": "Inner diameter in mm"},
              {"name": "outer_diameter", "type": "string", "description": "Outer diameter in mm"},
              {"name": "manufacturer", "type": "string", "description": "Brand or manufacturer name"}
          ],
          "speed": "fast"
      }
  )
  print(response.json())
  ```

  ```bash cURL theme={null}
  curl -X POST "https://catalogapi.rastro.ai/api/public/enrich" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "items": [{"part_number": "6205-2RS", "name": "Deep Groove Ball Bearing"}],
      "output_schema": [
        {"name": "bore_diameter", "type": "string", "description": "Inner diameter in mm"},
        {"name": "outer_diameter", "type": "string", "description": "Outer diameter in mm"},
        {"name": "manufacturer", "type": "string", "description": "Brand or manufacturer name"}
      ],
      "speed": "fast"
    }'
  ```

  ```typescript TypeScript theme={null}
  const response = await fetch("https://catalogapi.rastro.ai/api/public/enrich", {
    method: "POST",
    headers: {
      "Authorization": "Bearer YOUR_API_KEY",
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      items: [{ part_number: "6205-2RS", name: "Deep Groove Ball Bearing" }],
      output_schema: [
        { name: "bore_diameter", type: "string", description: "Inner diameter in mm" },
        { name: "outer_diameter", type: "string", description: "Outer diameter in mm" },
        { name: "manufacturer", type: "string", description: "Brand or manufacturer name" }
      ],
      speed: "fast"
    })
  });
  console.log(await response.json());
  ```
</CodeGroup>

<Note>
  Use `"speed": "fast"` for quick testing. For production, omit `speed` or use `"deep"` for thorough results; `"slow"` is accepted as an alias.
</Note>

## 3. Get your results

```json theme={null}
{
  "job_id": "abc123-...",
  "results": [{
    "original_data": {"part_number": "6205-2RS", "name": "Deep Groove Ball Bearing"},
    "after_data": {
      "part_number": "6205-2RS",
      "name": "Deep Groove Ball Bearing",
      "bore_diameter": "25 mm",
      "outer_diameter": "52 mm",
      "manufacturer": "SKF",
      "sources": {
        "bore_diameter": ["https://skf.com/products/bearings/6205-2RS"],
        "outer_diameter": ["https://skf.com/products/bearings/6205-2RS"],
        "manufacturer": ["https://skf.com/products/bearings/6205-2RS"]
      }
    },
    "all_sources": ["https://skf.com/products/bearings/6205-2RS"]
  }],
  "total_items": 1,
  "successful": 1,
  "credits_used": 1,
  "status": "completed"
}
```

Each result includes `all_sources` — the URLs used to find the data.

***

<CardGroup cols={2}>
  <Card title="API Reference" icon="book" href="/enrich/reference">
    All parameters and response fields
  </Card>

  <Card title="More Examples" icon="code" href="/enrich/examples">
    Async mode, domain filtering, taxonomy, quality scoring
  </Card>

  <Card title="MCP Quickstart" icon="robot" href="/mcp/quickstart">
    Run this through Codex/Claude with activity-first review flow
  </Card>
</CardGroup>
