NewConnect Claude, Gemini, ChatGPT, and other AI agents to API Ninjas via our MCP server →

Bible API

The Bible API returns any verse, passage, chapter or book of the Bible as JSON in over 35 translations in 20 languages, including the King James Version, the Berean Standard Bible, the World English Bible, the Reina-Valera 1909, the Luther Bibel and the Chinese Union Version, plus the Hebrew Old Testament and the Greek New Testament. All translations are in the public domain.

Get a random verse or the verse of the day, compare up to five translations side by side, add headings, poetry lines, footnotes and Strong's numbers, search the whole Bible by keyword, phrase or meaning, and check whether a quote is really in the Bible and where.

Every endpoint and parameter is available on every plan, including the free plan, and each request counts as one API call.

Available endpoints:

  • /v1/bible - Passages by reference, a random verse or the verse of the day
  • /v1/biblesearch - Search by keyword, phrase, Strong's number or meaning
  • /v1/bibleverify - Check a quote, or every quoted reference in a block of text

Translations

Pass the id as translation. OT: Old Testament. NT: New Testament. Deuterocanon: the deuterocanonical books (Apocrypha).

idNameLanguageBooks
bsbBerean Standard BibleEnglishOT, NT
webWorld English BibleEnglishOT, NT
kjvKing James VersionEnglishOT, NT, Deuterocanon
asvAmerican Standard Version (1901)EnglishOT, NT
msbMajority Standard BibleEnglishOT, NT
yltYoung's Literal TranslationEnglishOT, NT
darbyDarby TranslationEnglishOT, NT
draDouay-Rheims 1899EnglishOT, NT, Deuterocanon
websterWebster BibleEnglishOT, NT
bbeBible in Basic EnglishEnglishOT, NT
genevaGeneva Bible (1599)EnglishOT, NT
rvRevised Version (1885)EnglishOT, NT, Deuterocanon
wmbWorld Messianic BibleEnglishOT, NT
rv1909Reina-Valera 1909SpanishOT, NT
bpmBíblia Portuguesa MundialPortugueseOT, NT, Deuterocanon
lsgLouis Segond 1910FrenchOT, NT
ostervaldBible OstervaldFrenchOT, NT
luther1912Luther Bibel 1912GermanOT, NT
elberfelderElberfelder Bibel (1905)GermanOT, NT
diodatiDiodati (1885)ItalianOT, NT
rivedutaRiveduta (1927)ItalianOT, NT
nld1917De Heilige Schrift (1917)DutchOT, NT
synodalSynodal TranslationRussianOT, NT
kulishKulish BibleUkrainianOT, NT
kralickaBible kralickáCzechOT, NT
cuvChinese Union Version (Simplified)ChineseOT, NT
cuvtChinese Union Version (Traditional)ChineseOT, NT
kor1910Korean Bible (1910)KoreanOT, NT
vie1923Kinh Thánh (1923)VietnameseOT, NT
vandyckVan Dyck BibleArabicOT, NT
opvOld Persian VersionPersianOT, NT
judsonJudson BibleBurmeseOT, NT
hatHaitian Creole Bible (1985)Haitian CreoleOT, NT
vulgateClementine VulgateLatinOT, NT, Deuterocanon
wlcWestminster Leningrad Codex (Hebrew OT)Biblical HebrewOT
trTextus Receptus (Greek NT)Koine GreekNT
byzByzantine Majority Text (Greek NT)Koine GreekNT
3 endpoints

https://api.api-ninjas.com/v1/bible

Returns Bible passages by reference, in one translation or up to five side by side, a random verse, or the verse of the day. A passage can be a single verse, a range, a whole chapter or a whole book.

Parameters

