Bible-api API

⭐ Beginner's Pick Books / No Auth Required Beginner HTTPS CORS
Free to Use Varies (check documentation)

Overview

Bible-api.com is a free, no-auth REST API that returns Bible verses and passages in multiple translations using a simple URL pattern. It is one of the easiest scripture APIs to use with no sign-up required.

💡

Beginner Tip

Fetch any verse by putting the reference directly in the URL, for example https://bible-api.com/john+3:16. Add ?translation=kjv to switch versions; the default is World English Bible (WEB).

Available Data

translated text
source language
target language
confidence score

Example Response

JSON Response
{
  "status": "success",
  "data": {
    "result": "Data from Bible-api",
    "description": "Free Bible API with multiple languages",
    "timestamp": "2025-01-15T10:00:00Z"
  }
}

Field Reference

reference Human-readable verse reference string, e.g. John 3:16
verses Array of verse objects; contains one item per verse in the requested range
verses[].book_name Full name of the Bible book, e.g. John
verses[].chapter Chapter number of this verse
verses[].verse Verse number within the chapter
text Concatenated plain text of all requested verses in the chosen translation

Implementation Example

const url = "https://bible-api.com/";
const response = await fetch(url);
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

Empty or null verse text Requested translation code does not exist or is not supported
Supported values include web, kjv, bbe, darby, asv; check bible-api.com for the full list
404 on multi-verse range Using a comma instead of a hyphen for verse ranges
Use a hyphen for ranges: john+3:16-18, not john+3:16,18
Garbled characters in response Not handling UTF-8 encoding for non-English translations
Ensure your HTTP client handles UTF-8; in fetch() the response is already decoded automatically

Matrix Score Breakdown

🌐 Reachability 30/30
⚡ Speed 15/20
🔒 Security 15/15
🛠 Developer XP 20/20
✓ Reliability 7/15
Response Time 241ms

Fully tested on Apr 5, 2026

Technical Specifications

Auth No Auth
HTTPS REQUIRED
CORS YES
Category Books
Difficulty Beginner
Verified: 2026-04-04

Similar APIs

View All →