API-Referenz
Jede Operation, die Lithic unter /api/v1 aufruft — 145 an der Zahl, verteilt auf 109 Pfade, erzeugt aus dem OpenAPI-3.1.0-Dokument, das der Server aus seiner eigenen Routentabelle schreibt. Was hier steht, gibt es auch.
Ein Server bedient mehr als ein Produkt; diese Referenz deckt die Bereiche ab, die dieses hier nutzt. Ein Endpunkt, der auf diesen Seiten fehlt, fehlt deshalb nicht zwangsläufig im Server — er gehört zu einer Oberfläche, die Ihnen nicht gegeben wurde.
Die Endpunkte selbst stehen auf Englisch. Ihre Beschreibungen stammen unverändert aus der Routentabelle des Servers, und die gibt es genau einmal. Eine übersetzte Zweitfassung würde beim ersten Routen-Umbau auseinanderlaufen, ohne dass es jemandem auffällt — das wäre der teurere Fehler.
Fangen Sie bei API an: Authentifizierung, Fehlerformate, Seitenweise Abfrage und Webhooks.
Workspaces und Personen
Workspaces mit ihren Mitgliedern, Gruppen und Einladungen, die Rechte des aufrufenden Kontos und der bisher verbrauchte Anteil am gebuchten Tarif.
GET /api/v1/workspacesPOST /api/v1/workspacesGET /api/v1/workspaces/activatableGET /api/v1/workspaces/{workspaceId}PATCH /api/v1/workspaces/{workspaceId}DELETE /api/v1/workspaces/{workspaceId}POST /api/v1/workspaces/{workspaceId}/activationGET /api/v1/workspaces/{workspaceId}/membersGET /api/v1/workspaces/{workspaceId}/collections/{collectionId}/membersPUT /api/v1/workspaces/{workspaceId}/collections/{collectionId}/membersDELETE /api/v1/workspaces/{workspaceId}/collections/{collectionId}/members/{subjectType}/{subjectId}POST /api/v1/me/avatarDELETE /api/v1/me/avatarGET /api/v1/users/{userId}/avatarGET /api/v1/workspaces/{workspaceId}/usageGET /api/v1/workspaces/{workspaceId}/me/capabilitiesPATCH /api/v1/workspaces/{workspaceId}/members/{userId}DELETE /api/v1/workspaces/{workspaceId}/members/{userId}GET /api/v1/workspaces/{workspaceId}/groupsPOST /api/v1/workspaces/{workspaceId}/groupsPATCH /api/v1/workspaces/{workspaceId}/groups/{groupId}DELETE /api/v1/workspaces/{workspaceId}/groups/{groupId}GET /api/v1/workspaces/{workspaceId}/groups/{groupId}/membersPUT /api/v1/workspaces/{workspaceId}/groups/{groupId}/members/{userId}DELETE /api/v1/workspaces/{workspaceId}/groups/{groupId}/members/{userId}GET /api/v1/workspaces/{workspaceId}/invitationsPOST /api/v1/workspaces/{workspaceId}/invitationsDELETE /api/v1/workspaces/{workspaceId}/invitations/{invitationId}POST /api/v1/invitations/accept
Outlines
Outliner-Dokumente: ein Strukturblock wie eine Seite, dessen Knotenbaum aber im Dokument selbst steckt und nicht im Seitenbaum.
GET /api/v1/workspaces/{workspaceId}/outlinesPOST /api/v1/workspaces/{workspaceId}/outlinesGET /api/v1/workspaces/{workspaceId}/outlines/{outlineId}PATCH /api/v1/workspaces/{workspaceId}/outlines/{outlineId}DELETE /api/v1/workspaces/{workspaceId}/outlines/{outlineId}GET /api/v1/workspaces/{workspaceId}/outlines/{outlineId}/markdownPUT /api/v1/workspaces/{workspaceId}/outlines/{outlineId}/markdownPOST /api/v1/workspaces/{workspaceId}/outlines/{outlineId}/moveGET /api/v1/workspaces/{workspaceId}/outlines/{outlineId}/pane-layoutPUT /api/v1/workspaces/{workspaceId}/outlines/{outlineId}/pane-layout
Verweise über Produktgrenzen
Die eine Tür, durch die ein Verweis eine Produktgrenze überschreitet: ein Projekt von einer Oberfläche aus anlegen, die selbst keine hat, und eine gespeicherte Id in die Worte auflösen, die daneben stehen. Hinüber geht eine Identität, nie Inhalt — ein Titel wird dort aufgelöst, wo er gezeichnet wird, und ein Verweis, den niemand sehen darf, löst zu nichts auf statt zu einem Fehler. Beide Produkte müssen im Workspace aktiv sein.
POST /api/v1/workspaces/{workspaceId}/cross-refs/resolvePOST /api/v1/workspaces/{workspaceId}/cross-refs/projects
Seiten
Seiten anlegen, verschieben, in den Papierkorb legen und zurückholen; dazu ihre Markdown-Oberfläche, Feldwerte, Relationen, Backlinks, die Suche und die angehefteten Seiten.
GET /api/v1/workspaces/{workspaceId}/pagesPOST /api/v1/workspaces/{workspaceId}/pagesGET /api/v1/workspaces/{workspaceId}/pages/{pageId}PUT /api/v1/workspaces/{workspaceId}/pages/{pageId}PATCH /api/v1/workspaces/{workspaceId}/pages/{pageId}POST /api/v1/workspaces/{workspaceId}/pages/{pageId}/movePOST /api/v1/workspaces/{workspaceId}/pages/{pageId}/duplicatePOST /api/v1/workspaces/{workspaceId}/pages/{pageId}/trashPOST /api/v1/workspaces/{workspaceId}/pages/{pageId}/restoreGET /api/v1/workspaces/{workspaceId}/trashGET /api/v1/workspaces/{workspaceId}/trash/summaryDELETE /api/v1/workspaces/{workspaceId}/pages/{pageId}/permanentPOST /api/v1/workspaces/{workspaceId}/trash/emptyGET /api/v1/workspaces/{workspaceId}/searchGET /api/v1/workspaces/{workspaceId}/favoritesPOST /api/v1/workspaces/{workspaceId}/favoritesDELETE /api/v1/workspaces/{workspaceId}/favorites/{pageId}POST /api/v1/workspaces/{workspaceId}/favorites/{pageId}/moveGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/boardsGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/backlinksGET /api/v1/workspaces/{workspaceId}/blocks/{blockId}/referencesGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/referenced-blocksGET /api/v1/workspaces/{workspaceId}/blocks/{blockId}/ref-targetGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/fieldsGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/propsPATCH /api/v1/workspaces/{workspaceId}/pages/{pageId}/propsGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/relationsPUT /api/v1/workspaces/{workspaceId}/pages/{pageId}/relations/{fieldId}
Zusammenarbeit
Kommentare, Seitenverlauf, Aktivität, Benachrichtigungen, Anhänge und die Symbolbibliothek des Workspace.
POST /api/v1/workspaces/{workspaceId}/attachmentsGET /api/v1/workspaces/{workspaceId}/attachments/{attachmentId}GET /api/v1/workspaces/{workspaceId}/symbolsPOST /api/v1/workspaces/{workspaceId}/symbolsPATCH /api/v1/workspaces/{workspaceId}/symbols/{symbolId}DELETE /api/v1/workspaces/{workspaceId}/symbols/{symbolId}GET /api/v1/workspaces/{workspaceId}/pages/{pageId}/commentsPOST /api/v1/workspaces/{workspaceId}/pages/{pageId}/commentsGET /api/v1/workspaces/{workspaceId}/commentsGET /api/v1/workspaces/{workspaceId}/comment-threads/{threadId}POST /api/v1/workspaces/{workspaceId}/comment-threads/{threadId}/commentsPOST /api/v1/workspaces/{workspaceId}/comment-threads/{threadId}/resolvePATCH /api/v1/workspaces/{workspaceId}/comment-threads/{threadId}/comments/{commentId}DELETE /api/v1/workspaces/{workspaceId}/comment-threads/{threadId}/comments/{commentId}GET /api/v1/workspaces/{workspaceId}/pages/{pageId}/historyPOST /api/v1/workspaces/{workspaceId}/pages/{pageId}/historyGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/history/{versionId}DELETE /api/v1/workspaces/{workspaceId}/pages/{pageId}/history/{versionId}POST /api/v1/workspaces/{workspaceId}/pages/{pageId}/history/{versionId}/restoreGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/activityGET /api/v1/workspaces/{workspaceId}/activityGET /api/v1/workspaces/{workspaceId}/notificationsGET /api/v1/workspaces/{workspaceId}/notifications/summaryPOST /api/v1/workspaces/{workspaceId}/notifications/{notificationId}/readPOST /api/v1/workspaces/{workspaceId}/notifications/readDELETE /api/v1/workspaces/{workspaceId}/notifications/{notificationId}
Rechte und Freigaben
Zugriffslisten je Seite, Grenzen der Einschränkung, öffentliche Freigabelinks und die Token-Routen, über die ein Fremder sie liest.
GET /api/v1/public/shares/{token}GET /api/v1/public/shares/{token}/pages/{pageId}GET /api/v1/public/shares/{token}/attachments/{attachmentId}GET /api/v1/workspaces/{workspaceId}/pages/{pageId}/public-sharePUT /api/v1/workspaces/{workspaceId}/pages/{pageId}/public-shareDELETE /api/v1/workspaces/{workspaceId}/pages/{pageId}/public-shareGET /api/v1/workspaces/{workspaceId}/pages/{pageId}/accessPUT /api/v1/workspaces/{workspaceId}/pages/{pageId}/permissionsDELETE /api/v1/workspaces/{workspaceId}/pages/{pageId}/permissions/{subjectType}/{subjectId}POST /api/v1/workspaces/{workspaceId}/pages/{pageId}/restrict
Automatisierung
Persönliche Zugriffstoken, Webhooks, Export und das Auflösen von Links — überall dort spricht die Instanz nach außen. Dazu die wenigen Routen, die in die Gegenrichtung laufen: die Anmeldung zum frühen Zugang und die Frage des Anmeldebildschirms, welche Wege hinein diese Installation überhaupt anbietet. Das sind die Teile dieser API, die ganz ohne Sitzung erreichbar sind.
GET /api/v1/auth/methodsPOST /api/v1/waitlistPOST /api/v1/waitlist/confirmPOST /api/v1/waitlist/unsubscribePOST /api/v1/workspaces/{workspaceId}/unfurlGET /api/v1/workspaces/{workspaceId}/exportGET /api/v1/workspaces/{workspaceId}/tokensPOST /api/v1/workspaces/{workspaceId}/tokensDELETE /api/v1/workspaces/{workspaceId}/tokens/{tokenId}GET /api/v1/workspaces/{workspaceId}/webhooksPOST /api/v1/workspaces/{workspaceId}/webhooksPATCH /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}DELETE /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}POST /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}/secretGET /api/v1/workspaces/{workspaceId}/webhooks/{webhookId}/deliveries
Verbundene Konten
Die eigene Berechtigung einer Person bei einem fremden Dienst — Google, Microsoft, ein CalDAV-Server oder ein schlichtes ICS-Abonnement — und der Kalenderspiegel, den sie speist. Persönlich und nicht im Workspace geteilt: Diese Routen antworten mit den Verbindungen des aufrufenden Kontos und mit keinen anderen, eine Workspace-Administratorin sieht also ihre eigenen und keine fremden. Zwei Routen ändern einen Termin beim Anbieter, und nur in einem Kalender, der dafür eingeschaltet wurde; alles Übrige liest. Keine Route gibt ein Geheimnis heraus: Refresh-Token, anwendungsspezifisches Passwort und Abonnement-URL bleiben auf dem Server — Letztere wird als das Zugangsgeheimnis behandelt, das sie ist.
GET /api/v1/workspaces/{workspaceId}/connected-accountsPOST /api/v1/workspaces/{workspaceId}/connected-accountsDELETE /api/v1/workspaces/{workspaceId}/connected-accounts/{connectionId}GET /api/v1/workspaces/{workspaceId}/connected-accounts/{connectionId}/calendarsPOST /api/v1/workspaces/{workspaceId}/connected-accounts/{connectionId}/resyncPATCH /api/v1/workspaces/{workspaceId}/connected-accounts/{connectionId}/calendars/{sourceId}GET /api/v1/workspaces/{workspaceId}/calendar/eventsPATCH /api/v1/workspaces/{workspaceId}/calendar/eventsDELETE /api/v1/workspaces/{workspaceId}/calendar/eventsGET /api/v1/workspaces/{workspaceId}/calendar/ticksPUT /api/v1/workspaces/{workspaceId}/calendar/ticksGET /api/v1/workspaces/{workspaceId}/calendar/publicationsPUT /api/v1/workspaces/{workspaceId}/calendar/publication-scopesPOST /api/v1/workspaces/{workspaceId}/calendar/publications/retryPOST /api/v1/workspaces/{workspaceId}/connected-accounts/oauth/startPOST /api/v1/connectors/oauth/callback
Abrechnung und Rechnungen
Abonnement und Rechnungsdaten des Workspace sowie die Rechnungen, die diese Instanz im eigenen Nummernkreis ausstellt — dazu der Rückruf des Zahlungsdienstleisters.
POST /api/v1/billing/webhookGET /api/v1/workspaces/{workspaceId}/billing/subscriptionGET /api/v1/workspaces/{workspaceId}/billing/customerPUT /api/v1/workspaces/{workspaceId}/billing/customerGET /api/v1/workspaces/{workspaceId}/billing/invoicesGET /api/v1/workspaces/{workspaceId}/billing/invoices/{invoiceId}GET /api/v1/workspaces/{workspaceId}/billing/invoices/{invoiceId}/documentPOST /api/v1/workspaces/{workspaceId}/billing/checkout
Feedback
Eine Fehlermeldung oder eine Idee aus der laufenden Anwendung heraus einsenden. Mit Sitzung und bewusst außerhalb von /workspaces/{workspaceId}: Die Meldung ist an die Betreiber der Instanz gerichtet und nicht an einen Workspace — deshalb ist sie nur mit Sitzung erreichbar, und deshalb begründet der genannte Workspace keine Berechtigung. Mit unterwegs sind der Bildschirm, auf dem sie geschrieben wurde, die Version, das Fenster, die Eingabeart und eine strukturelle Aufzeichnung dessen, was die Anwendung getan hat — nie etwas, das jemand geschrieben hat. Betreiber lesen sie im Backoffice.