API Documentation
Public JSON API — v1
Live documentation — reflects actual deployed API
Overview
All endpoints are unauthenticated and read-only. Only published issues and updates are returned — drafts and unpublished content are never exposed. No API key is required.
https://ai24-updates.vercel.app/api/v1Also available:
- OpenAPI 3.1 spec: https://ai24-updates.vercel.app/openapi.json
- RSS Feed:
https://ai24-updates.vercel.app/feed.xml - Issue Markdown:
https://ai24-updates.vercel.app/updates/{}slug.md(internally served fromhttps://ai24-updates.vercel.app/updates/{}slug/md) - LLM navigation hints:
https://ai24-updates.vercel.app/llms.txt
Cursor Pagination
All list endpoints use stable cursor pagination. Pass the next_cursor value from any response as the cursor query parameter in the next request.
For /api/v1/issues, the cursor is an ISO 8601 UTC scheduled_at timestamp. Issues are returned with scheduled_at < cursor (strictly before, newest first).
For /api/v1/updates and /api/v1/search, the cursor encodes both the issue's scheduled time and the update's position within the issue, in the format <scheduled_at>__<position>.
When has_more is false, you have reached the end of the result set.
Errors
All errors return JSON with a consistent shape:
{
"error": "Human-readable description",
"code": "machine_readable_code"
}Common HTTP status codes: 400 (bad request / invalid params), 404 (not found), 500 (server error).
Endpoints
Field Reference
Fields never exposed in any public endpoint:
approved_by— internal admin user UUIDstatus— only published issues are returned; the field is not includedcover_path— raw storage path; a servedcover_urlis returned insteadpayload_hash— internal idempotency field