API Bible Atlas

Этот API открыт, бесплатен и не требует ключа. Сам Bible Atlas использует его на этом сайте и как расширение на других платформах. Цель API — дать разработчикам простой способ получить людей, места, события и визуализации, связанные с любым стихом Библии, и встроить их в свои приложения. API сделан простым и понятным, с ясными конечными точками и единообразными ответами, так что вы сможете построить клиентское приложение любого типа с нужными вам данными.

Один запрос на каждый выбор

Коды книг — трёхбуквенные коды USFM . Передайте несколько номеров стихов, чтобы получить один объединённый ответ без повторов для всей выборки.

GET /api/v1/verse-context?usfm=GEN&chapter=9&verses=8,9

У каждой сущности и визуализации есть своя ссылка на страницу, изображение для карточки и путь для встраивания в iframe.

{
  "reference": "Genesis 9:8-9",
  "entities": [
    {
      "type": "event",
      "name": "God makes a covenant with Noah",
      "href": "/god-makes-a-covenant-with-noah",
      "embed": { "path": "/embed/graph/god-makes-a-covenant-with-noah" }
    },
    { "type": "person", "name": "God", "href": "/god" },
    { "type": "person", "name": "Noah", "href": "/noah" }
  ],
  "visualizations": [
    { "label": "Cross references", "href": "/visualizations/cross-references?ref=Gen.9.8" },
    { "label": "The Noahic Covenant", "href": "/visualizations/covenants#covenant-noahic" }
  ]
}

Показать карточку

Каждая сущность и визуализация в ответе содержит ссылку на страницу и изображение: этого достаточно для карточки.

GET /api/v1/verse-context?usfm=GEN&chapter=9&verses=8,9
<a href="https://bible-atlas.com/noah">
  <img src="https://bible-atlas.com/og/person.png" alt="" />
  <span>Noah</span>
</a>

Встройте стих напрямую

Любой стих можно встроить в приложение через iframe. Достаточно указать в iframe URL стиха, и Bible Atlas покажет лучший доступный вариант встраивания для этого стиха. Он сам занимает всю ширину контейнера и содержит ссылку на стих, связанные сущности и визуализации. Встраивание можно настроить параметрами запроса, например ?theme=dark для тёмной темы или ?height=500 чтобы задать высоту 500 пикселей.

GET /embed/verse/{book}/{chapter}/{verse}
<iframe src="https://bible-atlas.com/embed/verse/genesis/9/8"></iframe>
yourapp.com/read/genesis/9

Тот же iframe вживую. Бытие 9:8 ведёт к графу завета Бога с Ноем.

Командная строка

Пакет bible-atlas оборачивает API для скриптов и агентов. Он выводит JSON, не требует ключа и работает на Node.js 20 и новее. Ошибки идут в stderr в виде code: message, с ненулевым кодом возврата.

npx bible-atlas verse GEN 9 8

Что вы думаете?

Помогите улучшить Bible Atlas, сообщив нам о любых проблемах или недостающих функциях. Мы читаем каждое сообщение и ценим ваше время!