免费 · 无需 API 密钥 · 不限次数

圣经 API by Midvash

67 种语言、107 个可自由使用的圣经版本,提供经文、章节和书卷。通过 HTTPS 返回 JSON,浏览器可直接调用。无需注册,无需密钥。

一次调用获取一节经文

直接调用 API,无需配置,无需认证。

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

为什么选择它

107 个自由版本

和合本(简体与繁体)、KJV、BSB、Louis Segond、Luther 1912 等,覆盖 67 种语言。全部为公有领域或开放许可。

自带版权说明

每个包含经文的响应都附带该版本的版权说明,标注出处只需读取一个字段。

边缘加速

由 Cloudflare 边缘节点提供,长期缓存并带 ETag。重新验证时返回空的 304。

无密钥,不限次数

无需注册,无需 API 密钥,不会返回 429。CORS 全开放,任何网页都能直接调用。

版本与许可

67 种语言共 107 个版本,全部为公有领域或开放许可。点击任意版本查看元数据和完整许可文本。

在经文旁显示版权说明

每个包含经文的响应都带有该版本的版权说明:v1 中为 meta.copyright,/v1/votd 和旧版路由中为 copyright。请在经文附近显示。CC BY 和 CC BY-SA 许可要求这样做。

请求的版本已不再提供?

保留全部权利的版本(NIV、ESV、NLT、NVI、ARA、NVT、NTV 等)不再提供。旧链接仍然可用:会返回同一语言的自由版本,data.version 会告诉你实际返回的是哪一个。

API 参考

全部 v1 接口。点击"试一下"发起真实请求并查看 JSON 响应。

圣经内容

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

返回完整的圣经章节

参数
version path 必填 版本 slug(例:kjv、almeida-livre)
book path 必填 任意语言的书卷 slug
chapter path 必填 章节序号
preview query 可选 将文本截断到约 N 个字符(40 到 2000),用于悬浮提示
GET /v1/{version}/{book}/{chapter}/{verse}

返回单节或一段经文(16 或 16-20)

参数
version path 必填 版本 slug(例:kjv、almeida-livre)
book path 必填 任意语言的书卷 slug
chapter path 必填 章节序号
verse path 必填 单节(16)或经文段(16-20)
GET /v1/votd

每日经文:同一 UTC 日期所有人获得同一节经文,附版本版权说明(缓存 24 小时)

参数
language query 可选 语言(en、pt-br、es、fr、de、it、zh、ru、ko),默认 en。
version query 可选 版本 slug,默认使用所选语言的官方版本。

批量与解析

GET /v1/passages

一次调用获取最多 50 处经文。无效引用只会在其所在位置单独报错。

参数
refs query 必填 以逗号分隔的引用(最多 50 个)
version query 必填 版本 slug
GET /v1/parse

将自由文本引用(9 种语言均可)解析为书卷、章和节

参数
q query 必填 自由文本引用,例如 约翰福音 3:16-18
version query 可选 可选。会被校验并在响应中返回

版本与书卷

GET /v1/versions

列出全部圣经版本(107 个),含许可文本

参数
language query 可选 按 ISO 语言代码过滤(完整列表见 /v1/versions)
GET /v1/versions/{slug}

返回指定版本的元数据

参数
slug path 必填 任意语言的 slug
GET /v1/books

列出圣经全部 66 卷书

参数
testament query 可选 "old" 或 "new"
GET /v1/books/{slug}

返回单卷书的元数据(支持任意语言的 slug)

参数
slug path 必填 任意语言的 slug

复制即用指南

同一个请求,用你已经在用的工具。

获取单节经文 /v1/kjv/john/3/16

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

列出某语言的版本 /v1/versions?language=pt-br

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

每日经文 /v1/votd?language=en

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

响应格式与缓存

每个 v1 接口都使用相同的 JSON 外壳和相同的 HTTP 缓存规则。

成功外壳

成功响应将载荷包装在顶层的 data 字段中。列表和内容接口会附加可选的 meta 对象,包含总数、解析后的引用,以及返回经文时该版本的版权说明(copyright)。

{
  "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 与缓存

缓存内容不可变 —— 缓存一年(max-age=31536000, immutable)。新内容使用新的 URL,绝不修改响应体。
重新验证每个响应都带有强 ETag。发送 If-None-Match 即可获得 304 Not Modified(无响应体)。
CORS对所有来源开放(Access-Control-Allow-Origin: *)。可直接从浏览器调用,无需代理。
方法GET、HEAD 和 OPTIONS。HEAD 仅返回响应头;OPTIONS 处理 CORS 预检。
一个例外 —— /v1/votd

每日经文返回一个扁平对象(reference, text, version, book_slug, chapter, verse_start, verse_end, url, copyright),而非 data/meta 外壳,并缓存 24 小时。

错误

每个错误都使用统一格式和稳定、可被机器读取的代码。

{
  "error": {
    "code": "BOOK_NOT_FOUND",
    "message": "Book \"jhon\" not found. Did you mean \"john\"?",
    "details": { "didYouMean": "john" }
  }
}
代码HTTP何时发生
INVALID_PARAMS 400 路径或查询值格式不正确 —— 例如章节号超出范围。
NOT_FOUND 404 该路由在 /v1 下不存在。
VERSION_NOT_FOUND 404 没有版本匹配给定的 slug —— 错误会给出最接近的建议(didYouMean)。
BOOK_NOT_FOUND 404 没有书卷匹配该 slug(任意语言)—— 错误会给出最接近的建议(didYouMean)。
CHAPTER_NOT_FOUND 404 该章节在此版本中不可用。
VERSE_NOT_FOUND 404 经文或区间超出该章范围。
INTERNAL_ERROR 500 我方出现故障 —— 可安全重试。

4xx 响应根据错误的确定性缓存 60 秒到 24 小时;5xx 从不缓存,因此重试总能到达源站。

全部 66 卷书

slug 支持任意语言,连字符可有可无(2-samuel 或 2samuel)。点击书卷查看其元数据。

常见问题

真的免费吗?需要 API 密钥吗?

是的。无需注册,无需密钥,也不限请求次数。只请你遵循 ETag(If-None-Match 会返回 304),并用 /v1/passages 批量获取引用,而不是每节经文发一次请求。

有哪些版本?

67 种语言共 107 个版本,全部为公有领域或采用 CC BY、CC BY-SA 等开放许可。实时列表见 /v1/versions。

为什么没有 NIV 或 ESV?

这些版本的出版方保留全部权利,因此我们不转发它们。请求其中某个版本时,会返回同一语言的自由版本,data.version 会标明是哪一个。

我的应用需要显示什么?

在经文旁显示该版本的版权说明,来自 meta.copyright(/v1/votd 和旧版路由中为 copyright)。部分许可还有附加条件,例如以相同方式共享(CC BY-SA)或禁止修改文本(CC BY-ND)。请阅读所选版本的完整许可文本。

有 OpenAPI 规范吗?

有:/openapi.json(OpenAPI 3.1),以及位于 /docs 的交互式参考。AI 智能体可以使用 mcp.midvash.com 上的圣经 MCP。