107 versioni libere
Riveduta 1927, Diodati 1649, KJV, BSB, Louis Segond e molte altre, in 67 lingue. Tutte di pubblico dominio o con licenza libera.
Versetti, capitoli e libri da 107 versioni libere della Bibbia in 67 lingue. JSON via HTTPS, richiamabile direttamente dal browser. Senza registrazione, senza chiave.
Chiama l'API direttamente. Senza setup, senza autenticazione.
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
Riveduta 1927, Diodati 1649, KJV, BSB, Louis Segond e molte altre, in 67 lingue. Tutte di pubblico dominio o con licenza libera.
Ogni risposta con testo biblico riporta la nota di copyright della versione. L'attribuzione è a un campo di distanza.
Servita dall'edge di Cloudflare con cache a lunga durata ed ETag. Una rivalidazione restituisce un 304 senza corpo.
Niente registrazione, niente chiave API, niente 429. CORS aperto: chiamala da qualsiasi pagina web.
107 versioni in 67 lingue, tutte di pubblico dominio o con licenza libera. Clicca su una versione per vederne i metadati e il testo completo della licenza.
Ogni risposta con testo biblico include l'attribuzione della versione: meta.copyright nella v1, copyright in /v1/votd e nelle rotte legacy. Mostrala vicino al passo. Le licenze CC BY e CC BY-SA lo richiedono.
Le versioni con tutti i diritti riservati (NIV, ESV, NLT, NVI, ARA, NVT, NTV e altre) non sono servite. I vecchi link continuano a funzionare: ricevi una versione libera nella stessa lingua, e data.version indica quale.
Tutti gli endpoint v1. Clicca "Prova" per fare una richiesta reale e vedere il JSON.
/v1/{version}/{book}/{chapter}
Restituisce un capitolo biblico completo
version |
path | obbligatorio | Slug della versione (es. kjv, almeida-livre) |
book |
path | obbligatorio | Slug del libro in qualsiasi lingua |
chapter |
path | obbligatorio | Numero del capitolo |
preview |
query | opzionale | Tronca il testo a circa N caratteri (da 40 a 2000), per i tooltip |
/v1/{version}/{book}/{chapter}/{verse}
Restituisce un singolo versetto o un intervallo (16 o 16-20)
version |
path | obbligatorio | Slug della versione (es. kjv, almeida-livre) |
book |
path | obbligatorio | Slug del libro in qualsiasi lingua |
chapter |
path | obbligatorio | Numero del capitolo |
verse |
path | obbligatorio | Singolo versetto (16) o intervallo (16-20) |
/v1/votd
Versetto del giorno: lo stesso per tutti nello stesso giorno UTC, con il copyright della versione (cache 24h)
language |
query | opzionale | Locale (en, pt-br, es, fr, de, it, zh, ru, ko). Predefinito: en. |
version |
query | opzionale | Slug della versione. Predefinito: versione canonica del locale scelto. |
/v1/passages
Recupera fino a 50 riferimenti in una chiamata. Un riferimento non valido fallisce da solo, nella sua posizione.
refs |
query | obbligatorio | Riferimenti separati da virgola (max 50) |
version |
query | obbligatorio | Slug della versione |
/v1/parse
Analizza un riferimento in testo libero (in una delle 9 lingue) e restituisce libro, capitolo e versetti
q |
query | obbligatorio | Riferimento in testo libero, es. Giovanni 3:16-18 |
version |
query | opzionale | Opzionale. Viene validata e restituita |
/v1/versions
Elenca tutte le versioni bibliche disponibili (107), con il testo della licenza
language |
query | opzionale | Filtra per codice ISO della lingua (vedi /v1/versions per l'elenco completo) |
/v1/versions/{slug}
Restituisce i metadati di una versione specifica
slug |
path | obbligatorio | Slug in qualsiasi lingua |
/v1/books
Elenca i 66 libri della Bibbia
testament |
query | opzionale | "old" o "new" |
/v1/books/{slug}
Restituisce i metadati di un libro (slug in qualsiasi lingua)
slug |
path | obbligatorio | Slug in qualsiasi lingua |
La stessa richiesta, negli strumenti che già usi.
/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'])
Ogni endpoint v1 parla lo stesso involucro JSON e le stesse regole di cache HTTP.
Le risposte riuscite avvolgono il payload in un campo data di primo livello. Gli endpoint di elenco e contenuto aggiungono un oggetto meta opzionale con totali, il riferimento risolto e, quando c'è testo biblico, il copyright della versione.
{
"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 | Il contenuto è immutabile — in cache per un anno (max-age=31536000, immutable). I nuovi contenuti arrivano con un nuovo URL, mai con un corpo modificato. |
| Rivalidazione | Ogni risposta porta un ETag forte. Invia If-None-Match e ottieni 304 Not Modified senza corpo. |
| CORS | Aperta a qualsiasi origine (Access-Control-Allow-Origin: *). Chiamala direttamente dal browser — senza proxy. |
| Metodi | GET, HEAD e OPTIONS. HEAD restituisce solo gli header; OPTIONS gestisce il preflight CORS. |
Il versetto del giorno restituisce un oggetto piatto (reference, text, version, book_slug, chapter, verse_start, verse_end, url, copyright) invece dell'involucro data/meta, ed è in cache per 24 ore.
Ogni errore usa un solo formato e un codice stabile, leggibile dalle macchine.
{
"error": {
"code": "BOOK_NOT_FOUND",
"message": "Book \"jhon\" not found. Did you mean \"john\"?",
"details": { "didYouMean": "john" }
}
}
| Codice | HTTP | Quando accade |
|---|---|---|
INVALID_PARAMS |
400 | Un valore di path o query è malformato — es. un numero di capitolo fuori intervallo. |
NOT_FOUND |
404 | La rotta non esiste sotto /v1. |
VERSION_NOT_FOUND |
404 | Nessuna versione corrisponde allo slug indicato — l errore suggerisce la più vicina (didYouMean). |
BOOK_NOT_FOUND |
404 | Nessun libro corrisponde allo slug, in nessuna lingua — l errore suggerisce il più vicino (didYouMean). |
CHAPTER_NOT_FOUND |
404 | Quel capitolo non è disponibile in questa versione. |
VERSE_NOT_FOUND |
404 | Il versetto o l intervallo è fuori dal capitolo. |
INTERNAL_ERROR |
500 | Qualcosa è andato storto dalla nostra parte — riprovare è sicuro. |
Le risposte 4xx sono in cache da 60 secondi a 24 ore, a seconda di quanto l errore è deterministico; le 5xx non lo sono mai, così i retry raggiungono sempre l origine.
Gli slug funzionano in qualsiasi lingua, con o senza trattino (2-samuel o 2samuel). Clicca un libro per i suoi metadati.
Gli stessi dati biblici, pronti per altri contesti.
Collega Claude, Cursor e altri assistenti IA compatibili con MCP alla Bibbia.
Scopri di più →Trasforma i riferimenti biblici del tuo sito in tooltip con il versetto, grazie a questa API.
Scopri di più →Un devozionale quotidiano con la profondità di uno studio biblico, sul web, su iOS e Android.
Scopri di più →Sì. Niente registrazione, niente chiave e nessun limite di richieste. Ti chiediamo solo di rispettare gli ETag (If-None-Match restituisce 304) e di raggruppare i riferimenti con /v1/passages invece di una richiesta per versetto.
107 versioni in 67 lingue, tutte di pubblico dominio o con licenza libera, come CC BY o CC BY-SA. L'elenco aggiornato è su /v1/versions.
I loro editori si riservano tutti i diritti, quindi non le ridistribuiamo. Chi ne richiede una riceve una versione libera nella stessa lingua, e data.version indica quale.
L'attribuzione della versione, che arriva in meta.copyright (o copyright in /v1/votd e nelle rotte legacy), accanto al testo. Alcune licenze aggiungono condizioni, come la condivisione allo stesso modo (CC BY-SA) o il divieto di modificare il testo (CC BY-ND). Leggi il testo completo della versione scelta.
Sì: /openapi.json (OpenAPI 3.1) e un riferimento interattivo su /docs. Per gli agenti IA, usa l'MCP della Bibbia su mcp.midvash.com.