Provide ref, or set random or daily to true.

  • ref  optional

    One or more references, separated by commas or semicolons (up to 10 per call): John 3:16, jn 3:16-18, 1 Cor 13:4-7, Psalm 23, Genesis 1-3, Rom 8:28-9:2, John 3:16, 18; 4:1-6, Ruth (a whole book) or Ps 119:1-end. Book names and abbreviations work in English and in the language of each translation, e.g. Juan 3:16, Jean 3:16 or 约翰福音 3:16. With random=true, ref sets where the random verse comes from, e.g. Psalms, John 14, OT or NT.

  • translation  optional

    Translation id from the translations table, or up to 5 comma-separated ids to compare translations side by side, e.g. bsb,kjv. Default bsb.

  • include_verse_numbers  optional

    true (default) puts each verse number in brackets, e.g. [16], before the verse in text. false returns the text without numbers.

  • include_formatting  optional

    true adds headings, paragraph starts, poetry lines and the words of Jesus to each verse, and puts paragraph and line breaks in text. Default false.

  • include_footnotes  optional

    true adds each verse's translator footnotes. Default false.

  • include_strongs  optional

    true adds each verse's words with their Strong's numbers, in bsb, kjv, web, asv, wlc, tr and byz. Default false.

  • random  optional

    true returns one random verse, from anywhere in the Bible or from within ref.

  • daily  optional

    true returns the verse of the day: the same verse for every caller on a given date.

  • date  optional

    With daily=true: the date of the verse of the day (YYYY-MM-DD). Default today.

  • tz  optional

    With daily=true: the IANA time zone that decides what "today" is, e.g. America/New_York. Default UTC.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

The /v1/bible endpoint returns a JSON object with the following fields, or an error if the request is unsuccessful (see error codes).

  • reference

    The references returned, in standard form, e.g. John 3:16–17. Several references are separated by ; .

  • date

    With daily=true: the date of the verse of the day (YYYY-MM-DD).

  • passages

    One passage for each reference and translation, in the order requested.

  • passages[].reference

    The passage's reference.

  • passages[].translation

    The passage's translation: an object with the translation's id, name and language (a language code such as en).

  • passages[].book

    The book name in the translation's own language.

  • passages[].book_code

    The standard three-character book code, e.g. JHN for John. It is the same in every translation.

  • passages[].text

    The whole passage as one string, with verse numbers in brackets unless include_verse_numbers=false.

  • passages[].verses

    Every verse of the passage, with its chapter, verse and text, plus the optional fields below.

  • passages[].verses[].verse_end

    When a translation combines several verses into one, the last verse number it covers.

  • passages[].verses[].headings

    With include_formatting=true: headings before the verse, each with a type (section, subsection, major, psalm_title, speaker or acrostic) and its text.

  • passages[].verses[].paragraph_start

    With include_formatting=true: true when a new paragraph starts at this verse.

  • passages[].verses[].lines

    With include_formatting=true: the verse's poetry lines, each with its text and indent level.

  • passages[].verses[].words_of_jesus

    With include_formatting=true, in red-letter translations such as kjv and web: the words of Jesus in the verse, each with its start and end character position in the verse text and the quoted text.

  • passages[].verses[].footnotes

    With include_footnotes=true: the verse's footnotes, as a list of strings.

  • passages[].verses[].words

    With include_strongs=true: the verse's words in order, each with its text and its strongs numbers, e.g. ["G25"].

  • passages[].previous

    The reference just before the passage (the previous chapter when you request whole chapters), for "previous" navigation; null at the start of the translation.

  • passages[].next

    The reference just after the passage (the next chapter when you request whole chapters), for "next" navigation; null at the end of the translation.

  • warnings

    When relevant: a list of notices, each with a code and a message, e.g. when a translation numbers a passage differently. See warning codes.

Live Demo

Live demo · no API key required
Query parameters
ref
translation

Get a free API key to get started — no credit card required.

Headers
X-Api-KeyLog in or sign up to get your API key
GET
https://api.api-ninjas.com/v1/bible?ref=John%203%3A16-17&translation=bsb
Sample response
{
"reference": "John 3:16–17",
"passages": [
{
"reference": "John 3:16–17",
"translation": {
"id": "bsb",
"name": "Berean Standard Bible",
"language": "en"
},
"book": "John",
"book_code": "JHN",
"text": "[16] For God so loved the world that He gave His one and only Son, that everyone who believes in Him shall not perish but have eternal life. [17] For God did not send His Son into the world to condemn the world, but to save the world through Him.",
"verses": [
{
"chapter": 3,
"verse": 16,
"text": "For God so loved the world that He gave His one and only Son, that everyone who believes in Him shall not perish but have eternal life."
},
{
"chapter": 3,
"verse": 17,
"text": "For God did not send His Son into the world to condemn the world, but to save the world through Him."
}
],
"previous": "John 3:15",
"next": "John 3:18"
}
]
}

Code Examples

curl -X GET "https://api.api-ninjas.com/v1/bible?ref=John%203%3A16-17&translation=bsb" \ -H "X-Api-Key: YOUR_API_KEY"

