The livediagram API

The same REST API the editor uses, callable from your own scripts with an API token.

Everything the livediagram editor does, it does by calling a REST API. That API is open to you too: with an API token your own scripts and integrations can read, create, and update diagrams, tabs, folders, images, and themes, exactly as the app does.

If you want to connect an AI assistant rather than write code, you usually want the MCP server instead. It wraps this API in tools Claude and other MCP clients can call directly.

The base URL

The API lives under /api on your livediagram host. On the hosted service that is:

https://livediagram.app/api

On a self-hosted instance it is /api on your own domain. Every path in these docs is relative to that base, so GET /diagrams means GET https://livediagram.app/api/diagrams.

Authenticating in one line

Send an API token as a bearer header on each request:

curl https://livediagram.app/api/diagrams \
  -H "Authorization: Bearer lvd_your_token_here"

API tokens are a signed-in-only feature. Authentication covers how to create one and how token access compares to the guest path.

What you can do

The token-callable surface mirrors the app:

  • Diagrams and tabs — list, read, create, update, copy, and delete diagrams, and read or replace the contents of individual tabs.
  • Folders — organise diagrams into your personal folder tree.
  • Sharing — create, list, and revoke share links, and set a share password.
  • Images and themes — upload and reference images, and manage your saved custom themes.
  • Activity — read or append a diagram's change log.

Working with Diagrams walks through the common calls with copy-pasteable examples.

The full reference

The complete, machine-readable description of every endpoint, request shape, and response shape is published as an OpenAPI 3.1 document, with no authentication required:

curl https://livediagram.app/api/openapi.json

Point Postman, an OpenAPI viewer, or a client generator at that URL to explore the whole surface or scaffold a client. Endpoints an external token can use are tagged x-token-usable.

The realtime collaboration WebSocket is not part of the REST reference. The OpenAPI document lists the upgrade endpoint, but the live message protocol is intentionally separate.

Was this article helpful?