The catalog API.
Everything public on the website is available as JSON. Responses never contain Pro source unless the request is authorized.
| GET | /api/v1/assets | Search. Query: q, kind, tier, tag, sort (featured|newest|popular|name), page, per_page (≤60). |
| GET | /api/v1/assets/:slug | One asset’s public documentation. Add ?format=md for Markdown. |
| GET | /api/v1/assets/:slug/source | Source files. Free: public. Pro: Bearer token with an active subscription. |
| GET | /r/:slug.json | shadcn registry item. Same access rules as /source. |
| GET | /llms.txt | Index for language models; /llms-full.txt has every asset’s docs. |
curl "https://sundaeui.dev/api/v1/assets?q=pricing&tier=free"
curl -H "Authorization: Bearer $SUNDAE_TOKEN" \
"https://sundaeui.dev/api/v1/assets/ledger-pricing/source"Errors
Errors are JSON: { "error": "auth_required" | "pro_required" | "not_found", "message": "…" } with status 401, 403 or 404. Search and documentation responses are cached for up to five minutes. Source responses for Pro are never cached.