Formatted Response Example

With ref=Psalm 23:1-2, translation=web and include_formatting=true, each verse carries the psalm title and its poetry lines:

Sample response
{
"reference": "Psalm 23:1–2",
"passages": [
{
"reference": "Psalm 23:1–2",
"translation": {
"id": "web",
"name": "World English Bible",
"language": "en"
},
"book": "Psalms",
"book_code": "PSA",
"text": "[1] The LORD is my shepherd;\nI shall lack nothing.\n[2] He makes me lie down in green pastures.\nHe leads me beside still waters.",
"verses": [
{
"chapter": 23,
"verse": 1,
"text": "The LORD is my shepherd; I shall lack nothing.",
"headings": [
{
"type": "psalm_title",
"text": "A Psalm by David."
}
],
"paragraph_start": false,
"lines": [
{
"text": "The LORD is my shepherd;",
"indent": 1
},
{
"text": "I shall lack nothing.",
"indent": 2
}
]
},
{
"chapter": 23,
"verse": 2,
"text": "He makes me lie down in green pastures. He leads me beside still waters.",
"paragraph_start": false,
"lines": [
{
"text": "He makes me lie down in green pastures.",
"indent": 1
},
{
"text": "He leads me beside still waters.",
"indent": 2
}
]
}
],
"previous": "Psalm 22:31",
"next": "Psalm 23:3"
}
]
}

https://api.api-ninjas.com/v1/biblesearch

Searches the Bible by keyword, exact phrase, Strong's number or meaning, and finds verses that are close in meaning to a given verse. For "do not worry about tomorrow", it returns Matthew 6:34 and also verses that say the same thing in other words, such as Proverbs 27:1.

Parameters

Provide q or similar_to.

  • q  optional

    What to search for, up to 500 characters: words, a "quoted phrase", OR and NOT, word* for words starting with word, or a Strong's number such as G26 or H7225.

  • mode  optional

    keyword (verses with every word), phrase (the exact words in order), semantic (verses with the same meaning, even in different words) or hybrid (keyword and meaning combined). Default hybrid for English translations and keyword for the others. Meaning-based search understands English queries; other languages use keyword search.

  • translation  optional

    One translation id from the translations table. Default bsb.

  • ref  optional

    Search within books, chapters or ranges, e.g. Psalms or Matthew 5-7, or within OT or NT.

  • similar_to  optional

    A reference, e.g. John 3:16. Returns the verses closest in meaning to it, each with a score.

  • limit  optional

    Number of results to return (1-50). Default 10.

  • offset  optional

    Number of results to skip, for paging. Default 0.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

