Developer
HolyArc API
Free REST API for Bible data, cross-references, and search. Use it to build devotional apps, widgets, or Bible study tools.
Authentication
All API requests require a bearer token. Generate your key in Settings → API Keys.
AUTHORIZATION HEADER
Authorization: Bearer ha_your_api_key_here
Rate limit: 60 requests/minute per key. Response headers include X-RateLimit-Remaining and X-RateLimit-Reset.
Base URL
https://holyarc.com
Endpoints
GET
/api/v1/versesscope: versesRetrieve verse(s) by reference or list by book/chapter.
Query Parameters
refstringoptionalVerse reference e.g. "John 3:16"bookintegeroptionalBook index 0–65 (Genesis=0, Revelation=65)chapterintegeroptionalChapter number (requires book)limitintegeroptionalResults per page (1–200, default 50)offsetintegeroptionalPagination offset (default 0)Example
GET /api/v1/verses?ref=John+3:16
{
"data": {
"id": 26136,
"reference": "John 3:16",
"bookIndex": 42,
"chapter": 3,
"verseNum": 16,
"kjvText": "For God so loved the world, that he gave his only begotten Son...",
"nivText": "For God so loved the world that he gave his one and only Son..."
}
}GET
/api/v1/cross-refsscope: cross-refsRetrieve cross-references. Filter by verse or connection type.
Query Parameters
versestringoptionalVerse reference to fetch connections fortypestringoptionalprophecy | typology | parallel | themelimitintegeroptionalMax results (1–200, default 50)offsetintegeroptionalPagination offsetExample
GET /api/v1/cross-refs?verse=John+3:16&type=parallel
{
"data": [
{
"id": 12345,
"type": "parallel",
"label": null,
"confidence": 0.95,
"fromVerse": {
"id": 26136,
"reference": "John 3:16",
"kjvText": "..."
},
"toVerse": {
"id": 23145,
"reference": "Rom 5:8",
"kjvText": "..."
}
}
],
"meta": {
"total": 1,
"limit": 50,
"offset": 0,
"returned": 1
}
}GET
/api/v1/searchscope: searchKeyword search across verse text and references.
Query Parameters
qstringrequiredSearch query (min 2 chars)limitintegeroptionalMax results (1–50, default 20)Example
GET /api/v1/search?q=shepherd
{
"data": [
{
"id": 14012,
"reference": "Psa 23:1",
"kjvText": "The LORD is my shepherd; I shall not want."
}
],
"meta": {
"query": "shepherd",
"returned": 20
}
}Error Codes
400Bad Request — missing or invalid parameters.
401Unauthorized — missing or invalid API key.
403Forbidden — key is expired, disabled, or lacks required scope.
404Not Found — resource does not exist.
429Too Many Requests — rate limit exceeded. See Retry-After header.
500Internal Server Error — something went wrong on our side.
Usage Example
// JavaScript / TypeScript
const response = await fetch(
'https://holyarc.com/api/v1/verses?ref=Psa+23:1',
{ headers: { Authorization: 'Bearer ha_your_key' } }
);
const { data } = await response.json();
console.log(data.kjvText);
// → "The LORD is my shepherd; I shall not want."Questions or issues? Post in the HolyArc community or email api@holyarc.com