Bookmer API
Bookmer should read Console as the source of truth for identity, permissions, and the organization collection. Do not keep a parallel Business Admin UI.
Member consume API
These routes require the member session cookie.
GET /api/org/memberships GET /api/org/:slug/access GET /api/org/:slug/collection PATCH /api/org/:slug/collection POST /api/org/:slug/restore GET /api/org/:slug/members GET /api/org/:slug/shares POST /api/org/:slug/shares DELETE /api/org/:slug/shares/:shareId GET /api/org/:slug/apps GET /api/org/:slug/sso/sessions GET /api/org/:slug/bookmer POST /api/org/:slug/windows-login
GET /access and the other consume routes return 402 when the plan is expired or the organization is over seats. Workplace login is documented at Authentication codes.
/bookmer returns the same access payload plus source: "console"and replaces: "/business/admin" so Bookmer can drop the local business-admin draft.
Collection items and apps are already filtered to the member's permission groups. Items or apps without a group stay visible to every active member. Member reads merge that filtered Blueprint with the personal overlay. PATCH /collection stores only the overlay. POST /restore clears overlay fields back to the Blueprint.
Owner export
GET /api/developer/teamspaces/:id/export
Returns the full Teamspace: members, permission tree, collection settings, items, and apps. Use this for admin backups or a one-time Bookmer import. Day-to-day Bookmer traffic should use the member consume API. A self-hosted Bookmer install is configured under Console → On-premise, not here.
On-premise install
When Bookmer runs on the organization's own server, that instance authenticates with the install token from Console → On-premise.
GET /api/org/:slug/on-premise/bootstrap POST /api/org/:slug/on-premise/heartbeat
Owner session APIs
GET /api/developer/teamspaces POST /api/developer/teamspaces GET /api/developer/teamspaces/:id PATCH /api/developer/teamspaces/:id GET /api/developer/teamspaces/:id/members POST /api/developer/teamspaces/:id/members PATCH /api/developer/teamspaces/:id/members/:memberId GET /api/developer/teamspaces/:id/permissions GET /api/developer/teamspaces/:id/collection GET /api/developer/teamspaces/:id/apps