Access Input Atlas prompts programmatically with our public API. No authentication required.
Base URL: /api/v1
Format: JSON
Authentication: None required
Rate Limit: 100 requests per hour per IP address
/promptsList prompts with optional search, filters, and pagination.
q - Search query (searches title, description, text)category - Filter by category (exact match)tags - Comma-separated tag slugs (requires all)sort - Sort order: newest (default) or alphabeticalpage - Page number (default: 1)limit - Items per page (default: 20, max: 100)GET /api/v1/prompts?q=email&limit=10&sort=alphabetical{
"success": true,
"data": [
{
"id": "...",
"slug": "email-response-generator",
"title": "Email Response Generator",
"description": "...",
"prompt_text": null,
"resolved_text": "...",
"category": "Writing",
"author_name": "...",
"author_url": null,
"tags": [
{ "slug": "email", "name": "email" }
],
"is_compound": true,
"featured": true,
"created_at": "2025-11-26T16:10:00.000Z",
"updated_at": "2025-11-26T16:10:00.000Z"
}
],
"meta": {
"page": 1,
"limit": 10,
"total": 45,
"totalPages": 5
}
}/prompts/:identifierGet a single prompt by slug or UUID.
GET /api/v1/prompts/email-response-generatorGET /api/v1/prompts/550e8400-e29b-41d4-a716-446655440000/categoriesGet all prompt categories.
{
"success": true,
"data": ["Coding", "Writing", "Research", ...]
}/tagsGet popular tags sorted by usage.
limit - Number of tags to return (default: 50, max: 100){
"success": true,
"data": [
{
"id": "...",
"slug": "ai",
"name": "AI"
},
...
]
}The API is rate limited to 100 requests per hour per IP address.
When you exceed the limit, you'll receive a 429 Too Many Requests response with a Retry-After header indicating when you can make requests again.
HTTP/1.1 429 Too Many Requests
Retry-After: 3600
{
"success": false,
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "Too many requests. Please try again in 60 minutes."
}
}The API supports Cross-Origin Resource Sharing (CORS) and can be accessed from any domain. All responses include the appropriate CORS headers.
All error responses follow this format:
{
"success": false,
"error": {
"code": "ERROR_CODE",
"message": "Human-readable error message"
}
}Common error codes: NOT_FOUND, INVALID_LIMIT, INVALID_PAGE, INVALID_SORT, RATE_LIMIT_EXCEEDED, INTERNAL_ERROR