Sandbox — LSD is in active testing. All systems operational·payments are test-mode (no real charges).
Overview Use Cases News Docs Tool Store Support Community Get LSD
All docs
Docs/ API Reference/ describe_api/ describe_api
describe_api· function

describe_api

returns a json-ready snapshot of registered steps, entities, and the public surface

Python
describe_api() -> Dict[str, Any]

Returns Dict[str, Any] — a JSON-serialisable snapshot with api_version, lsd_version, public_api, steps, and entities

Example#

Python
from lsdtools import describe_api

api = describe_api()
print(api["api_version"], len(api["steps"]))
# → "2.1" 12

Walk the registered steps and their parameters:

Python
for name, step in describe_api()["steps"].items():
    print(name, step["kind"], [p["name"] for p in step["params"]])

Notes#

The return value is a plain, JSON-ready dict with these top-level keys:

key type what
api_version str the public API_VERSION, e.g. "2.1"
lsd_version str the engine/product version
public_api list[str] the sorted public API names (all importable from lsdtools)
steps dict registered load/shape/deliver steps by name — each entry has kind, params, input_ports, output_ports
entities dict registered entity types by name — each entry has creatable, create_label, params

It introspects the currently registered step/entity classes, so load your packages first (the lsd CLI does this) or installed contributions won't appear. This is the same data behind lsd api describe and the AI authoring context.

See also#

API: describe_text · describe_markdown · CLI commands

Guides: lsdtools API reference

By LSD Team · Last updated Jul 18, 2026 Ask on Discord View as Markdown