← Back to overview

Documentation

Base URL

https://api.theholisticcare.com/v1

Authentication

None. This is a free, public, read-only API. No API key or signup required.

Pagination

List endpoints accept limit (default 20, max 100) and offset (default 0) query params. The response's pagination object reports total matching records.

GET /v1/whitepapers

Research citations behind The Holistic Care's content, one per real published study.

curl "https://api.theholisticcare.com/v1/whitepapers?topic=meditation&limit=10"

Query params: topic (mindfulness, meditation, yoga, sleep, nonduality, children, anxiety, physiology), study_type (rct, meta-analysis, observational, cohort, clinical-trial, physiological, guideline).

{
  "id": "...",
  "slug": "goyal-2014-meditation-programs",
  "type": "research_citation",
  "title": "Meditation Programs for Psychological Stress and Well-Being",
  "authors": "Goyal M, Singh S, Sibinga EMS, et al.",
  "year": 2014,
  "journal": "JAMA Internal Medicine",
  "study_type": "meta-analysis",
  "sample_size": "3,515 participants across 47 trials",
  "topic": "mindfulness",
  "summary": "...",
  "key_finding": "...",
  "limitations": "...",
  "source_url": "https://...",
  "updated_at": "2026-..."
}

GET /v1/whitepapers/:slug

Same shape as above, plus related_posts and related_terms arrays.

GET /v1/glossary

Plain-language definitions of mindfulness/yoga/nonduality terms.

curl "https://api.theholisticcare.com/v1/glossary?pillar=nonduality"

Query param: pillar (nonduality, yoga, meditation, kundalini, ayurveda, general-wisdom).

{
  "id": "...",
  "slug": "pranayama",
  "type": "glossary_term",
  "title": "Pranayama",
  "pillar": "yoga",
  "summary": "...",
  "etymology": "Sanskrit: ...",
  "also_known_as": ["..."],
  "updated_at": "2026-..."
}

GET /v1/glossary/:slug

Same shape, plus extended_explanation (a small portable-text block array), related_terms, and related_posts.

GET /v1/mindfulness-games

All 16 free, browser-based mindfulness games hosted on theholisticcare.com — no download, no app, no account.

curl "https://api.theholisticcare.com/v1/mindfulness-games?audience=children"

Query params: audience (children, teens, adults, educators, parents), skill (attention, body-awareness, breathwork, cognitive-reframing, emotional-regulation, gratitude, grounding, loving-kindness, mindful-listening, nondual-awareness, relaxation, self-compassion, sleep).

{
  "id": "...",
  "slug": "breathing-buddy",
  "type": "mindfulness_game",
  "api_id": "MG-001",
  "title": "Breathing Buddy",
  "url": "https://www.theholisticcare.com/games/breathing-buddy.html",
  "icon": "🫧",
  "tag": "Breathing",
  "description": "...",
  "free": true,
  "keywords": ["..."],
  "audiences": ["children"],
  "age_min": 5,
  "age_max": 12,
  "duration_minutes": 5,
  "skills": ["breathwork"],
  "updated_at": "2026-..."
}

GET /v1/mindfulness-games/:slug

Same shape as above, for a single game.

GET /v1/practices

All 111 free guided-audio practices from The Holistic Care's Stillness Library, each with a direct link to the MP3 file (hosted on Cloudflare R2 — this API never proxies the audio itself). The Stillness Library also has 47 paid tracks; those are never exposed by this endpoint or anywhere else in this API.

curl "https://api.theholisticcare.com/v1/practices?category=sleep"

Query param: category (mindfulness, children, breathwork, nondual-awareness, yoga-nidra, students, sleep).

{
  "id": "...",
  "slug": "letting-go-of-the-day",
  "type": "practice",
  "track_id": "SL-041",
  "title": "Letting Go of the Day",
  "category": "sleep",
  "excerpt": "...",
  "audio_url": "https://files.theholisticcare.com/stillness-library-free/letting-go-of-the-day.mp3",
  "read_time_minutes": 6,
  "canonical_url": "https://www.theholisticcare.com/stillness-library/letting-go-of-the-day",
  "updated_at": "2026-..."
}

GET /v1/practices/:slug

Same shape as above, plus a related_practices array (free practices only).

GET /v1/categories

Distinct topic values in use across whitepapers and pillar values in use across the glossary — a lightweight way to build a filter UI without guessing valid values.

Errors

StatuscodeMeaning
404not_foundNo public record exists at that slug.
429rate_limitedToo many requests from this IP recently.
500internal_errorSomething went wrong server-side. Safe to retry.

A note on record IDs

The id field currently returns Sanity's internal document ID. A dedicated, permanently stable public ID field is planned — do not build anything that assumes today's id values are permanent across a future migration. slug is the more durable identifier for now.
← Back to overview