BookfusionPluginsResearch/README.md

2.9 KiB
Raw Blame History

BookFusion Plugins Research

Реверс-инжиниринг semi-public REST API сервиса BookFusion по исходникам двух официальных плагинов. Результат — документация API, тесты и Calibre-плагин для обратной синхронизации дат чтения.

Исходный url - https://git.viorsan.com/vrr/BookfusionPluginsResearch Зеркало https://github.com/intari/BookfusionResearchPlugins

Структура репозитория

Путь Описание
calibre-plugin/ Исходники официального Calibre-плагина BookFusion (только чтение)
obsidian-plugin/ Исходники официального Obsidian-плагина BookFusion (только чтение)
docs/api.md Документация API, восстановленная из исходников
docs/tasks/api-research.md Тикет с полным результатом исследования
docs/notes.md Заметки по архитектуре Back Sync и Private API
tests/ Тесты Calibre API и Obsidian API (pytest + bash/curl)
private_api/ Документация и тесты Private API BookFusion
BookfusionBackSync/ Исходники Calibre-плагина Back Sync
BookfusionBackSync.zip Готовый архив плагина для установки в Calibre

BookFusion API

Два semi-public REST API без официальной документации:

API Base URL Аутентификация
Calibre API v1 https://www.bookfusion.com/calibre-api/v1 HTTP Basic: base64(api_key:)
Obsidian API https://www.bookfusion.com Заголовок X-Token: {token}

Полная документация со всеми эндпоинтами, структурами запросов и ответов — в docs/api.md.


Тесты

Тесты охватывают оба API. Obsidian happy-path тесты требуют OBSIDIAN_TOKEN (получается однократно через браузер — см. docs/api.md, раздел 2.2).

pip install pytest requests

# pytest
export API_USER=your_bookfusion_api_key
pytest tests/ -v

# bash/curl (WSL / Linux)
export API_USER=your_bookfusion_api_key
bash tests/test_api.sh

BookFusion Back Sync

Calibre-плагин, который читает даты последнего чтения из BookFusion и записывает их в выбранную custom-колонку Calibre (тип Date).

Установка: скачать BookfusionBackSync.zip → Calibre Preferences → Plugins → Load plugin from file.

Подробнее — в BookfusionBackSync/readme.md.