CuraVerto developer resources
CuraVerto does not run an open self-serve API for clinic records. What it publishes openly is its own documentation in machine-readable form, described by an OpenAPI file. Programmatic access to a clinic's own data is arranged per clinic under agreement.
Public, no authentication
Every endpoint below is read-only, needs no key and returns no patient or clinic data. They return CuraVerto's own published pages.
- GET /llms.txt and /llms-full.txt: an index of the site for AI agents, with guidance on when to use CuraVerto.
- GET /{page}.md: any marketing page as markdown, for example /pricing.md and /index.md.
- GET on a page URL with the header Accept: text/markdown returns the same markdown with Content-Type: text/markdown and Vary: Accept. Without that header you get HTML.
- GET /api/public/v1/pages: every published page as JSON (path, title, section, URL and markdown URL). Optional ?section= filter.
- GET /sitemap.xml: every indexable page.
- GET /openapi.json: the OpenAPI 3.1 description of the endpoints above.
Errors
Errors from the JSON endpoint and from /{page}.md are RFC 9457 application/problem+json documents with type, title, status, detail, a stable code and a resolution. The body never repeats the request path or query. Codes: not_found (404), method_not_allowed (405, with an Allow header), invalid_parameter (400) and internal_error (500).
{"type":"https://curaverto.com/developers#error-not_found","title":"Not found","status":404,"detail":"No resource exists at this address.","code":"not_found","resolution":"Fetch https://curaverto.com/openapi.json for the endpoints that exist."}Versioning, limits and deprecation
The JSON endpoint is versioned in its path (/api/public/v1/). Within a version, changes are additive only: fields may be added, never renamed or removed. A breaking change ships under a new path version, and a version being retired will send Deprecation and Sunset response headers. No version is deprecated today. The markdown and sitemap endpoints are conventions of the site and are not versioned. No request quota is enforced by the application today, so no rate-limit headers are returned; responses are cached for an hour.
Example request
curl -H "Accept: text/markdown" https://curaverto.com/pricingClinic data API
Reading or writing a clinic's own records (patients, appointments, invoices) through an API is a custom, per-clinic module set up under the clinic's agreement, with its own credentials and scope. It is not self-serve. To discuss it, write to sales@curaverto.com with the clinic name and the integration you need.
Messaging and payments
Patient messaging uses the official WhatsApp Cloud API through the clinic's own WhatsApp Business number. Online payments run through Razorpay. Neither is a separate developer product from CuraVerto.