API
API реализовано через отправку/получение данных в формате JSON. Серверная часть написана на Go, клиентская на Vue, все исходники доступны в GitHub.
На этой странице описаны только общие параметры, для конкретной реализации необходимо смотреть исходный код.
Общие API
/api/config.write — запись пути к директории с заметками, используется только при первом запуске.
/api/ping — используется для определения работоспособности сервера
/api/config.json — возвращает и позволяет менять текущую конфигурацию
/api/favorites.json — управление списком избранных записей
/api/notebooks.json — возвращает список блокнотов
/api/statistic.json — возвращает статистическую информацию, используется на главной странице
/api/refresh_data.json — запуск переиндексации и обновления данных
/api/optimization.json — запуск оптимизации хранилища — все внешние картинки будут скачены и помещены в директорию с заметками, это нужно для работы независимо от внешних серверов
/api/fetch.json — загрузка веб-страницы на стороне сервера, чтобы фронтенд мог обработать её через defuddle, обходит CORS-ограничения браузера
/api/cleanup_html.json — очистка/форматирование HTML-контента на стороне сервера
/api/webp_cache_clear.json — очистка кэша производных WebP-изображений, оригиналы не затрагиваются
/resources/{notebookUUID}/{noteUUID}/{image} — отображение изображений, хранящихся в директории с заметками
Блокноты
/api/notebook_edit.json — добавление/удаление/перемещение/редактирование блокнотов
/api/notes_at_notebook.json — возвращает список заметок в блокноте
Заметки
/api/note.json — конкретная заметка, заголовок, текст и все параметры
/api/note_edit.json — создание/редактирование заметок
/api/note_move.json — перемещение/удаление заметок
Теги
/api/tags.json — возвращает список всех тегов
/api/notes_with_tag.json — список заметок с определенным тегом
/api/tag_edit.json — редактирование тегов
Поиск
/api/search.json — работа с поиском
/api/search_index.json — запуск переиндексации поискового индекса