Endpoint reference

All endpoints of the Sanctumel public API: churches, events, announcements, live and Bible - parameters, examples and responses.

2026-07-05

Base: https://api.sanctumel.com. All church endpoints require the Authorization: Bearer sk_live_… header (get a key) and only return churches with a public profile. The Bible endpoints are open (no key).

Churches

GET /api/public/v1/churches/{slug}

Public profile of the church.

curl https://api.sanctumel.com/api/public/v1/churches/mon-eglise \
  -H "Authorization: Bearer sk_live_…"

Response:

{
  "slug": "mon-eglise",
  "name": "Mon Église",
  "bio": "…",
  "denomination": "…",
  "logoUrl": "https://…",
  "coverImageUrl": "https://…",
  "city": "Bruxelles",
  "country": "BE",
  "language": "fr",
  "website": "https://…",
  "publicPage": "https://sanctumel.com/p/…"
}

GET /api/public/v1/churches/{slug}/events

Upcoming published and public events (50 max, sorted by date). Ideal for the "Calendar" page of your website.

[
  {
    "name": "Culte de louange",
    "slug": "culte-louange",
    "description": "…",
    "startDate": "2026-07-11T10:00",
    "endDate": "2026-07-11T13:00",
    "location": "Salle principale",
    "coverImageUrl": null,
    "isFree": true,
    "registrationPage": "https://sanctumel.com/events/culte-louange"
  }
]

Tip: registrationPage points to the Sanctumel ticketing page - a simple link is enough for your visitors to register.

GET /api/public/v1/churches/{slug}/posts

Public announcements of the church, paginated.

ParameterTypeDefaultDescription
pageinteger0Page number
sizeinteger10Page size (max 50)
curl "https://api.sanctumel.com/api/public/v1/churches/mon-eglise/posts?page=0&size=5" \
  -H "Authorization: Bearer sk_live_…"

GET /api/public/v1/churches/{slug}/live

Live status (radio or video) - perfect for a "🔴 Live" badge on your website.

{
  "isLive": true,
  "isVideo": true,
  "stationName": "Radio Mon Église",
  "listenPage": "https://sanctumel.com/radio/…"
}

GET /api/public/v1/churches/{slug}/library

The church's public library (books, PDFs for sale or reading). Parameters: type (e.g. PDF), page, size (max 50). Paginated response.

GET /api/public/v1/churches/{slug}/store

Public store: products visible on the church's /p page, with price (starting at, if variants) and a productPage link to the Sanctumel product page.

GET /api/public/v1/churches/{slug}/gallery

Public photo albums. Then GET …/gallery/{albumId}/photos for an album's photos.

Bible (no key)

Five public-domain versions: LSG (French), KJV (English), RVR (Spanish), BLIVRE (Portuguese), STV - Statenvertaling (Dutch). The lang parameter (fr, en, es, pt, nl) selects the version.

Abbreviations: they come from /api/v1/bible/books?lang=… and may vary by language (John = Jn). Always use the ones returned by /books.

GET /api/v1/bible/versions

List of available versions.

GET /api/v1/bible/books?lang=fr

The 66 books with their abbreviations and chapter counts.

GET /api/v1/bible/{abbr}/{chapter}?lang=fr

A whole chapter. Example - John 3 in French:

curl "https://api.sanctumel.com/api/v1/bible/Jn/3?lang=fr"

GET /api/v1/bible/{abbr}/{chapter}/{from}/{to}?lang=fr

A range of verses. Example - John 3:16-17:

curl "https://api.sanctumel.com/api/v1/bible/Jn/3/16/17?lang=fr"

GET /api/v1/bible/search?q=amour&lang=fr

Full-text search in the version of the requested language.

Reminders

  • Read-only: any method other than GET returns 405.
  • Rate limit: 120 requests/minute per key (429 beyond that) - use caching.
  • Privacy: the API never exposes a church's members, finances or donations, and only churches with a public profile.

Going further

Need help?
Quick answers and support in your language.
Help center