Most Bible APIs stop at verses.
Let's go further.
Start with a concept: Suffering
Step 1 — Resolve the Topic
curl --get https://holybible.dev/api/topics \
-H "Authorization: Bearer bb_free_demo" \
--data-urlencode "q=suffering"
You get a canonical node — not a keyword match, not a guess:
{
"status": "success",
"query": "suffering",
"matches": [
{
"slug": "suffering",
"name": "Suffering",
"type": "experience",
"match_type": "exact",
"score": 1,
"anchor_count": 5,
"verse_count": 5
}
],
"related": [
{
"slug": "hope",
"name": "Hope",
"type": "virtue",
"relation": "related",
"direction": "outgoing"
},
{
"slug": "patience",
"name": "Patience",
"type": "virtue",
"relation": "related",
"direction": "incoming"
}
]
}
A defined concept. One you can reason from. Related graph nodes surface immediately.
Step 2 — Fetch the Topic Structure
curl https://holybible.dev/api/topics/suffering \
-H "Authorization: Bearer bb_free_demo"
The response gives you everything needed to ground the LLM: a canonical description, related concepts like hope and patience, and anchor verses drawn from passages such as Isaiah 53:3, Romans 5:3, 2 Corinthians 4:17, James 1:2, and 1 Peter 4:12.
Step 3 — Generate (Constrained by Scripture)
Take the retrieved anchor passages and pass them to an LLM with one instruction: only use the provided text.
Here's the full trace:
════════════════════════════════════════
Topic: suffering
════════════════════════════════════════
STEP 1 — Resolve Canonical Topic
→ Suffering [experience]
────────────────────────────────────────
STEP 2 — Doctrinal Context
The experience of pain, loss, or hardship that draws the
human soul toward God, hope, and transformation.
────────────────────────────────────────
STEP 3 — Theological Flow
Suffering —related→ Hope
Patience —related→ Suffering
────────────────────────────────────────
STEP 4 — Anchor Scriptures
Isaiah 53:3
Romans 5:3
2 Corinthians 4:17
James 1:2
────────────────────────────────────────
STEP 5 — Scripture-Constrained Generation
🔒 Only retrieved passages may be used.
You've been through something hard. Maybe this week.
Maybe this year. And part of you wonders — does God
even see this?
He sees it. He *lived* it.
Isaiah 53:3 says He was despised. Rejected. Acquainted
with grief. That's not distant theology — that's your
Savior knowing exactly what your Tuesday felt like.
So when Romans 5:3 says we *glory* in tribulations —
that's not crazy talk. That's someone who's been there
telling you the pain has a destination.
James 1:2 says *count it all joy.* Not fake it. Count it.
Like you're doing math. Like there's something real on
the other side of the equation.
And 2 Corinthians 4:17 tells you what that something is —
an *eternal weight of glory* that makes this moment
look light.
Here's my question — what are you calling a dead end
that God is calling a doorway?
Monday morning? Don't run from the hard thing. Name it.
Then say out loud — *this is working something in me.*
Because it is.
════════════════════════════════════════
Result: Structured, Christ-centered, and grounded in canonical Scripture.
════════════════════════════════════════
What Just Happened
BibleBridge handled the structure: canonical topic, graph relationships, anchor verses.
The LLM handled the generation — but only inside the text it was given.
That's the combination that matters.
This wasn't:
- Freeform generation
- Keyword matching
- Stitched-together verses
This was:
- A canonical topic
- Structured relationships
- Bounded scripture
- An LLM that couldn't wander outside it
The Difference
Most systems can retrieve scripture. This lets you:
- Follow theological structure
- Enforce grounding
- Generate output that stays inside the text
Not just answers. Faithful reasoning.
There's more to explore than this example shows — topics, relationships, anchor verses, all queryable. Dig around at BibleBridge and see what you find.
Try the API at https://holybible.dev
Top comments (0)