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": {
"version": {
"versionNumber": 14,
"restoredFrom": 12,
"createdAt": "2026-08-20T10:00:00Z"
}
}
}Restoring version 12 doesn't delete versions 13 or 14 — it creates version 14 as a new save with version 12's content, so the full history stays intact.
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.