The Bible API

Books / API Key Intermediate HTTPS
Varies by plan (check documentation)

Overview

API.Bible aggregates over 2,500 Bible versions across 1,600+ languages from the American Bible Society. It provides structured access to passages, verses, chapters, and search.

💡

Beginner Tip

Register for a free API key at https://scripture.api.bible, then fetch a verse with the /bibles/{bibleId}/verses/{verseId} endpoint. Use the /bibles endpoint first to find valid Bible IDs for your language.

Available Data

The Bible data via REST API
JSON-formatted response data
Requires API key authentication

Example Response

JSON Response
{
  "status": "success",
  "data": {
    "result": "Data from The Bible",
    "description": "Everything you need from the Bible in one discoverable place",
    "timestamp": "2025-01-15T10:00:00Z"
  }
}

Field Reference

data.id Unique verse identifier in book.chapter.verse format, e.g. "JHN.3.16".
data.reference Human-readable reference string, e.g. "John 3:16".
data.content Verse text (plain text or HTML depending on content-type param).
data.verseCount Number of verses in the response (useful for passage requests).
data.copyright Copyright notice for the Bible version being accessed.

Implementation Example

const url = "https://docs.api.bible/";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "X-API-Key": "YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

HTTP 401 Unauthorized Missing or incorrect api-key header
Add the header -H "api-key: YOUR_KEY" to every request. The key goes in a custom header, not as a query parameter.
HTTP 404 on verse ID Verse ID format is incorrect (must be e.g. "JHN.3.16")
Use the /bibles/{bibleId}/books and /chapters endpoints to navigate to valid IDs before fetching verses.
Response "content" contains HTML tags Default response wraps verse text in OSIS-style markup
Add ?content-type=text to the query string to receive plain text instead of tagged HTML.

Matrix Score Breakdown

🌐 Reachability 30/30
⚡ Speed 5/20
🔒 Security 15/15
🛠 Developer XP 12/20
✓ Reliability 10/15

Partially tested on Apr 5, 2026

Technical Specifications

Auth API Key
HTTPS REQUIRED
CORS UNKNOWN
Category Books
Difficulty Intermediate
Verified: 2026-04-04

Similar APIs

View All →