Zum Inhalt springen

REST-API Überblick

import { Aside } from ‘@astrojs/starlight/components’;

Die REST-API unter /api/v1/ ist die stabile JSON-Schnittstelle für Integrationen (inkl. Obsidian-Plugin). Diese Seite beschreibt übergreifendes Verhalten; Einzelfelder stehen in der OpenAPI-Referenz.

Identisch mit der Origin deiner Orimora-Instanz:

  • Lokal (Vite): http://localhost:5173
  • Docker (App-Port 3000): http://localhost:3000

Alle Pfade sind relativ zu dieser Basis.

  1. Einstellungen → Entwickler — neuen Schlüssel anlegen.
  2. Präfix kb_, beim ersten Anzeigen sichern.
  3. Header:
Authorization: Bearer kb_dein_schlüssel
ScopeTypische Nutzung
readListen und Abruf
writeAnlegen und Ändern
adminadministrative Aktionen (wo die API es vorsieht)

Standard ist oft read + write. Integrations möglichst mit minimalem Scope planen.

BereichOrientierungswert
Globales /api/*-Limitetwa 100 Anfragen pro Minute pro Nutzer oder Client-IP
GET /api/healthvom globalen Limit ausgenommen

Antwort bei Überschreitung: HTTP 429 mit JSON, u. a. retryAfterSeconds. Header: X-RateLimit-*, bei 429 zusätzlich Retry-After.

Automation: bei 429 mit exponentieller Pause erneut versuchen.

Ohne updatedSince enthält die Antwort typischerweise data, total, limit, offset.

  • Query-Parameter updatedSince (ISO 8601) — nur geänderte Dokumente.
  • Optional format=markdown — liefert pro Eintrag markdownText (u. a. für Obsidian Selective Pull).
  • Hohe effektive Limits; Details im OpenAPI-Eintrag list documents.
  • text: Markdown — wird serverseitig in TipTap/ProseMirror-JSON umgewandelt.
  • content: bereits serialisiertes TipTap-JSON — für fortgeschrittene Clients.

Beispiel:

{ "error": "Document not found" }
HTTPBedeutung (vereinfacht)
401Kein/ungültiger Schlüssel
403Kein Workspace / keine Rechte
404Ressource fehlt
429Rate-Limit

Maschinenlesbare Spezifikation (3.1) und interaktive Oberfläche: API-Referenz →