Ligantic 1.59 makes the ligantic CLI and the public API complete enough to build with: every API operation is a CLI command, Schemas, Flows, and Experiences can be changed one piece at a time, and output is designed for scripts and AI agents. The Experience designer now supports multi-select editing, and Display Templates now include a field picker.
ligantic command: Experiences, Space secrets, roles, domains, invites, OAuth credentials, folders, organisations, billing, and more.ligantic cli search to find the command for a task.--data <json|@file|-> supplies a whole request body, and --dry-run prints the request without sending it.--json and --table force either format.{"error":{"message","code","status","requestId?","issues?"}}.0 success, 1 failure, 2 usage error, 3 not authenticated or not permitted, 4 not found.ligantic cli search "update a record" ranks commands for a task, ligantic cli commands --json lists every command with its arguments and options, and ligantic <command> --help --json describes one command.schemas fields add|update|delete changes one field, addressed by id, name, or dot path.flows nodes add|update|delete and flows edges add|delete change one node or edge. flows nodes list shows each node's handles, and an edge to a handle that does not exist is rejected with the node's real handles.experiences blocks add|update|replace|move|delete changes one block; experiences blocks outline and experiences blocks show read the block tree compactly or one block in full.flows node-types show <type> and experiences block-types show <type> describe the configuration a node or block accepts.records link and records unlink connect and disconnect Records through a relationship field by its name, in either direction. Single-value relationships reject a second target.records list and records show accept --expand to include related Records, show field names instead of field ids by default (--id-based for ids), and render content fields as markdown. records list reports how many Records match and how to page through them. records show includes the Record's relationships.records create and records patch accept markdown for content fields.records create <schema> without --data shows a form on a terminal: text, number, date, and markdown fields are typed in, option and boolean fields are picked with the arrow keys, and required fields are asked again until answered.records update is renamed records put, to make clear it replaces the whole Record; update and set still work.schemas show lists each field's type, whether it is required, and its options. spaces overview lists a Space's Schemas with their Record counts. spaces secrets set reads the secret value from piped input or a hidden prompt, never from a flag.auth login --profile <name> stores a key for a named profile; auth list, auth use, and auth select (an arrow-key picker) switch between them. Each profile can have its own API base URL.--profile <name> or LIGANTIC_PROFILE uses a profile for one command without changing the current profile.auth whoami shows the current Space.record / records, space / spaces), and common verbs are accepted as aliases: get for show, ls for list, add for create, edit for patch, rm for delete, and others.records delete, records unlink, and destructive generated commands such as spaces delete need --yes. On a terminal the CLI asks instead; in a script the command fails with exit code 2 and changes nothing.LIGANTIC_NO_UPDATE_CHECK to turn this off. LIGANTIC_CONFIG_DIR moves the CLI configuration to another directory.429 Too Many Requests; the Ligantic SDK retries safe requests automatically.{First Name} {Last Name}; templates written with double braces are converted automatically.{Address.City}, now render.These features are turned on per Space. If you can't see them, contact your administrator.
POST tasks/{taskId}/update-status, with typed path, query, and body parameters mapped to the Flow's inputs. Endpoints are managed under Space Settings → Endpoints, tested on the Studio preview while in draft, and published to the App. Each Space publishes an OpenAPI description of its Endpoints. Callers need permission to run the Flow; anyone else gets 404.Authorization: Bearer <token> from an external identity provider on App requests. The token's signature, issuer, audience, and expiry are checked on every request, and a claim (by default sub) identifies the Space identity.error output now fails, and the calling Flow - Execute node follows its error output. Previously the failure was logged but the node still followed success, and some runs never finished. See "Changes to Be Aware Of".Internal Server Error without internal details. Messages written for users are kept, for example a taken Space name now returns 409 Space name already taken.404, so their existence is not revealed. Space members without the required role get 403 with a reason.success after a node in the sub-flow failed now follow error. When error is not connected, the calling Flow fails as well, up to the first caller that handles the error.500 now return 403 or 404. Space members without the admin role get 403 instead of 404 (or 401 for API keys) from Space administration operations. A taken Space name returns 409 instead of 500.429 and should retry with backoff.--table to keep tables.1 may now exit 2 (usage, including no Space selected), 3 (not authenticated or not permitted), or 4 (not found).error: … text.ligantic spaces use <id> once for each profile that needs a Space.records delete and records unlink need --yes when not run on a terminal.records create without --data fails with exit code 2 off a terminal when the Schema has required fields, instead of sending an empty Record.ligantic with no command exits 2 instead of 1.