Linden

Documentation

The app lives at linden-harbor.justext.space. The same account can call the API. This page covers the parts a script needs; everything else is in the app.

Getting started

Sign in, open a workspace, and create a token under Account → API tokens. A token belongs to you and can do what you can do in that workspace. Revoke it from the same page when you are done with it.

Authentication

Send the token on every request:

Authorization: Bearer <token>

The base URL is https://linden-harbor.justext.space/api/. A request without a token, or with a token that was revoked, gets 401 and a JSON body.

Change stream

GET /api/v1/sync/stream stays open and sends workspace events as they happen: a page edited, a file added, a comment posted. Pass the workspace id as a query parameter.

curl -N \
  -H "Authorization: Bearer $TOKEN" \
  "https://linden-harbor.justext.space/api/v1/sync/stream?workspace=ws_123"

Each event is one JSON object with id, type and at. Reconnect with the last id you stored; the stream resumes after it.

FieldMeaning
idMonotonic id of the event
typepage, file or comment
atTime of the change, UTC

Errors

Errors are JSON: {"error":"...","message":"..."}.

StatusWhen
401Missing or invalid bearer token
404No workspace with that id, or you are not a member