Developer Documentation

The Bible API

A free, public REST API for programmatic access to the Bible. All responses are JSON.

Introduction

The Bible API is a serverless REST API hosted on Netlify. It exposes a small, predictable set of endpoints for retrieving books, chapters, individual verses, running full-text search, and fetching a rotating verse of the day.

Responses are returned as JSON with a consistent schema across every translation, making integration predictable and easy to reason about.

Base URL

Base URL
https://thebibleapi.netlify.app

All function endpoints are prefixed with /.netlify/functions/.

Authentication

None. The API is fully public - no keys, tokens, or sign-up required.

Available Translations

The Bible API supports 40+ Bible translations in multiple languages. Pass the translation query parameter to any endpoint to select a translation. If omitted, the default is web (World English Bible). If the requested translation is not found, the API falls back to web.

Language Translation Name Code
English King James Version kjv
English World English Bible web
English American Standard Version asv
English Bible in Basic English bbe
English Darby Bible darby
English Douay-Rheims dra
English Young's Literal Translation ylt
English Open English Bible (US) oeb-us
English Open English Bible (Commonwealth) oeb-cw
English (UK) World English Bible (British) webbe
Language Translation Name Code
Czech Bible kralická bkr
German Luther Bible 1912 luther1912
French French Ostervald ostervald
Italian Riveduta Bible riveduta
Portuguese João Ferreira de Almeida almeida
Spanish Reina-Valera 1909 rv1909
Romanian Romanian Cornilescu rccv
Russian Russian Synodal synodal
Albanian Albanian Bible albanian
Bulgarian Bulgarian Bible bulgarian
Croatian Croatian Bible croatian
Danish Danish Bible danish
Dutch Statenvertaling statenvertaling
Finnish Finnish Bible finnish
Hungarian Károli Bible karoli
Latvian Latvian Bible latvian
Norwegian Norwegian Bible norwegian
Polish Biblia Gdańska gdanska
Swedish Swedish Bible swedish
Latin Clementine Vulgate clementine
Welsh Cadman Bible cadman
Language Translation Name Code
Chinese Chinese Union Version cuv
Chinese (Simplified) Chinese Union Version (Simplified) cuv-simp
Japanese Kougo-yaku kougo
Korean Korean Bible korean
Thai Thai Bible thai
Tagalog Tagalog Bible tagalog
Turkish Turkish Bible turkish
Language Translation Name Code
Cherokee Cherokee New Testament cherokee
Maori Maori Bible maori
Swahili Swahili Bible swahili

Usage

Example
fetch('https://thebibleapi.netlify.app/.netlify/functions/getVerse?book=John&chapter=3&verse=16&translation=luther1912')
  .then(r => r.json())
  .then(console.log);

Translation Coverage

Each translation in The Bible API targets the 66 canonical books of the Protestant Bible. Coverage indicates how many of those 66 books are currently available for a given translation. Translations are grouped by completeness so you can quickly choose what fits your use case.

Full - 66/66 books High - 90%–99% Partial - below 90%

Production-ready - all 66 canonical books available.

Nearly complete - a small number of books may return 404.

Status Name Code Coverage Missing

Significant gaps - many books will return 404. Use only when the specific language is required.

Status Name Code Coverage Missing books

Errors

The API uses standard HTTP status codes:

Status Meaning
200 Success
400 Bad request - a required parameter is missing or malformed
404 Not found - the requested book, chapter, or verse does not exist
500 Server error

Error responses look like:

JSON
{
  "error": "Book not found",
  "status": 404
}

GET /getBooks

Returns the full list of available books.

Query parameters

Name Type Required Description
translation string No Translation code (default: web)

Request

JavaScript
fetch('https://thebibleapi.netlify.app/.netlify/functions/getBooks?translation=kjv')
  .then(r => r.json())
  .then(console.log);

Response

JSON
{
  "translation": "kjv",
  "available_translations": ["kjv", "web", "asv", ...],
  "count": 66,
  "books": [
    { "name": "Genesis", "chapters": 50 },
    { "name": "Exodus", "chapters": 40 },
    ...
  ]
}

GET /getChapter

Returns every verse in a specific chapter.

Query parameters

Name Type Required Description
book string Yes Book name (case-insensitive), e.g. Genesis
chapter integer Yes 1-based chapter number
translation string No Translation code (default: web)

Request

JavaScript
fetch('https://thebibleapi.netlify.app/.netlify/functions/getChapter?book=Genesis&chapter=1&translation=almeida')
  .then(r => r.json())
  .then(console.log);

Response

JSON
{
  "book": "Genesis",
  "chapter": 1,
  "translation": "ALMEIDA",
  "verses": [
    "No princípio criou Deus os céus e a terra.",
    "A terra era sem forma e vazia; ..."
  ]
}

GET /getVerse

Returns a single verse.

Query parameters

Name Type Required Description
book string Yes Book name (case-insensitive)
chapter integer Yes 1-based chapter number
verse integer Yes 1-based verse number
translation string No Translation code (default: web)

Request

JavaScript
fetch('https://thebibleapi.netlify.app/.netlify/functions/getVerse?book=John&chapter=3&verse=16&translation=kjv')
  .then(r => r.json())
  .then(console.log);

Response

JSON
{
  "book": "John",
  "chapter": 3,
  "verse": 16,
  "translation": "KJV",
  "text": "For God so loved the world, that he gave his only begotten Son..."
}

GET /verseOfDay

Returns a deterministic verse based on the current date (UTC).

Query parameters

Name Type Required Description
translation string No Translation code (default: web)

Request

JavaScript
fetch('https://thebibleapi.netlify.app/.netlify/functions/verseOfDay?translation=kjv')
  .then(r => r.json())
  .then(console.log);

Response

JSON
{
  "date": "2026-04-30",
  "book": "John",
  "chapter": 3,
  "verse": 16,
  "translation": "KJV",
  "text": "For God so loved the world..."
}

Interactive Playground

Test Bible API endpoints in real time with structured inputs and live responses.

Open Playground

Licensing & Attribution

The Bible API codebase is authored and maintained by Rithik Ronald. Bible text content remains under the licenses of its respective translations. See the dedicated licensing page for full details and per-translation attribution.

View Licensing & Attribution