Grátis · Sem chave de API · Sem limite

A API da Bíblia by Midvash

Versículos, capítulos e livros de 107 versões livres da Bíblia em 67 idiomas. JSON puro via HTTPS, direto do navegador. Sem cadastro, sem chave.

Pegue um versículo em uma chamada

Chame a API direto. Sem setup, sem autenticação.

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

Por que usar

107 versões livres

Bíblia Livre (Almeida 1819), Open Nova Bíblia Viva, NVA, KJV, BSB e muitas outras, em 67 idiomas. Todas em domínio público ou com licença livre.

Crédito incluído

Toda resposta com texto bíblico traz a linha de copyright da versão. A atribuição está a um campo de distância.

Rápida no edge

Servida pelo edge da Cloudflare com cache longo e ETag. A revalidação devolve 304 sem corpo.

Sem chave, sem limite

Sem cadastro, sem chave de API, sem 429. CORS aberto: chame de qualquer página web.

Versões e licenças

107 versões em 67 idiomas, todas em domínio público ou com licença livre. Clique numa versão para ver os metadados e o texto completo da licença.

Mostre o crédito junto do texto

Toda resposta com texto bíblico traz o crédito da versão: meta.copyright na v1, copyright no /v1/votd e nas rotas legadas. Exiba perto da passagem. As licenças CC BY e CC BY-SA exigem.

Pediu uma versão que saiu?

Versões com todos os direitos reservados (NVI, ARA, NVT, NIV, ESV, NLT, NTV e outras) não são servidas. Links antigos continuam funcionando: você recebe uma versão livre do mesmo idioma, e data.version diz qual veio.

Referência da API

Todos os endpoints da v1. Clique em "Testar" para fazer uma requisição real e ver o JSON.

Conteúdo bíblico

GET /v1/{version}/{book}/{chapter}

Retorna um capítulo bíblico completo

Parâmetros
version path obrigatório Slug da versão (ex.: kjv, almeida-livre)
book path obrigatório Slug do livro em qualquer idioma
chapter path obrigatório Número do capítulo
preview query opcional Trunca o texto em cerca de N caracteres (40 a 2000), para tooltips
GET /v1/{version}/{book}/{chapter}/{verse}

Retorna um versículo único ou intervalo (16 ou 16-20)

Parâmetros
version path obrigatório Slug da versão (ex.: kjv, almeida-livre)
book path obrigatório Slug do livro em qualquer idioma
chapter path obrigatório Número do capítulo
verse path obrigatório Versículo único (16) ou intervalo (16-20)
GET /v1/votd

Versículo do dia: o mesmo para todos no mesmo dia UTC, com o copyright da versão (cache de 24h)

Parâmetros
language query opcional Locale (en, pt-br, es, fr, de, it, zh, ru, ko). Default: en.
version query opcional Slug da versão. Default: versão canônica do locale escolhido.

Lote e interpretação

GET /v1/passages

Busca até 50 referências numa chamada. Referência inválida falha sozinha, na própria posição.

Parâmetros
refs query obrigatório Referências separadas por vírgula (máx. 50)
version query obrigatório Slug da versão
GET /v1/parse

Interpreta uma referência em texto livre (em qualquer dos 9 idiomas) e devolve livro, capítulo e versículos

Parâmetros
q query obrigatório Referência em texto livre, ex.: João 3:16-18
version query opcional Opcional. É validada e devolvida na resposta

Versões e livros

GET /v1/versions

Lista todas as versões bíblicas (107), com o texto da licença

Parâmetros
language query opcional Filtra por código ISO do idioma (veja /v1/versions para a lista completa)
GET /v1/versions/{slug}

Retorna metadados de uma versão específica

Parâmetros
slug path obrigatório Slug em qualquer idioma
GET /v1/books

Lista os 66 livros da Bíblia

Parâmetros
testament query opcional "old" ou "new"
GET /v1/books/{slug}

Retorna metadados de um livro (aceita slug em qualquer idioma)

Parâmetros
slug path obrigatório Slug em qualquer idioma

Guias copia-e-cola

A mesma requisição, nas ferramentas que você já usa.

