Versioning
Every save creates a new, immutable version of your intent — diffable and restorable.
Every explicit save creates a new, immutable version of your intent — prompt, schemas, guardrails, and execution config captured in full. Compare any two versions with a field-level diff, and restore a prior version in one click; the restore itself becomes a new version, so you're never one mistake away from a dead end.
API reference
GET /dashboard/custom-domains/:domainKey/intents/:key/versions # list versions
GET /dashboard/custom-domains/:domainKey/intents/:key/versions/:versionNumber # get one version
POST /dashboard/custom-domains/:domainKey/intents/:key/versions/:versionNumber/restore # restore it
GET /dashboard/custom-domains/intent-versions # cross-domain feed of recent changesRestore a prior version:
POST https://api.liyaengine.ai/dashboard/custom-domains/support/intents/resolve_ticket/versions/12/restore
Authorization: Bearer <jwt>{
"success": true,
"data": {
"intent": {
"id": "cin_01HZ...",
"domain_key": "support",
"intent_key": "resolve_ticket",
"display_name": "Resolve Ticket",
"prompt_template": "...",
"output_schema": { ... },
"guardrails_config": { ... }
}
}
}The response is the intent's live, updated definition, not a version record — restoring version 12 doesn't delete versions 13 or 14, it saves a new version (e.g. 14) with version 12's content, so the full history stays intact. Call GET .../versions afterward to see the new entry.
What's versioned
Every save captures the intent's full definition together, so a version always represents a complete, working configuration — not just the prompt text: input/output schemas, guardrail policies, execution config, and retrieval config all move together.
Related
Prompt Trace + Diff
Every intent call produces a full execution trace automatically — retrieved context, retrieval diagnostics, agentic steps, and flag status.
Promote configuration
Move guardrail policies, actions, domains, agents and workflows from one project to another, with a dry run, an audit trail and an optional evaluation gate.