Developers / API
The AI Career Lab API
A free, read-only JSON API for everything on this site: which AI tools, free Claude Cowork plugins, paid packs, and guides exist for a given profession. Built for AI agents, answer engines, and anyone integrating our catalog. No API key, no rate-limit paperwork — fair use.
- Base URL
https://theaicareerlab.com/api/v1- OpenAPI 3.1 spec
- /openapi.json (also at
/api/openapi.json) - Version
1.0.0— sent back asX-API-Version- Authentication
- None. All endpoints are public and read-only (GET only).
- Caching & CORS
- Responses are cached for 1 hour at the CDN and are CORS-open (
*). - Agent context
- /llms.txt · /llms-full.txt · ai-plugin.json
Endpoints
Every operation has a unique operationId, typed parameters, and response schemas in the OpenAPI document — drop it straight into a function-calling or MCP tool converter.
| Endpoint | operationId | What it returns |
|---|---|---|
GET /api/v1 | getApiIndex | Lists every collection endpoint with a description, plus links to the OpenAPI document and docs. |
GET /api/v1/categories | listCategories | Returns the industry categories professions are grouped into, with counts. |
GET /api/v1/professions?category? | listProfessions | Returns every profession with its tool count, free plugin slug, paid pack (if shipped), and waitlist URL (if not). |
GET /api/v1/professions/{slug} | getProfession | Full profile for one profession: pain points, AI use cases, its free tools, its plugin, and related posts. |
GET /api/v1/tools?profession? | listTools | Returns free AI tools, optionally filtered to one profession. |
GET /api/v1/tools/{slug} | getTool | Full detail for one tool, including features, related tools, and how to run it. |
GET /api/v1/plugins | listPlugins | Returns every free open-source Claude Cowork / Claude Code plugin with its install command. |
GET /api/v1/plugins/{slug} | getPlugin | Full detail for one plugin: commands, skills, and usage examples. |
GET /api/v1/products | listProducts | Returns every paid pack and bundle with USD price and checkout URL. Every paid pack ships as a Claude Cowork plugin plus all prompts as HTML usable in any AI tool. |
GET /api/v1/posts?profession??category??limit? | listPosts | Returns blog posts newest-first, optionally filtered by profession slug or category. |
GET /api/v1/posts/{slug} | getPost | One post with its full Markdown body and FAQ. |
GET /api/v1/search?q?limit? | search | Case-insensitive keyword search across professions, tools, plugins, and posts. |
Examples
# Which AI tools exist for real estate agents?
curl https://theaicareerlab.com/api/v1/tools?profession=real-estate
# Everything about one profession (tools, plugin, pack, posts)
curl https://theaicareerlab.com/api/v1/professions/pharmacist
# Search the whole catalog
curl "https://theaicareerlab.com/api/v1/search?q=soap%20note"
# A guide as Markdown (any HTML page works the same way)
curl -H "Accept: text/markdown" https://theaicareerlab.com/professions/real-estateErrors
Every error — including unknown /api/* paths — is an RFC 9457 problem document served as application/problem+json. code is stable and safe to switch on; resolution tells you what to try next.
{
"type": "https://theaicareerlab.com/developers/api#errors",
"title": "Resource not found",
"status": 404,
"detail": "No profession with slug \"astronaut\".",
"instance": "/api/v1/professions/astronaut",
"code": "not_found",
"resolution": "List valid slugs at /api/v1/professions or search with /api/v1/search?q=…"
}not_found(404) — no resource with that slugapi_route_not_found(404) — no API route at that pathinvalid_parameter(400) — a query parameter failed validationmethod_not_allowed(405) — only GET is supported
Markdown for every page
Send Accept: text/markdown to any HTML URL on this site and you get a clean Markdown rendition of the same page (status codes preserved, Vary: Accept set). Blog posts also have a permanent Markdown companion at /blog/<slug>/raw.
Terms
Free for fair use with attribution to The AI Career Lab. Please cache responses (they are already cacheable for an hour) and don't poll faster than once a minute. Questions: [email protected] or support. See our terms and privacy policy.