107 versions libres
Louis Segond 1910, Darby, Crampon, Martin 1744, KJV, BSB et bien d'autres, en 67 langues. Toutes dans le domaine public ou sous licence libre.
Versets, chapitres et livres de 107 versions libres de la Bible en 67 langues. Du JSON en HTTPS, appelable depuis le navigateur. Sans inscription, sans clé.
Appelez l'API directement. Sans configuration, sans authentification.
const res = await fetch('https://api.midvash.com/v1/kjv/john/3/16'); const { data, meta } = await res.json(); console.log(data.text); console.log(meta.copyright); // show it with the text
Louis Segond 1910, Darby, Crampon, Martin 1744, KJV, BSB et bien d'autres, en 67 langues. Toutes dans le domaine public ou sous licence libre.
Chaque réponse contenant du texte biblique fournit la mention de copyright de la version. L'attribution est à portée d'un champ.
Servie depuis l'edge de Cloudflare avec un cache longue durée et des ETag. Une revalidation renvoie un 304 sans corps.
Pas d'inscription, pas de clé d'API, pas de 429. CORS ouvert : appelez-la depuis n'importe quelle page web.
107 versions en 67 langues, toutes dans le domaine public ou sous licence libre. Cliquez sur une version pour voir ses métadonnées et le texte complet de sa licence.
Chaque réponse contenant du texte biblique inclut le crédit de la version : meta.copyright en v1, copyright dans /v1/votd et les routes historiques. Affichez-le près du passage. Les licences CC BY et CC BY-SA l'exigent.
Les versions dont tous les droits sont réservés (NIV, ESV, NLT, NVI, ARA, NVT, NTV et autres) ne sont pas servies. Les anciens liens fonctionnent toujours : vous recevez une version libre de la même langue, et data.version indique laquelle.
Tous les endpoints v1. Cliquez sur "Tester" pour faire une vraie requête et voir le JSON.
/v1/{version}/{book}/{chapter}
Renvoie un chapitre biblique complet
version |
path | requis | Slug de la version (ex. : kjv, almeida-livre) |
book |
path | requis | Slug du livre dans n'importe quelle langue |
chapter |
path | requis | Numéro de chapitre |
preview |
query | optionnel | Tronque le texte à environ N caractères (40 à 2000), pour les infobulles |
/v1/{version}/{book}/{chapter}/{verse}
Renvoie un verset unique ou une plage (16 ou 16-20)
version |
path | requis | Slug de la version (ex. : kjv, almeida-livre) |
book |
path | requis | Slug du livre dans n'importe quelle langue |
chapter |
path | requis | Numéro de chapitre |
verse |
path | requis | Verset unique (16) ou plage (16-20) |
/v1/votd
Verset du jour : le même pour tous le même jour UTC, avec le copyright de la version (cache de 24 h)
language |
query | optionnel | Locale (en, pt-br, es, fr, de, it, zh, ru, ko). Par défaut : en. |
version |
query | optionnel | Slug de la version. Par défaut : version canonique du locale choisi. |
/v1/passages
Récupère jusqu'à 50 références en un appel. Une référence invalide échoue seule, à sa propre position.
refs |
query | requis | Références séparées par des virgules (50 max.) |
version |
query | requis | Slug de la version |
/v1/parse
Analyse une référence en texte libre (dans l'une des 9 langues) et renvoie livre, chapitre et versets
q |
query | requis | Référence en texte libre, ex. : Jean 3:16-18 |
version |
query | optionnel | Optionnel. Validé puis renvoyé dans la réponse |
/v1/versions
Liste toutes les versions bibliques disponibles (107), avec le texte de licence
language |
query | optionnel | Filtrer par code de langue ISO (voir /v1/versions pour la liste complète) |
/v1/versions/{slug}
Renvoie les métadonnées d'une version spécifique
slug |
path | requis | Slug dans n'importe quelle langue |
/v1/books
Liste les 66 livres de la Bible
testament |
query | optionnel | "old" ou "new" |
/v1/books/{slug}
Renvoie les métadonnées d'un livre (slug accepté dans n'importe quelle langue)
slug |
path | requis | Slug dans n'importe quelle langue |
La même requête, dans les outils que vous utilisez déjà.
/v1/kjv/john/3/16curl https://api.midvash.com/v1/kjv/john/3/16
const res = await fetch('https://api.midvash.com/v1/kjv/john/3/16');
const { data, meta } = await res.json();
console.log(data.text);
console.log(meta.copyright); // show it next to the text
import requests
body = requests.get('https://api.midvash.com/v1/kjv/john/3/16').json()
print(body['data']['text'])
print(body['meta']['copyright']) # show it next to the text
/v1/versions?language=pt-brcurl 'https://api.midvash.com/v1/versions?language=pt-br'
const res = await fetch('https://api.midvash.com/v1/versions?language=pt-br');
const { data, meta } = await res.json();
console.log(meta.total, data);
import requests
r = requests.get('https://api.midvash.com/v1/versions', params={'language': 'pt-br'})
print(r.json()['meta']['total'])
/v1/votd?language=encurl 'https://api.midvash.com/v1/votd?language=en'
const res = await fetch('https://api.midvash.com/v1/votd?language=en');
const votd = await res.json(); // flat shape, no envelope
console.log(votd.reference, votd.text);
console.log(votd.copyright);
import requests
v = requests.get('https://api.midvash.com/v1/votd', params={'language': 'en'}).json()
print(v['reference'], v['text'])
print(v['copyright'])
Chaque endpoint v1 parle le même enveloppe JSON et les mêmes règles de cache HTTP.
Les réponses réussies encapsulent la charge utile dans un champ data de premier niveau. Les endpoints de listes et de contenu ajoutent un objet meta optionnel avec les totaux, la référence résolue et, dès qu'il y a du texte biblique, le copyright de la version.
{
"data": {
"version": "kjv",
"book": "john",
"bookName": "John",
"chapter": 3,
"verse": 16,
"verseEnd": 16,
"text": "For God so loved the world…",
"verses": ["For God so loved the world…"]
},
"meta": {
"reference": "John 3:16",
"total": 1,
"copyright": "King James Version (KJV)\nPublic Domain.\n…"
}
}
| Cache | Le contenu est immuable — mis en cache un an (max-age=31536000, immutable). Le nouveau contenu arrive sous une nouvelle URL, jamais dans un corps modifié. |
| Revalidation | Chaque réponse porte un ETag fort. Envoyez If-None-Match et vous obtenez 304 Not Modified sans corps. |
| CORS | Ouverte à toute origine (Access-Control-Allow-Origin: *). Appelez-la directement depuis le navigateur — sans proxy. |
| Méthodes | GET, HEAD et OPTIONS. HEAD ne renvoie que les en-têtes ; OPTIONS gère le preflight CORS. |
Le verset du jour renvoie un objet plat (reference, text, version, book_slug, chapter, verse_start, verse_end, url, copyright) au lieu de l'enveloppe data/meta, et est mis en cache 24 heures.
Chaque erreur utilise un seul format et un code stable, lisible par machine.
{
"error": {
"code": "BOOK_NOT_FOUND",
"message": "Book \"jhon\" not found. Did you mean \"john\"?",
"details": { "didYouMean": "john" }
}
}
| Code | HTTP | Quand ça arrive |
|---|---|---|
INVALID_PARAMS |
400 | Une valeur de chemin ou de requête est mal formée — ex. un numéro de chapitre hors limites. |
NOT_FOUND |
404 | La route n existe pas sous /v1. |
VERSION_NOT_FOUND |
404 | Aucune version ne correspond au slug donné — l erreur suggère la plus proche (didYouMean). |
BOOK_NOT_FOUND |
404 | Aucun livre ne correspond au slug, dans aucune langue — l erreur suggère le plus proche (didYouMean). |
CHAPTER_NOT_FOUND |
404 | Ce chapitre n est pas disponible dans cette version. |
VERSE_NOT_FOUND |
404 | Le verset ou la plage est hors du chapitre. |
INTERNAL_ERROR |
500 | Une erreur de notre côté — réessayer sans risque. |
Les réponses 4xx sont mises en cache de 60 secondes à 24 heures selon le caractère déterministe de l erreur ; les 5xx ne le sont jamais, donc les retries atteignent toujours l origine.
Les slugs fonctionnent dans toutes les langues, avec ou sans trait d union (2-samuel ou 2samuel). Cliquez sur un livre pour ses métadonnées.
Les mêmes données bibliques, prêtes pour d'autres usages.
Connectez Claude, Cursor et d'autres assistants IA compatibles MCP à la Bible.
En savoir plus →Transformez les références bibliques de votre site en infobulles avec le verset, grâce à cette API.
En savoir plus →Une méditation quotidienne avec la profondeur d'une étude biblique, sur le web, iOS et Android.
En savoir plus →Oui. Pas d'inscription, pas de clé, pas de limite de requêtes. Merci simplement de respecter les ETag (If-None-Match renvoie 304) et de regrouper les références avec /v1/passages plutôt qu'une requête par verset.
107 versions en 67 langues, toutes dans le domaine public ou sous licence libre, comme CC BY ou CC BY-SA. La liste à jour est sur /v1/versions.
Leurs éditeurs réservent tous les droits, nous ne les redistribuons donc pas. Une requête pour l'une d'elles renvoie une version libre de la même langue, et data.version indique laquelle.
Le crédit de la version, fourni dans meta.copyright (ou copyright dans /v1/votd et les routes historiques), à côté du texte. Certaines licences ajoutent des conditions, comme le partage dans les mêmes conditions (CC BY-SA) ou l'interdiction de modifier le texte (CC BY-ND). Lisez le texte complet de la version choisie.
Oui : /openapi.json (OpenAPI 3.1) et une référence interactive sur /docs. Pour les agents IA, utilisez le MCP de la Bible sur mcp.midvash.com.