The /v1/biblesearch endpoint returns a JSON object with the following fields, or an error if the request is unsuccessful (see error codes).

  • query

    The search query, when q is used.

  • similar_to

    The reference, when similar_to is used.

  • mode

    The search mode used: keyword, phrase, semantic, hybrid, strongs (a Strong's number search) or similar (a similar_to search).

  • translation

    The translation searched: an object with the translation's id, name and language (a language code such as en).

  • total

    The total number of matching verses, for keyword, phrase and strongs searches. Use it with limit and offset to page through the results.

  • results

    The matching verses, best match first (Strong's number searches in Bible order).

  • results[].reference

    The verse's reference, e.g. Matthew 6:34.

  • results[].book

    The book name in the translation's own language.

  • results[].book_code

    The standard three-character book code, e.g. MAT.

  • results[].chapter

    The chapter number.

  • results[].verse

    The verse number.

  • results[].text

    The verse text.

  • results[].score

    For semantic and similar_to searches: how close the verse is in meaning, where higher is closer (1 is the maximum).

  • warnings

    When relevant: a list of notices, each with a code and a message, e.g. PARTIAL_MATCH when no verse contains every word and verses with any of the words are shown. See warning codes.

Live Demo

Live demo · no API key required
Query parameters
q
mode

Get a free API key to get started — no credit card required.

Headers
X-Api-KeyLog in or sign up to get your API key
GET
https://api.api-ninjas.com/v1/biblesearch?q=do%20not%20worry%20about%20tomorrow
Sample response
{
"mode": "hybrid",
"translation": {
"id": "bsb",
"name": "Berean Standard Bible",
"language": "en"
},
"query": "do not worry about tomorrow",
"results": [
{
"reference": "Matthew 6:34",
"book": "Matthew",
"book_code": "MAT",
"chapter": 6,
"verse": 34,
"text": "Therefore do not worry about tomorrow, for tomorrow will worry about itself. Today has enough trouble of its own."
},
{
"reference": "Proverbs 27:1",
"book": "Proverbs",
"book_code": "PRO",
"chapter": 27,
"verse": 1,
"text": "Do not boast about tomorrow, for you do not know what a day may bring."
},
{
"reference": "Luke 12:29",
"book": "Luke",
"book_code": "LUK",
"chapter": 12,
"verse": 29,
"text": "And do not be concerned about what you will eat or drink. Do not worry about it."
}
]
}

Code Examples

curl -X GET "https://api.api-ninjas.com/v1/biblesearch?q=do%20not%20worry%20about%20tomorrow" \ -H "X-Api-Key: YOUR_API_KEY"

https://api.api-ninjas.com/v1/bibleverify

Checks whether a quote is really in the Bible. It returns where the words actually are, the Bible text, a similarity score and a word-by-word comparison, and tells you when a quote is attributed to the wrong verse. With text, it finds every Bible reference in a block of text, such as an article, a sermon or an AI-generated answer, and checks the quotation written next to each one.

Parameters

Provide quote or text.

  • quote  optional

    The quoted words to check, up to 2,000 characters. Three or more words give the most reliable result.

  • ref  optional

    The reference the quote is attributed to, e.g. John 3:16. When the words are at another reference, the verdict is wrong_reference.

  • translation  optional

    Translation ids to check against, comma-separated, e.g. kjv or kjv,web. Default: every translation in the quote's language.

  • text  optional

    A block of text up to 20,000 characters. Every reference written as book, chapter and verse (e.g. John 3:16) is found and the quotation in quotation marks next to it is checked. Send long text with POST.

Headers

  • X-Api-Key  required

    API Key associated with your account.

POST Requests

/v1/bibleverify also accepts POST with the same parameters as a JSON object in the request body, sent with the Content-Type: application/json header. Use it for long text:

{"text":"In John 3:16 we read: \"For God so loved the world that he gave his only Son.\""}

Response

The /v1/bibleverify endpoint returns a JSON object with the following fields for a quote, or with count and references for a text, or an error if the request is unsuccessful (see error codes).

  • quote

    The quote that was checked.

  • claimed_reference

    When ref is sent: the claimed reference, in standard form.

  • verdict

    The result of the check:

    VerdictMeaning
    exactThe quote matches a complete verse word for word.
    partialThe words are exact and cover part of a verse.
    minor_variationA few words differ from the Bible text.
    paraphraseThe meaning matches a verse, in different wording.
    wrong_referenceThe words are real, but they are at a different reference than ref. reference gives the real location.
    not_foundNo verse matches the quote.
    known_non_biblicalA popular saying that is not in the Bible, such as "God helps those who help themselves". note explains where it comes from.
  • reference

    Where the words actually are; null for not_found and known_non_biblical.

  • translation

    The translation of the closest match: an object with the translation's id, name and language (a language code such as en).

  • bible_text

    The Bible text at reference in that translation.

  • similarity

    How closely the words match bible_text, from 0 to 1, where 1 is identical wording.

  • meaning_similarity

    When the quote matches a verse by meaning rather than by wording: how close the meaning is, from 0 to 1. similarity is then null.

  • diff

    A word-by-word comparison with bible_text, as a list of runs: same (with text), changed (with the quote words and the bible words), missing (bible words the quote leaves out) and extra (quote words that are not in the Bible text). Omitted for exact matches.

  • other_matches

    Up to three matches in other translations, each with its reference, translation id and similarity.

  • note

    An explanation, when useful, e.g. where a known non-biblical saying comes from.

  • count

    With text: the number of references found.

  • references

    With text: every reference found, in the order they appear.

  • references[].reference

    The reference, in standard form.

  • references[].start

    The character position in text where the reference starts.

  • references[].end

    The character position in text just after the reference.

  • references[].matched_text

    The reference as written in text.

  • references[].valid

    true when the reference exists, e.g. false for John 22:1.

  • references[].note

    When valid is false: why, e.g. John has 21 chapters.

  • references[].quote

    The quotation next to the reference, or null.

  • references[].verification

    The check of that quotation, with the same fields as a quote check, or null when there is no quotation next to the reference.

Live Demo

Live demo · no API key required
Query parameters
quote
ref

Get a free API key to get started — no credit card required.

Headers
X-Api-KeyLog in or sign up to get your API key
GET
https://api.api-ninjas.com/v1/bibleverify?quote=For%20God%20so%20loved%20the%20world%20that%20he%20gave%20his%20one%20and%20only%20Son&ref=Romans%203%3A23
Sample response
{
"quote": "For God so loved the world that he gave his one and only Son",
"claimed_reference": "Romans 3:23",
"verdict": "wrong_reference",
"reference": "John 3:16",
"translation": {
"id": "bsb",
"name": "Berean Standard Bible",
"language": "en"
},
"bible_text": "For God so loved the world that He gave His one and only Son, that everyone who believes in Him shall not perish but have eternal life.",
"similarity": 1,
"diff": [
{
"type": "same",
"text": "for god so loved the world that he gave his one and only son"
}
],
"other_matches": [
{
"reference": "John 3:16",
"translation": "msb",
"similarity": 1
},
{
"reference": "John 3:16",
"translation": "kjv",
"similarity": 0.857
},
{
"reference": "John 3:16",
"translation": "web",
"similarity": 0.857
}
]
}

Code Examples

curl -X GET "https://api.api-ninjas.com/v1/bibleverify?quote=For%20God%20so%20loved%20the%20world%20that%20he%20gave%20his%20one%20and%20only%20Son&ref=Romans%203%3A23" \ -H "X-Api-Key: YOUR_API_KEY"

POST Code Examples

curl -X POST "https://api.api-ninjas.com/v1/bibleverify" \ -H "X-Api-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"text":"In John 3:16 we read: \"For God so loved the world that he gave his only Son.\""}'

Text Check Response Example

The response to the POST example above:

Sample response
{
"references": [
{
"reference": "John 3:16",
"start": 3,
"end": 12,
"matched_text": "John 3:16",
"valid": true,
"quote": "For God so loved the world that he gave his only Son.",
"verification": {
"quote": "For God so loved the world that he gave his only Son.",
"claimed_reference": "John 3:16",
"verdict": "minor_variation",
"reference": "John 3:16",
"translation": {
"id": "kjv",
"name": "King James Version",
"language": "en"
},
"bible_text": "For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life.",
"similarity": 0.923,
"diff": [
{
"type": "same",
"text": "for god so loved the world that he gave his only"
},
{
"type": "missing",
"bible": "begotten"
},
{
"type": "same",
"text": "son"
}
],
"other_matches": [
{
"reference": "John 3:16",
"translation": "web",
"similarity": 0.923
},
{
"reference": "John 3:16",
"translation": "asv",
"similarity": 0.923
},
{
"reference": "John 3:16",
"translation": "bsb",
"similarity": 0.857
}
]
}
}
],
"count": 1
}

Errors and Warnings

An invalid request returns HTTP 400 with a JSON body holding a readable error message and a code you can handle in your app, e.g. {"error": "John has 21 chapters.", "code": "INVALID_REFERENCE"}. Authentication and quota errors use the standard format described in error codes.

CodeMeaning
MISSING_PARAMETERA required parameter is missing, e.g. ref, q or quote.
INVALID_PARAMETERA parameter value is not valid, e.g. a date that is not YYYY-MM-DD or a limit above 50.
INVALID_REFERENCEThe reference could not be read or does not exist, e.g. John 22:1. The message says why.
AMBIGUOUS_REFERENCEThe book name could mean more than one book. The message lists them; use a longer name.
UNKNOWN_TRANSLATIONThe translation id is not in the translations table. The message lists every valid id.
TOO_MANY_TRANSLATIONSMore than 5 translations in one /v1/bible call, or more than one in /v1/biblesearch.
TOO_MANY_REFERENCESMore than 10 references in one call.
RANGE_TOO_LARGEMore than 2,600 verses per translation in one call (any single book fits, including Psalms). Request fewer verses or translations per call.
BOOK_NOT_IN_TRANSLATIONThe translation does not include the book, e.g. Tobit in bsb or Genesis in tr. The translations table lists the books in each translation.
INVALID_QUERYThe search query in q could not be read.
SEMANTIC_NOT_AVAILABLEmode=semantic or similar_to was used with a translation that meaning-based search does not cover. Use an English translation such as bsb, kjv or web.
STRONGS_NOT_AVAILABLEA Strong's number search in a translation without Strong's numbers. Use bsb, kjv, web, asv, wlc, tr or byz.
INVALID_BODYThe POST body is not a JSON object.
NOT_FOUNDNo verses were found for the request.
INTERNAL_ERRORSomething went wrong on our side. Please try again.

A successful /v1/bible or /v1/biblesearch response can include warnings, each with one of these codes and a message:

CodeMeaning
VERSE_NOT_IN_TRANSLATIONThe translation leaves out some verses in the range or numbers them differently. The other verses are returned.
NUMBERING_DIFFERSThe translation numbers some chapters or verses of the book differently from most English Bibles. References are read in its own numbering.
BOOK_NOT_IN_TRANSLATIONOne of the requested translations does not include the book. Passages from the other translations are returned.
RANGE_CLAMPEDThe range went past the end of the chapter or book and was shortened to the last verse.
PARTIAL_VERSEA partial verse such as 16a was requested; the whole verse is returned.
OPEN_RANGEff (e.g. John 3:16ff) was read as "to the end of the chapter".
PARTIAL_MATCHNo verse contains every search word, so verses with any of the words are shown.
SEMANTIC_NOT_AVAILABLEMeaning-based search does not cover the translation, so hybrid returned keyword results.

Frequently Asked Questions

  • Yes, but you must have a premium subscription. Commercial use of the Bible API is not permitted on the free tier. See our pricing page to choose a plan that fits your needs.
  • Sign up for a free account to instantly get your API key, then pass it in the X-Api-Key header on every request. The documentation above includes ready-to-run examples in cURL, Python, JavaScript, Node.js, and more.
  • Your API requests will simply be denied once you hit your monthly quota — you will never be charged more than the plan you signed up for. To increase your quota, you can upgrade your plan any time on our pricing page.
  • The API responds with a standard HTTP status code and a JSON error message describing the problem. See our error codes reference for the full list of codes and how to resolve each one, or contact support if you need help.
  • Over 35 translations in 20 languages, all in the public domain: English translations including the King James Version (kjv), the Berean Standard Bible (bsb, the default), the World English Bible (web), the American Standard Version (asv), Young's Literal Translation (ylt) and the Douay-Rheims (dra); the Reina-Valera 1909, Louis Segond 1910, Luther Bibel 1912, Chinese Union Version, Synodal, Korean, Arabic, Portuguese, Vietnamese and other translations; the Latin Vulgate; and the Hebrew Old Testament and Greek New Testament. The translations table lists every id, language and the books each one includes.
  • Call /v1/bible?ref=John 3:16. ref accepts single verses, ranges (1 Cor 13:4-7), whole chapters (Psalm 23), whole books (Ruth) and lists of up to 10 references (John 3:16, 18; 4:1-6), with book names and abbreviations in English or in the language of the translation. Add translation=bsb,kjv to compare up to five translations side by side, and include_formatting=true for headings, paragraphs and poetry lines.
  • Yes. /v1/bible?daily=true returns the verse of the day: the same verse for every caller on a given date, so all your users see the same verse. Pass tz (e.g. America/New_York) to change the verse at local midnight, date to get the verse for another day, and translation to choose the translation. random=true returns a random verse instead, from the whole Bible or from a book, chapter or testament given in ref.
  • Yes. /v1/biblesearch searches by keyword or exact phrase in every translation, by Strong's number (e.g. G26), and by meaning for English queries: q=do not worry about tomorrow returns Matthew 6:34 and verses that say the same thing in other words. similar_to=John 3:16 returns the verses closest in meaning to a verse, and ref narrows any search to a book, a chapter range or one testament.
  • /v1/bibleverify takes a quote and, optionally, the ref it is attributed to. It returns a verdict (exact, partial, minor_variation, paraphrase, wrong_reference, not_found or known_non_biblical), where the words really are, the Bible text, a similarity score and a word-by-word comparison. Send a whole article, sermon or AI-generated answer as text (up to 20,000 characters, with POST) to check every quoted reference in it at once. Popular sayings such as "God helps those who help themselves" are flagged as not in the Bible, with a note on where they come from.
  • Yes. Every Bible API endpoint and parameter is available on every plan, including the free plan, and each request counts as one call against your monthly quota. See the pricing page for plan quotas.