Pegar um único versículo /v1/kjv/john/3/16

curl https://api.midvash.com/v1/kjv/john/3/16

Listar versões de um idioma /v1/versions?language=pt-br

curl 'https://api.midvash.com/v1/versions?language=pt-br'

Versículo do dia /v1/votd?language=en

curl 'https://api.midvash.com/v1/votd?language=en'

Formato de resposta e cache

Todo endpoint v1 fala o mesmo envelope JSON e as mesmas regras de cache HTTP.

Envelope de sucesso

Respostas de sucesso envolvem o payload num campo data no topo. Endpoints de listagem e de conteúdo adicionam um objeto meta opcional com totais, a referência resolvida e, sempre que há texto bíblico, o copyright da versão.

{
  "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…"
  }
}

HTTP e cache

CacheO conteúdo é imutável — cacheado por um ano (max-age=31536000, immutable). Conteúdo novo entra numa URL nova, nunca num corpo alterado.
RevalidaçãoToda resposta carrega um ETag forte. Mande If-None-Match e recebe 304 Not Modified sem corpo.
CORSAberta a qualquer origem (Access-Control-Allow-Origin: *). Chame direto do navegador — sem proxy.
MétodosGET, HEAD e OPTIONS. HEAD retorna só os headers; OPTIONS trata o preflight de CORS.
Uma exceção — /v1/votd

O versículo do dia retorna um objeto flat (reference, text, version, book_slug, chapter, verse_start, verse_end, url, copyright) em vez do envelope data/meta, e é cacheado por 24 horas.

Erros

Todo erro usa um único formato e um código estável, legível por máquina.

{
  "error": {
    "code": "BOOK_NOT_FOUND",
    "message": "Book \"jhon\" not found. Did you mean \"john\"?",
    "details": { "didYouMean": "john" }
  }
}
CódigoHTTPQuando acontece
INVALID_PARAMS 400 Um valor de path ou query está malformado — ex.: número de capítulo fora do intervalo.
NOT_FOUND 404 A rota não existe sob /v1.
VERSION_NOT_FOUND 404 Nenhuma versão corresponde ao slug informado — o erro sugere o mais próximo (didYouMean).
BOOK_NOT_FOUND 404 Nenhum livro corresponde ao slug, em qualquer idioma — o erro sugere o mais próximo (didYouMean).
CHAPTER_NOT_FOUND 404 Esse capítulo não está disponível nesta versão.
VERSE_NOT_FOUND 404 O versículo ou intervalo está fora do capítulo.
INTERNAL_ERROR 500 Algo falhou do nosso lado — seguro tentar de novo.

Respostas 4xx são cacheadas de 60 segundos a 24 horas, conforme o quão determinístico é o erro; 5xx nunca são cacheadas, então o retry sempre chega na origem.

Os 66 livros

Os slugs funcionam em qualquer idioma, com ou sem hífen (2-samuel ou 2samuel). Clique num livro para ver seus metadados.

Perguntas frequentes

É grátis mesmo? Preciso de chave de API?

Sim. Sem cadastro, sem chave e sem limite de requisições. Só pedimos que você respeite o ETag (If-None-Match devolve 304) e agrupe referências no /v1/passages em vez de fazer uma requisição por versículo.

Quais versões estão disponíveis?

107 versões em 67 idiomas, todas em domínio público ou com licença livre, como CC BY ou CC BY-SA. A lista ao vivo fica em /v1/versions.

Por que não tem NVI, ARA ou NVT?

As editoras reservam todos os direitos, então não redistribuímos. Quem pede uma delas recebe uma versão livre do mesmo idioma, e data.version informa qual.

O que preciso mostrar no meu app?

O crédito da versão, que vem em meta.copyright (ou copyright no /v1/votd e nas rotas legadas), junto do texto. Algumas licenças têm condições extras, como compartilhar pela mesma licença (CC BY-SA) ou não alterar o texto (CC BY-ND). Leia o texto completo da versão que escolher.

Tem especificação OpenAPI?

Tem: /openapi.json (OpenAPI 3.1) e uma referência interativa em /docs. Para agentes de IA, use o MCP da Bíblia em mcp.midvash.com.