AnalyzeData API & developer resources
AnalyzeData's public API is small and honest: the read-only endpoints below answer without authentication, and everything else — analysis itself runs from the workspace — is deliberately not exposed. There is no API key to request today.
Public endpoints
GET/api/v2/health
Service health and daily usage counters (?days=N for history, max 400).
GET/api/v2/insights
Aggregate, anonymous product-usage distributions — no per-user records exist behind it.
GET/api/v2/reports/{slug}
A published report by its unguessable share slug — possession of the link is the credential.
Machine-readable surfaces
- openapi.json — OpenAPI 3.1 description of the public API, including the typed error model.
- .well-known/api-catalog — RFC 9727 API catalog — the standard discovery document.
- llms.txt — Machine-readable site index with when-to-use guidance for AI agents.
- sitemap.xml — Every indexable URL.
Every page on this site also serves a Markdown representation to Accept: text/markdown — the cheapest way for an agent to read the content:
curl -H "Accept: text/markdown" https://analyzedata.io/
Rate limits
Public reads are limited per IP — 600 requests per hour on an hourly sliding window. Every response carries RateLimit-Limit and RateLimit-Remaining headers; past the limit you get 429 with a JSON body. Pace yourself off the headers and you will never see it.
Errors
Every API error is JSON problem details (RFC 9457): { type, title, status, detail }. Unknown API paths return this shape with 404 — never an HTML page.
Versioning & deprecation
The current version is v2, carried in the URL path. Breaking changes only ever ship under a new path prefix. When a version is retired, it keeps working for at least 90 days and announces the date with Deprecation and Sunset headers before removal.
Questions or need more than the public reads offer? Contact us — we would rather hear what you are building than have you scrape around the limits.