api.getbible.net
A getBible static API: every resource is a file served exactly as published. public, metered · tokens unlimited
Endpoints
Every path starts with a version segment. Each endpoint is an independent tree with its own documentation page, changing on its own schedule.
| Version | Base URL | Documentation | OpenAPI |
|---|---|---|---|
v2 | https://api.getbible.net/v2/ | /v2/ | openapi.json |
v3 | https://api.getbible.net/v3/ | /v3/ | openapi.json |
Machine-readable index of the endpoints and their OpenAPI documents: versions.json.
How to call it
Plain HTTPS GET requests, from any origin. Responses are JSON, plus .sha and .txt files as plain text. Nothing here accepts query strings or request bodies.
curl https://api.getbible.net/v2/path/to/document.json
- Allowed file types:
.json,.sha,.txt. - Methods:
GET,HEAD,OPTIONS. Anything else answers405. - CORS is open:
Access-Control-Allow-Origin: *on every response, preflights answer204. - Caching:
Cache-Control: public, max-age=2592000on documents andmax-age=300on checksum files; every response carries anETag, so conditional requests answer304. - Compression: gzip (and brotli where available) on request.
- Health:
GET /healthzanswers{"status":"ok"}.
Access
This endpoint is public and metered. Anonymous callers share a budget per client address; callers with a bearer token are not limited at all.
| Budget (per address) | Value |
|---|---|
| Sustained rate | 50 requests per second, bursts up to 250 |
| Per hour | about 100000 requests |
| Per day | about 1000000 requests |
| Concurrent connections | 100 |
Budgets are enforced as token buckets, so steady traffic under the quota is never touched and bursts above it are slowed with a 429 rather than cut off.
Using a token
Send it as a bearer credential. Tokens never go in the URL.
curl -H "Authorization: Bearer gb..." https://api.getbible.net/v2/path/to/document.json
Tokens are issued to applications and partners by the getBible team; ask through getBible.net.
Errors
Every error is an RFC 9457 problem document with the media type application/problem+json:
{"type":"https://getbible.net/problems/not-found","title":"Not Found","status":404,"code":"not_found","detail":"No such resource on this API. ...","instance":"urn:request:..."}
| Status | Code | Meaning |
|---|---|---|
| 400 | bad_request | A query string or malformed request was sent. |
| 401 | unauthorized | A bearer token is required and was missing or invalid. |
| 404 | not_found | No such document in this version. |
| 405 | method_not_allowed | Only GET, HEAD and OPTIONS are accepted. |
| 429 | rate_limited | The public budget for your address is used up; a Retry-After header is included. |
| 503 | unavailable | Temporary outage; retry after a moment. |