Developers
Public read-only access to our published content — blog posts and case studies in English and Spanish. No authentication required.
What this API is
The same content that renders this website is available as JSON through a read-only REST API. Only published documents are returned — drafts, internal fields, and administrative operations are never exposed. Use it to index our writing, feed an agent, or pull our case studies into your own tools.
Endpoints
| Endpoint | Returns |
|---|---|
GET /api/posts | Published posts — paginated docs[] |
GET /api/case-studies | Published case studies — paginated docs[] |
GET /api/posts/{id} · /api/case-studies/{id} | A single published document |
GET /api/media/file/{filename} | Media assets referenced by content |
Useful query parameters
locale—en|eswhere[slug][equals]— fetch one document by sluglimit,page,sort— pagination & orderingdepth— relationship population (0–3)select— comma-separated fields
Example
Fetch the ten most recent English posts:
curl "https://v2.kiranalabs.com/api/posts?locale=en&limit=10&sort=-publishedAt&select=title,slug,excerpt,publishedAt"Markdown twins
Every page on this site also serves a markdown representation: append .md to its URL (for example /index.md or /blog/your-article.md), or send Accept: text/markdown. The llms.txt index lists everything published.
Machine-readable resources
/openapi.json— OpenAPI 3.1 spec/llms.txt— content index for agents/feeds/schema.jsonl— JSON-LD feed/.well-known/agent-skills/index.json— capabilities index
Access
Reads are public and unauthenticated. Writes, drafts, inquiries, and the internal GraphQL endpoint are private. If you need to publish or integrate programmatically, reach out through the contact form and ask about API keys.