Inicio rápido
1. Consigue una API key
Solicítala en el formulario de solicitud. Las solicitudes se revisan a mano y recibirás un correo cuando la tuya sea aprobada.
Las keys llevan un prefijo según el entorno: bql_live_ para producción y bql_test_ para
desarrollo. Una key solo funciona en el entorno para el que fue emitida.
2. Guárdala en tu entorno
Nunca pegues una key en el control de versiones.
export BIBLEQL_API_KEY="bql_live_tu_key_aqui"
3. Haz una petición
- GraphQL
- cURL
- Ruby
- Node.js
- Response
query {
passage(translation: "spa-rv1909", reference: "Juan 3:16") {
reference
text
translationName
}
}
curl https://bibleql.org/graphql \
-H "Authorization: Bearer $BIBLEQL_API_KEY" \
-H "Content-Type: application/json" \
--data '{"query":"query { passage(translation: \"spa-rv1909\", reference: \"Juan 3:16\") { reference text translationName } }"}'
require "bibleql"
client = BibleQL::Client.new(
api_key: ENV.fetch("BIBLEQL_API_KEY"),
api_url: "https://bibleql.org/graphql"
)
passage = client.passage("Juan 3:16", translation: "spa-rv1909")
puts passage.reference
puts passage.text
import { BibleQLClient } from "bibleql-js";
const client = new BibleQLClient({
apiKey: process.env.BIBLEQL_API_KEY!,
apiUrl: "https://bibleql.org/graphql",
});
const passage = await client.passage("Juan 3:16", {
translation: "spa-rv1909",
});
console.log(passage.reference, passage.text);
{
"data": {
"passage": {
"reference": "Juan 3:16",
"text": "Porque de tal manera amó Dios al mundo, que ha dado á su Hijo unigénito, para que todo aquel que en él cree, no se pierda, mas tenga vida eterna.",
"translationName": "Reina Valera 1909"
}
}
}
Deberías recibir:
{
"data": {
"passage": {
"reference": "Juan 3:16",
"text": "Porque de tal manera amó Dios al mundo, que ha dado á su Hijo unigénito, para que todo aquel que en él cree, no se pierda, mas tenga vida eterna.",
"translationName": "Reina Valera 1909"
}
}
}
4. Entiende la respuesta
GraphQL devuelve exactamente los campos que pediste, dentro de un objeto data de nivel
superior.
referencees la referencia interpretada y normalizada.textson todos los versículos encontrados unidos por saltos de línea — cómodo para mostrar.translationNamees el nombre legible de la traducción.
Si hubieras pedido verses { verse text } en lugar de text, habrías recibido cada versículo
por separado. Nada se devuelve si no lo pides.
Los errores llegan en un arreglo errors de nivel superior, no como un código de estado HTTP
de error — consulta Errores.
Siguientes pasos
- Explora de forma interactiva en el playground
- Aprende los formatos de referencia — rangos, capítulos, multirrangos
- Revisa las traducciones disponibles
- Instala un SDK si prefieres no escribir GraphQL a mano
Todos los ejemplos de este sitio hacen POST a https://bibleql.org/graphql. No existe una
variante GET.