Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms
Statuses track ticket progress through your workflow. Use five system statuses as categories, then create custom sub-statuses underneath them for granular process management. Assign custom statuses to specific to match different workflows.
Ravenna uses a two-level status system:System statuses
Five main categories (Open, In Progress, Waiting, Done, Closed)
Available to all tickets regardless of form
Cannot be deleted or modified
Serve as groups for custom sub-statuses
Custom sub-statuses
Created under system status categories
Must be assigned to specific forms to be usable
Provide granular tracking for specific processes
Each form can have different available sub-statuses
This hierarchy lets you create detailed status flows for different ticket types while maintaining consistent top-level categories across your organization.
Custom sub-statuses provide specific status options beyond the five system statuses. After creating a custom status, assign it to forms to make it available for tickets.
1
Navigate to status settings
Go to Settings > Statuses to access status management.
2
Create new status
Click Add to open the create status modal.
3
Configure status
Enter a label for your custom status and select which system status it belongs under.
4
Save status
Click Save to create the status.
Custom statuses won’t be usable until assigned to forms. Continue to the next section to assign them.
Status labels must be unique across your workspace. You can’t create or rename a sub-status to a label that’s already used by another status, even if that status sits under a different system status group.
Custom statuses must be assigned to specific before they appear as options on tickets.
1
Navigate to forms
Go to Settings > Forms to configure form statuses.
2
Select form
Select the form you want to configure.
3
Access statuses
Navigate to the Statuses section for that form.
4
Assign custom statuses
Select which custom sub-statuses should be available for tickets created with this form.
5
Save configuration
Click Save to apply the status configuration.
Example: Create “Needs Review” and “Testing” sub-statuses under “In Progress”, then assign them to your Bug Report form. Feature Request forms can have different sub-statuses like “Planning” and “Awaiting Approval”.
Removing a status from a specific form keeps the status itself in your workspace. Only that form’s tickets currently in the status are affected.
1
Open the form's statuses
Go to Settings > Forms, select the form, and open the Statuses section.
2
Remove the status
Remove the status from the form’s list.
3
Pick a target status (if prompted)
If any of that form’s tickets are still in the removed status, Ravenna prompts you to pick a target status. Only statuses that the form still offers are selectable.
4
Confirm
Ravenna moves those tickets to the target status through a bulk status update. If the removed status was the form’s default, the default is repointed to the target, or cleared when no tickets needed moving.
Deleting a custom status removes it from the entire workspace. System statuses cannot be deleted, and you cannot delete the only remaining status under a system status group.
1
Open status settings
Go to Settings > Statuses.
2
Delete the status
Open the menu on the status row and select Delete.
3
Pick a target status (if prompted)
If any tickets in the workspace still use this status, Ravenna prompts you to pick another status in the same workspace to move them to. You can’t move tickets to the status being deleted.
4
Confirm
Ravenna moves the tickets to the target status through a bulk status update, then deletes the status. Any form that used the deleted status as its default is repointed to the target. When no tickets needed moving, there is no target, so those forms are left without a default status.
Ticket migration and the delete run in the same transaction. If the migration fails, no tickets move and the status is not deleted. When you pick a target, deleted, unpublished, and merged tickets in the status move with the rest in the same transaction.
Because the move uses the standard bulk update pipeline, each ticket’s status-changed timestamp, timeline entry, and status-based fire exactly as they would for a manual bulk status change. Migrations are capped at 500 tickets per delete; move some tickets manually if you’re above the cap.
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Ravenna Docs | Agentic Service Management for Every Team","description":"Explore Ravenna’s modern, agentic service management platform built to empower people across IT, HR, Finance, Operations, and every internal team. Learn how to automate workflows, manage requests, scale knowledge, and keep humans in control.","colors":{"primary":"#171717","light":"#FAFAFA","dark":"#171717"},"logo":{"light":"https://mintcdn.com/ravenna/H2tSGby4p7uhO4qQ/logo/light.svg?fit=max\u0026auto=format\u0026n=H2tSGby4p7uhO4qQ\u0026q=85\u0026s=c4346ded5fd1478a602d5d931bb43231","dark":"https://mintcdn.com/ravenna/H2tSGby4p7uhO4qQ/logo/dark.svg?fit=max\u0026auto=format\u0026n=H2tSGby4p7uhO4qQ\u0026q=85\u0026s=82f799085efa6c1151381dab7cd110f1"},"favicon":{"light":"https://mintcdn.com/ravenna/cUsXDfTwguaew4Mm/icons/favicon.svg?fit=max\u0026auto=format\u0026n=cUsXDfTwguaew4Mm\u0026q=85\u0026s=5c7650ff49ecdf3615a631af324de30a","dark":"https://mintcdn.com/ravenna/cUsXDfTwguaew4Mm/icons/favicon-dark.svg?fit=max\u0026auto=format\u0026n=cUsXDfTwguaew4Mm\u0026q=85\u0026s=6a309f1627d425a644e1e47b7436475c"},"api":{"playground":{"display":"interactive","proxy":true},"examples":{"prefill":true,"autogenerate":true},"url":"full"},"background":{"color":{"light":"#FDFDFD","dark":"#0F0F0F"}},"navbar":{"links":[{"href":"mailto:support@ravenna.ai","label":"Support"}],"primary":{"type":"button","label":"Request Info","href":"https://ravenna.ai/contact"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/ravennahq"}},"seo":{"indexing":"all"},"fonts":{"family":"Inter"},"icons":{"library":"lucide"},"styling":{"eyebrows":"breadcrumbs","codeblocks":"system","latex":false},"integrations":{"posthog":{"apiKey":"phc_648wX1qj5dIEzcjBxneggE3Bi3WA8pgsNsTrjuPSccn","sessionRecording":false}},"contextual":{"options":["assistant","download-spec","claude","chatgpt","cursor","view"],"display":"toc"},"interaction":{"drilldown":true},"metadata":{"timestamp":true},"markdown":{"schema":true},"navigation":{"global":{"anchors":[{"anchor":"Log in","icon":"circle-user","href":"https://app.ravenna.ai"},{"anchor":"Status","icon":"activity","href":"https://status.ravenna.ai"},{"anchor":"Trust Center","icon":"shield-check","href":"https://trust.ravenna.ai"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ravenna","hasAudioNarration":false,"actualSubdomain":"ravenna","customDomains":["docs.ravenna.ai"],"gitSource":{"type":"github","owner":"ravennahq","repo":"ravenna","deployBranch":"master","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adbbb89891aaf1ef070b4df","collectionId":"a4eb2c83-fbf1-4e22-8520-b8ceee8283fe","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adbbb89891aaf1ef070b4df"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6adbbb89891aaf1ef070b4df","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"API","count":457},{"language":"default","tag":"Endpoints","count":456},{"language":"default","tag":"Integrations","count":144},{"language":"default","tag":"Documentation","count":71},{"language":"default","tag":"Features","count":67},{"language":"default","tag":"Guides","count":55},{"language":"default","tag":"HRIS","count":48},{"language":"default","tag":"Foundry","count":44},{"language":"default","tag":"More","count":39},{"language":"default","tag":"Workflow","count":38}],"searchSettings":{"showContentSnippets":true,"isFiltersEnabled":true}},"assistantConfig":{"enableAskAiButton":true,"enableStarterQuestions":true,"enableContextualStarterQuestions":true,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@ravenna.ai","showHelpButton":true}},"hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"starterQuestions":[{"_id":"69adf24bddbfd69f052b49d3","deploymentId":"66ea04bb7d15ac5ee1de3eeb","questionText":"How do I create an Agent and deploy it to a channel?","status":"active","generatedBy":"manual","createdAt":"2026-03-08T22:03:55.073Z","updatedAt":"2026-03-08T22:03:55.073Z","__v":0},{"_id":"69adf239ddbfd69f052b497f","deploymentId":"66ea04bb7d15ac5ee1de3eeb","questionText":"How do I connect Slack to Ravenna?","status":"active","generatedBy":"manual","createdAt":"2026-03-08T22:03:37.718Z","updatedAt":"2026-03-08T22:03:37.718Z","__v":0}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":":root{--rv-bg:#fdfdfd;--rv-canvas:#f5f5f5;--rv-card:#ffffff;--rv-fg:#171717;--rv-muted:#737373;--rv-border:rgba(0, 0, 0, 0.08);--rv-border-em:rgba(0, 0, 0, 0.12);--rv-border-high:rgba(0, 0, 0, 0.24);--rv-hover:color-mix(in srgb, var(--rv-fg) 3%, transparent);--rv-active:color-mix(in srgb, var(--rv-fg) 5%, transparent);--rv-shadow:0 0.2px 0.5px 0 rgba(0, 0, 0, 0.08), 0 1.1px 1.2px -1.2px rgba(0, 0, 0, 0.16),\n 0.1px 2.2px 5px -2px rgba(0, 0, 0, 0.05);--rv-shadow-md:0 0.2px 0.5px 0 rgba(0, 0, 0, 0.1), 0 1.5px 4.5px -1.5px rgba(0, 0, 0, 0.06),\n 0.1px 3px 14px -3px rgba(0, 0, 0, 0.05);--rv-shadow-xs:0 1px 2px 0 rgba(0, 0, 0, 0.05);--rv-btn-border:color-mix(in srgb, var(--rv-fg) 12%, transparent);--rv-btn-bg:var(--rv-bg);--rv-btn-hover:#f5f5f5;--rv-btn-press:color-mix(in srgb, var(--rv-fg) 7%, transparent);--rv-btn-ghost-hover:color-mix(in srgb, var(--rv-fg) 5%, transparent);--rv-input-bg:transparent;--rv-row-bg:var(--rv-card);--rv-row-hover:color-mix(in srgb, #f5f5f5 50%, var(--rv-card))}.dark{--rv-bg:#0f0f0f;--rv-canvas:#1a1a1a;--rv-card:#1a1a1a;--rv-fg:#fafafa;--rv-muted:#ababab;--rv-border:rgba(255, 255, 255, 0.12);--rv-border-em:rgba(255, 255, 255, 0.14);--rv-border-high:rgba(255, 255, 255, 0.24);--rv-btn-bg:color-mix(in srgb, var(--rv-fg) 5%, transparent);--rv-btn-hover:#2e2e2e;--rv-btn-press:color-mix(in srgb, var(--rv-fg) 10%, transparent);--rv-input-bg:color-mix(in srgb, #363636 30%, transparent);--rv-row-bg:color-mix(in srgb, #2e2e2e 30%, transparent);--rv-row-hover:color-mix(in srgb, #2e2e2e 50%, transparent)}img.nav-logo{height:1.5rem!important;width:auto!important;max-width:12rem!important;padding-left:.25rem!important;padding-right:.25rem!important;object-fit:contain!important}#navbar>div:first-child{border-color:var(--rv-border)!important}#navbar nav[aria-label=Main] a.link{height:2.25rem!important;padding-left:.625rem!important;padding-right:.625rem!important;border-radius:8px!important;color:var(--rv-muted)!important;background-color:transparent!important;transition:background-color 75ms,color 75ms!important}#navbar nav[aria-label=Main] a.link:hover,#navbar nav[aria-label=Main] a.link[aria-current]{color:var(--rv-fg)!important;background-color:var(--rv-btn-ghost-hover)!important}#assistant-entry,#navbar .navbar-link a,#search-bar-entry,#theme-preference-menu-trigger,.topbar-right-container button[aria-label=\"More actions\"]{height:2.25rem!important;border:.5px solid var(--rv-btn-border)!important;border-radius:8px!important;background-color:var(--rv-btn-bg)!important;box-shadow:var(--rv-shadow-xs)!important;filter:none!important;transition:background-color 75ms!important}#assistant-entry:hover,#navbar .navbar-link a:hover,#search-bar-entry:hover,#theme-preference-menu-trigger:hover,.topbar-right-container button[aria-label=\"More actions\"]:hover{background-color:var(--rv-btn-hover)!important}#assistant-entry:active,#navbar .navbar-link a:active,#search-bar-entry:active,#theme-preference-menu-trigger:active,.topbar-right-container button[aria-label=\"More actions\"]:active{background-color:var(--rv-btn-press)!important}#navbar .navbar-link a{padding-left:.875rem!important;padding-right:.875rem!important}#assistant-entry svg,#navbar .navbar-link a,#search-bar-entry svg,#theme-preference-menu-trigger,#theme-preference-menu-trigger svg{color:var(--rv-fg)!important}#assistant-entry>span:last-child,#search-bar-entry>span{border:.5px solid var(--rv-btn-border)!important;border-radius:4px!important;background-color:var(--rv-canvas)!important;color:var(--rv-muted)!important;font-weight:500!important}#topbar-cta-button a{height:2.25rem!important;padding-left:.875rem!important;padding-right:.875rem!important;border-radius:8px!important;box-shadow:var(--rv-shadow-xs)!important;transition:opacity 75ms!important}#topbar-cta-button a:hover{opacity:.9!important}@media (min-width:1024px){#sidebar-content{width:16rem!important}.is-not-custom~#body-content{padding-left:16rem!important}html:not([data-assistant-state=open]) #content-area[class*=\"50vw-348px-14rem\"]{margin-left:max(0px,calc(50vw - 348px - 16rem))!important}}#sidebar-content .sidebar-group-header{color:var(--rv-muted)!important;font-weight:500!important}#sidebar-content .sidebar-group a,#sidebar-content .sidebar-group button{border-radius:8px;font-size:.8125rem;color:var(--rv-fg)!important;transition:background-color 75ms}#sidebar-content .sidebar-group a:hover,#sidebar-content .sidebar-group button:hover{background-color:var(--rv-hover)}#sidebar-content .sidebar-group a[aria-current=page]{background-color:var(--rv-active);font-weight:500;text-shadow:none!important}#page-title,.mdx-content h1,.mdx-content h2,.mdx-content h3{letter-spacing:-.025em!important}.mdx-content a.link:not(:has(div,p,h1,h2,h3,h4,img)){color:var(--rv-fg)!important;font-weight:inherit!important;border-bottom:0!important;text-decoration:underline!important;text-decoration-color:var(--rv-border-high)!important;text-decoration-thickness:1px!important;text-underline-offset:2px!important}.mdx-content a.link:not(:has(div,p,h1,h2,h3,h4,img)):hover{text-decoration-color:var(--rv-fg)!important}.mdx-content :not(pre)>code{background-color:var(--rv-canvas)!important;border:.5px solid var(--rv-border-em)!important;border-radius:4px!important;color:var(--rv-fg)!important}.rv-button-group{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.mdx-content a.link.rv-button,.rv-button{display:flex;width:fit-content;margin:12px 0;height:2.25rem;align-items:center;justify-content:center;gap:8px;padding:0 .875rem;border:.5px solid transparent!important;border-radius:8px;font-size:.875rem;font-weight:500!important;line-height:1;white-space:nowrap;text-decoration:none!important;transition:background-color 75ms,opacity 75ms}.mdx-content .rv-button-group a.link.rv-button,.rv-button-group .rv-button{margin:0}.rv-button svg{margin:0 -2px;flex-shrink:0}.mdx-content a.link.rv-button-default,.rv-button-default{border-color:var(--rv-fg)!important;background-color:var(--rv-fg);box-shadow:var(--rv-shadow-xs);color:var(--rv-bg)!important}.mdx-content a.link.rv-button-default:hover,.rv-button-default:hover{opacity:.9}.mdx-content a.link.rv-button-outline,.rv-button-outline{border-color:var(--rv-btn-border)!important;background-color:var(--rv-btn-bg);box-shadow:var(--rv-shadow-xs);color:var(--rv-fg)!important}.mdx-content a.link.rv-button-outline:hover,.rv-button-outline:hover{background-color:var(--rv-btn-hover)}.mdx-content a.link.rv-button-outline:active,.rv-button-outline:active{background-color:var(--rv-btn-press)}.mdx-content a.link.rv-button-ghost,.rv-button-ghost{background-color:transparent;color:var(--rv-fg)!important}.mdx-content a.link.rv-button-ghost:hover,.rv-button-ghost:hover{background-color:var(--rv-btn-ghost-hover)}.mdx-content a.link.rv-button-ghost:active,.rv-button-ghost:active{background-color:var(--rv-btn-press)}.mdx-content a.link.rv-button-learn-more,.rv-button-learn-more{height:auto;gap:6px;padding:0 0 3px;border:0!important;border-bottom:2px dotted var(--rv-border-high)!important;border-radius:0;background-color:transparent;color:var(--rv-fg)!important;line-height:1.5;transition:border-color 75ms}.mdx-content a.link.rv-button-learn-more:hover,.rv-button-learn-more:hover{border-bottom-color:var(--rv-fg)!important}.rv-button-learn-more svg{margin:0;transition:transform 150ms}.rv-button-learn-more:hover svg{transform:translateX(2px)}@media (prefers-reduced-motion:reduce){.rv-button-learn-more svg{transition:none}}.rv-button:focus-visible{outline:3px solid color-mix(in srgb,var(--rv-fg) 50%,transparent);outline-offset:2px}.mdx-content hr.rv-divider,hr.rv-divider{height:0;margin:40px 0 32px;border:0;border-top:.5px solid var(--rv-border-em);background:0 0}.hero-card{display:flex;flex-direction:column;height:100%;padding:6px;border:.5px solid var(--rv-border-em)!important;border-radius:12px;background-color:var(--rv-card);box-shadow:var(--rv-shadow);text-decoration:none!important;transition:border-color 150ms,box-shadow 150ms}.hero-card:hover{border-color:var(--rv-border-high)!important;box-shadow:var(--rv-shadow-md)}.hero-card:focus-visible{outline:3px solid color-mix(in srgb,var(--rv-fg) 50%,transparent);outline-offset:2px}.hero-card-media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:6px;background-color:var(--rv-canvas)}.hero-card-image{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;transition:transform 500ms cubic-bezier(.2,.8,.2,1)}.hero-card:hover .hero-card-image{transform:scale(1.03)}.hero-card-icon{position:relative;display:flex;height:100%;align-items:center;justify-content:center}.hero-card-body{display:flex;flex-direction:column;gap:6px;padding:14px 10px 10px}.hero-card-title{margin:0!important;font-size:1rem!important;font-weight:600!important;line-height:1.25!important;color:var(--rv-fg)!important}.hero-card-description{margin:0!important;font-size:.875rem!important;line-height:1.45!important;color:var(--rv-muted)!important}@media (prefers-reduced-motion:reduce){.hero-card-image{transition:none}.hero-card:hover .hero-card-image{transform:none}}.card{border:.5px solid var(--rv-border-em)!important;background-color:var(--rv-card)!important;box-shadow:var(--rv-shadow)}.accordion,.card,.code-block,.code-group{border-radius:12px!important}.accordion{border:.5px solid var(--rv-border-em)!important}#pagination a{border-color:var(--rv-border-em)!important}#footer{border-color:var(--rv-border)!important}html[data-page-mode=wide] #content-area{max-width:100%!important}body[class*=page-guides] .nav-tag-pill{position:absolute;display:block;right:-70px;top:0}body[class*=page-guides] div:has(>.nav-tag-pill){position:relative}body[class*=page-guides] .nav-dropdown-item-icon,html[data-current-path=\"/integrations/overview\"] #pagination{display:none!important}@media (min-width:1024px){html[data-current-path=\"/integrations/overview\"] #sidebar-content{display:none!important}html[data-current-path=\"/integrations/overview\"] .is-not-custom~#body-content{padding-left:0!important}html[data-current-path=\"/integrations/overview\"] #content-area{max-width:80rem!important;margin-left:auto!important;margin-right:auto!important}}.integration-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px}.integration-search{display:flex;flex:1 1 260px;max-width:320px;height:2.25rem;align-items:center;gap:8px;padding:0 12px;border:.5px solid var(--rv-border-em);border-radius:8px;background-color:var(--rv-input-bg);color:var(--rv-muted);transition:border-color 75ms}.integration-search:focus-within{border-color:var(--rv-border-high)}.integration-search input{flex:1;min-width:0;height:100%;border:0;outline:0;background:0 0;color:var(--rv-fg);font-size:.875rem}.integration-search input::placeholder{color:var(--rv-muted)}.integration-filters{display:flex;flex-wrap:wrap;gap:6px}.integration-filter{display:inline-flex;height:1.75rem;align-items:center;gap:6px;padding:0 10px;border:.5px solid var(--rv-btn-border);border-radius:8px;background-color:var(--rv-btn-bg);box-shadow:var(--rv-shadow-xs);color:var(--rv-muted);font-size:.8125rem;font-weight:500;transition:background-color 75ms,color 75ms}.integration-filter:hover{background-color:var(--rv-btn-hover);color:var(--rv-fg)}.integration-filter[aria-pressed=true]{border-color:var(--rv-fg);background-color:var(--rv-fg);color:var(--rv-bg)}.integration-card:focus-visible,.integration-filter:focus-visible{outline:3px solid color-mix(in srgb,var(--rv-fg) 50%,transparent);outline-offset:2px}.integration-count{margin-bottom:12px;color:var(--rv-muted);font-size:.8125rem}.integration-card{display:flex;height:100%;flex-direction:column;gap:12px;padding:16px;border:.5px solid var(--rv-btn-border)!important;border-radius:12px;background-color:var(--rv-row-bg);text-decoration:none!important;transition:background-color 150ms}.integration-card:hover{background-color:var(--rv-row-hover)}.integration-card-header{display:flex;align-items:center;gap:12px}.integration-card-logo{display:flex;width:2.5rem;height:2.5rem;flex-shrink:0;align-items:center;justify-content:center;border:.5px solid rgba(0,0,0,.08);border-radius:8px;background-color:#fff;box-shadow:0 1px 2px -.5px rgba(0,0,0,.05)}.integration-card-logo-image{width:1.5rem;height:1.5rem;border-radius:5px;background-position:center;background-repeat:no-repeat;background-size:contain}.integration-card-title{color:var(--rv-fg);font-size:.875rem;font-weight:500;line-height:1.25rem}.integration-card-description{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;color:var(--rv-muted);font-size:.8125rem;line-height:1.25rem}.integration-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.integration-card-tag{display:inline-flex;height:1.25rem;align-items:center;padding:0 6px;border-radius:6px;background-color:var(--rv-btn-ghost-hover);color:var(--rv-fg);font-size:.6875rem;font-weight:500}.integration-empty{display:flex;flex-direction:column;align-items:center;gap:4px;padding:64px 16px;border:1px dashed var(--rv-border-em);border-radius:12px;color:color-mix(in srgb,var(--rv-muted) 50%,transparent);text-align:center}.integration-empty-title{margin-top:8px;color:var(--rv-fg);font-size:.9375rem;font-weight:500}.integration-empty-description{color:var(--rv-muted);font-size:.8125rem}.changelog-iframe{height:calc(100vh - 120px)!important}body[class*=page-integrations] svg[style*=okta]{-webkit-mask-image:url(/icons/okta.svg)!important;mask-image:url(/icons/okta.svg)!important}.custom-blur{backdrop-filter:blur(3px)}div[data-component-part=tab-content] div[role=list]{margin-top:0!important}#content{height:auto!important}.custom-checkbox-list{padding-left:0}.custom-checkbox-item{margin-bottom:8px;display:flex;align-items:center;gap:1rem}footer a:last-of-type{display:block;text-align:right;white-space:normal}body.page-changelog #sidebar{display:none!important}#navigation-items li>a.link.nav-anchor>div{display:none}body[class=page] #content{margin-top:48px}@media (max-width:768px){body[class=page] #content{margin-top:16px}}body[class=page] #content-container{padding-left:1rem;padding-right:1rem}body[class=page] #header{display:none!important}.badge-beta{background-color:#eee6f9!important;color:#3a0c87!important;font-family:\"JetBrains Mono\",monospace!important;font-style:normal!important;font-weight:700!important}"}],"page":{"pagePath":"documentation/tickets/organize/statuses","slug":"/documentation/tickets/organize/statuses","pageMetadata":{"title":"Statuses","description":"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms","keywords":"statuses, ticket status, workflow, custom statuses, system statuses, status tracking, ticket lifecycle, form configuration","href":"/documentation/tickets/organize/statuses"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,hr:`hr`,li:`li`,p:`p`,path:`path`,strong:`strong`,svg:`svg`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Callout,Heading,Info,Note,Step,Steps,Table,Tooltip,Visibility,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Callout)_missingMdxReference(`Callout`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tooltip)_missingMdxReference(`Tooltip`,true);if(!Visibility)_missingMdxReference(`Visibility`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Statuses track ticket progress through your workflow. Use five system statuses as categories, then create custom sub-statuses underneath them for granular process management. Assign custom statuses to specific `,_jsx(Tooltip,{headline:`Forms`,tip:`Structured intake forms with custom fields`,cta:`Learn about forms`,href:`/documentation/tickets/forms/overview`,children:`forms`}),` to match different workflows.`]}),`\n`,_jsxs(Visibility,{for:`humans`,children:[_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`system-statuses`,children:`System statuses`}),_jsx(_components.p,{children:`Every ticket uses one of five system statuses. These categories organize your workflow and serve as groups for custom sub-statuses.`}),_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Open`,icon:_jsx(_components.svg,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,className:`w-4 h-4`,children:_jsx(_components.path,{fill:`#3B82F6`,fillRule:`evenodd`,d:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0m0 2.286a5.714 5.714 0 1 0 0 11.427A5.714 5.714 0 0 0 8 2.286`,clipRule:`evenodd`})}),defaultOpen:true,id:`open`,children:_jsx(_components.p,{children:`New tickets that haven’t been started. This is the default status for all newly created tickets.`})}),_jsx(Accordion,{title:`In Progress`,icon:_jsx(_components.svg,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,className:`w-4 h-4`,children:_jsx(_components.path,{fill:`#F97316`,fillRule:`evenodd`,d:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0m0 3.429c0-.631-.517-1.155-1.136-1.03a5.716 5.716 0 0 0 .02 11.206 5.716 5.716 0 0 0 6.717-4.47C13.726 8.518 13.202 8 12.57 8H9.143A1.143 1.143 0 0 1 8 6.857z`,clipRule:`evenodd`})}),id:`in-progress`,children:_jsx(_components.p,{children:`Tickets actively being worked on by team members.`})}),_jsx(Accordion,{title:`Waiting`,icon:_jsx(_components.svg,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,className:`w-4 h-4`,children:_jsx(_components.path,{fill:`#F59E0B`,fillRule:`evenodd`,d:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0m0 3.429c0-.631-.517-1.155-1.136-1.03a5.715 5.715 0 0 0 0 11.202C7.483 13.726 8 13.202 8 12.57z`,clipRule:`evenodd`})}),id:`waiting`,children:_jsx(_components.p,{children:`Tickets on hold or waiting for external input, customer response, or other dependencies.`})}),_jsx(Accordion,{title:`Done`,icon:_jsx(_components.svg,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,className:`w-4 h-4`,children:_jsx(_components.path,{fill:`#22C55E`,fillRule:`evenodd`,d:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0m4.136 5.007a1 1 0 0 0-1.414 0L6.856 8.87 5.278 7.292a1.001 1.001 0 0 0-1.414 1.415l2.285 2.285c.39.39 1.025.39 1.415 0l4.572-4.571a1 1 0 0 0 0-1.414`,clipRule:`evenodd`})}),id:`done`,children:_jsx(_components.p,{children:`Tickets that have been completed and resolved but may need final verification.`})}),_jsx(Accordion,{title:`Closed`,icon:_jsx(_components.svg,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 16 16`,className:`w-4 h-4`,children:_jsx(_components.path,{fill:`#64748B`,fillRule:`evenodd`,d:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0m3.565 4.436a1 1 0 0 0-1.416 0L8 6.585l-2.15-2.15A1 1 0 0 0 4.437 5.85l2.149 2.149-2.15 2.15a1.001 1.001 0 0 0 1.415 1.416l2.149-2.15 2.15 2.15a1.001 1.001 0 0 0 1.416-1.416L9.415 8l2.15-2.15a1 1 0 0 0 0-1.413`,clipRule:`evenodd`})}),id:`closed`,children:_jsx(_components.p,{children:`Tickets fully completed and archived.`})})]}),_jsx(Info,{children:_jsx(_components.p,{children:`System statuses cannot be deleted or modified. They serve as permanent categories for organizing your workflow.`})}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`status-hierarchy`,children:`Status hierarchy`}),_jsx(_components.p,{children:`Ravenna uses a two-level status system:`}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`System statuses`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Five main categories (Open, In Progress, Waiting, Done, Closed)`}),`\n`,_jsx(_components.li,{children:`Available to all tickets regardless of form`}),`\n`,_jsx(_components.li,{children:`Cannot be deleted or modified`}),`\n`,_jsx(_components.li,{children:`Serve as groups for custom sub-statuses`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Custom sub-statuses`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Created under system status categories`}),`\n`,_jsx(_components.li,{children:`Must be assigned to specific forms to be usable`}),`\n`,_jsx(_components.li,{children:`Provide granular tracking for specific processes`}),`\n`,_jsx(_components.li,{children:`Each form can have different available sub-statuses`}),`\n`]}),_jsx(_components.p,{children:`This hierarchy lets you create detailed status flows for different ticket types while maintaining consistent top-level categories across your organization.`}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`create-custom-statuses`,children:`Create custom statuses`}),_jsx(_components.p,{children:`Custom sub-statuses provide specific status options beyond the five system statuses. After creating a custom status, assign it to forms to make it available for tickets.`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Navigate to status settings`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Settings > Statuses`}),` to access status management.`]})}),_jsx(Step,{title:`Create new status`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Add`}),` to open the create status modal.`]})}),_jsx(Step,{title:`Configure status`,children:_jsx(_components.p,{children:`Enter a label for your custom status and select which system status it belongs under.`})}),_jsx(Step,{title:`Save status`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Save`}),` to create the status.`]})})]}),_jsx(Warning,{children:_jsx(_components.p,{children:`Custom statuses won’t be usable until assigned to forms. Continue to the next section to assign them.`})}),_jsx(Note,{children:_jsx(_components.p,{children:`Status labels must be unique across your workspace. You can’t create or rename a sub-status to a label that’s already used by another status, even if that status sits under a different system status group.`})}),_jsx(Heading,{level:`3`,id:`assign-statuses-to-forms`,children:`Assign statuses to forms`}),_jsxs(_components.p,{children:[`Custom statuses must be assigned to specific `,_jsx(Tooltip,{headline:`Forms`,tip:`Structured intake forms with custom fields`,cta:`Learn about forms`,href:`/documentation/tickets/forms/overview`,children:`forms`}),` before they appear as options on tickets.`]}),_jsxs(Steps,{children:[_jsx(Step,{title:`Navigate to forms`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Settings > Forms`}),` to configure form statuses.`]})}),_jsx(Step,{title:`Select form`,children:_jsx(_components.p,{children:`Select the form you want to configure.`})}),_jsx(Step,{title:`Access statuses`,children:_jsxs(_components.p,{children:[`Navigate to the `,_jsx(_components.strong,{children:`Statuses`}),` section for that form.`]})}),_jsx(Step,{title:`Assign custom statuses`,children:_jsx(_components.p,{children:`Select which custom sub-statuses should be available for tickets created with this form.`})}),_jsx(Step,{title:`Save configuration`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Save`}),` to apply the status configuration.`]})})]}),_jsx(Callout,{icon:`lightbulb`,color:`#6B7280`,children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Example:`}),` Create “Needs Review” and “Testing” sub-statuses under “In Progress”, then assign them to your Bug Report form. Feature Request forms can have different sub-statuses like “Planning” and “Awaiting Approval”.`]})}),_jsx(Heading,{level:`3`,id:`remove-a-status-from-a-form`,children:`Remove a status from a form`}),_jsx(_components.p,{children:`Removing a status from a specific form keeps the status itself in your workspace. Only that form’s tickets currently in the status are affected.`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Open the form's statuses`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Settings > Forms`}),`, select the form, and open the `,_jsx(_components.strong,{children:`Statuses`}),` section.`]})}),_jsx(Step,{title:`Remove the status`,children:_jsx(_components.p,{children:`Remove the status from the form’s list.`})}),_jsx(Step,{title:`Pick a target status (if prompted)`,children:_jsx(_components.p,{children:`If any of that form’s tickets are still in the removed status, Ravenna prompts you to pick a target status. Only statuses that the form still offers are selectable.`})}),_jsx(Step,{title:`Confirm`,children:_jsx(_components.p,{children:`Ravenna moves those tickets to the target status through a bulk status update. If the removed status was the form’s default, the default is repointed to the target, or cleared when no tickets needed moving.`})})]}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`delete-a-custom-status`,children:`Delete a custom status`}),_jsx(_components.p,{children:`Deleting a custom status removes it from the entire workspace. System statuses cannot be deleted, and you cannot delete the only remaining status under a system status group.`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Open status settings`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Settings > Statuses`}),`.`]})}),_jsx(Step,{title:`Delete the status`,children:_jsxs(_components.p,{children:[`Open the menu on the status row and select `,_jsx(_components.strong,{children:`Delete`}),`.`]})}),_jsx(Step,{title:`Pick a target status (if prompted)`,children:_jsx(_components.p,{children:`If any tickets in the workspace still use this status, Ravenna prompts you to pick another status in the same workspace to move them to. You can’t move tickets to the status being deleted.`})}),_jsx(Step,{title:`Confirm`,children:_jsx(_components.p,{children:`Ravenna moves the tickets to the target status through a bulk status update, then deletes the status. Any form that used the deleted status as its default is repointed to the target. When no tickets needed moving, there is no target, so those forms are left without a default status.`})})]}),_jsx(Note,{children:_jsx(_components.p,{children:`Ticket migration and the delete run in the same transaction. If the migration fails, no tickets move and the status is not deleted. When you pick a target, deleted, unpublished, and merged tickets in the status move with the rest in the same transaction.`})}),_jsx(Note,{children:_jsxs(_components.p,{children:[`Because the move uses the standard bulk update pipeline, each ticket’s status-changed timestamp, timeline entry, and status-based `,_jsx(Tooltip,{headline:`Workflows`,tip:`Automated actions triggered by ticket events`,cta:`Learn about workflows`,href:`/documentation/automate/workflows/overview`,children:`workflows`}),` fire exactly as they would for a manual bulk status change. Migrations are capped at 500 tickets per delete; move some tickets manually if you’re above the cap.`]})}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`use-statuses`,children:`Use statuses`}),_jsx(Heading,{level:`3`,id:`set-status-during-creation`,children:`Set status during creation`}),_jsx(_components.p,{children:`When creating a ticket:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Default status is `,_jsx(_components.strong,{children:`Open`})]}),`\n`,_jsx(_components.li,{children:`Available statuses include all system statuses plus custom sub-statuses assigned to the selected form`}),`\n`,_jsx(_components.li,{children:`Status can be changed immediately after creation`}),`\n`]}),_jsx(Heading,{level:`3`,id:`change-status`,children:`Change status`}),_jsxs(AccordionGroup,{children:[_jsxs(Accordion,{title:`Individual ticket updates`,icon:`ticket`,defaultOpen:true,id:`individual-ticket-updates`,children:[_jsx(_components.p,{children:`Update status from the ticket detail page:`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Open ticket`,children:_jsx(_components.p,{children:`Navigate to the ticket you want to update.`})}),_jsx(Step,{title:`Change status`,children:_jsx(_components.p,{children:`Click the status field and select the new status from the dropdown.`})}),_jsx(Step,{title:`Automatic save`,children:_jsx(_components.p,{children:`The status change saves automatically and records in ticket history.`})})]})]}),_jsxs(Accordion,{title:`Bulk status updates`,icon:`layers`,id:`bulk-status-updates`,children:[_jsx(_components.p,{children:`Update multiple tickets at once:`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Select tickets`,children:_jsx(_components.p,{children:`From the ticket list, select multiple tickets using checkboxes.`})}),_jsx(Step,{title:`Open bulk actions`,children:_jsx(_components.p,{children:`Click the bulk actions menu.`})}),_jsx(Step,{title:`Update status`,children:_jsx(_components.p,{children:`Select “Update Status” and select the new status.`})}),_jsx(Step,{title:`Apply changes`,children:_jsx(_components.p,{children:`Confirm to apply the status change to all selected tickets.`})})]})]}),_jsxs(Accordion,{title:`Send and resolve`,icon:`send`,id:`send-and-resolve`,children:[_jsxs(_components.p,{children:[`Send a reply and resolve the ticket in a single action using the `,_jsx(_components.strong,{children:`Send and resolve`}),` option in the message composer.`]}),_jsxs(Steps,{children:[_jsx(Step,{title:`Open the send menu`,children:_jsxs(_components.p,{children:[`Click the dropdown arrow next to the `,_jsx(_components.strong,{children:`Send`}),` button in the message composer.`]})}),_jsx(Step,{title:`Select Send and resolve`,children:_jsxs(_components.p,{children:[`Select `,_jsx(_components.strong,{children:`Send and resolve`}),` from the menu. This becomes the default action for subsequent messages.`]})}),_jsx(Step,{title:`Send your message`,children:_jsxs(_components.p,{children:[`Click the button or press `,_jsx(Tooltip,{headline:`Keyboard shortcut`,tip:`Ctrl+Enter on Windows/Linux, Cmd+Enter on Mac`,children:_jsx(_components.strong,{children:`Mod+Enter`})}),` to send the message publicly and set the ticket status to `,_jsx(_components.strong,{children:`Done`}),`.`]})})]})]}),_jsxs(Accordion,{title:`Workflow automation`,icon:`workflow`,id:`workflow-automation`,children:[_jsxs(_components.p,{children:[`Configure `,_jsx(Tooltip,{headline:`Workflows`,tip:`Automated actions triggered by ticket events`,cta:`Learn about workflows`,href:`/documentation/automate/workflows/overview`,children:`workflows`}),` to automatically update statuses based on ticket events, conditions, or actions.`]}),_jsx(_components.p,{children:`Common patterns:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Auto-progress to “In Progress” when ticket is assigned`}),`\n`,_jsx(_components.li,{children:`Move to “Waiting” when requesting customer information`}),`\n`,_jsx(_components.li,{children:`Change to “Done” when resolution is posted`}),`\n`]})]})]}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`organize-with-statuses`,children:`Organize with statuses`}),_jsx(_components.p,{children:`Use statuses to organize and filter your ticket list.`}),_jsx(Heading,{level:`3`,id:`filter-by-status`,children:`Filter by status`}),_jsxs(_components.p,{children:[`Use status filters in `,_jsx(Tooltip,{headline:`Views`,tip:`Saved filters and column configurations for organizing tickets`,cta:`Learn about views`,href:`/documentation/tickets/organize/views`,children:`views`}),` to focus on relevant tickets:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Filter by specific status or status group`}),`\n`,_jsx(_components.li,{children:`Show only tickets with certain statuses`}),`\n`,_jsx(_components.li,{children:`Exclude tickets with specific statuses`}),`\n`,_jsx(_components.li,{children:`Create saved filters for quick access`}),`\n`]}),_jsx(Heading,{level:`3`,id:`group-and-sort`,children:`Group and sort`}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`List and table views`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Group tickets by status for better organization`}),`\n`,_jsx(_components.li,{children:`Collapse or expand status groups`}),`\n`,_jsx(_components.li,{children:`See ticket counts per status`}),`\n`,_jsx(_components.li,{children:`Sort by status in alphabetical or custom order`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Kanban view`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Organize tickets in columns by status`}),`\n`,_jsx(_components.li,{children:`Drag and drop tickets between status columns`}),`\n`,_jsx(_components.li,{children:`Visual process management with status-based workflow`}),`\n`]}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`form-specific-configurations`,children:`Form-specific configurations`}),_jsx(_components.p,{children:`Different forms can have different available statuses to match their workflows.`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Bug reports`}),` might use:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Open → In Progress → Needs Review → Done → Closed`}),`\n`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Feature requests`}),` might use:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Open → Planning → In Progress → Testing → Done → Closed`}),`\n`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Support tickets`}),` might use:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Open → In Progress → Waiting → Done → Closed`}),`\n`]}),_jsx(_components.p,{children:`System statuses are always available to all forms. Custom sub-statuses must be explicitly assigned to each form where they should appear.`}),_jsx(Callout,{icon:`link`,color:`#6B7280`,children:_jsxs(_components.p,{children:[`Learn more about `,_jsx(_components.a,{href:`/documentation/automate/workflows/publish`,children:`building workflows`}),` with status conditions and actions`]})})]}),`\n`,_jsxs(Visibility,{for:`agents`,children:[_jsx(Heading,{level:`2`,id:`mental-model`,children:`Mental model`}),_jsx(_components.p,{children:`Status is a two-level system: five fixed system statuses and optional custom sub-statuses underneath them.`}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`System statuses (fixed, always available):`})}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Status`}),_jsx(_components.th,{children:`Meaning`}),_jsx(_components.th,{children:`Active/Resolved`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Open`})}),_jsx(_components.td,{children:`New, unstarted ticket`}),_jsx(_components.td,{children:`Active`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`In Progress`})}),_jsx(_components.td,{children:`Actively being worked on`}),_jsx(_components.td,{children:`Active`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Waiting`})}),_jsx(_components.td,{children:`Blocked on external input or dependency`}),_jsx(_components.td,{children:`Active`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Done`})}),_jsx(_components.td,{children:`Resolved, may need verification`}),_jsx(_components.td,{children:`Resolved`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Closed`})}),_jsx(_components.td,{children:`Fully completed and archived`}),_jsx(_components.td,{children:`Resolved`})]})]})]}),_jsx(_components.p,{children:`Every ticket has exactly one status at any time. The default status for new tickets is Open.`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Custom sub-statuses`}),` nest under a system status and provide granular tracking. A sub-status like “Needs Review” under “In Progress” inherits the system status semantics (still active, still in progress) while adding process detail.`]}),_jsx(_components.p,{children:`Sub-statuses are workspace-scoped but form-gated: they must be explicitly assigned to specific forms before tickets using those forms can use them. Different forms can have different sub-statuses available, enabling form-specific workflows within the same workspace.`}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`custom-sub-status-design-patterns`,children:`Custom sub-status design patterns`}),_jsx(_components.p,{children:`Design sub-statuses around the distinct workflows in your workspace:`}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Approval-heavy workflows (e.g., access requests):`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Open → Pending Approval (under Waiting) → Approved (under In Progress) → Provisioned (under Done) → Closed`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Development workflows (e.g., bug reports):`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Open → Investigating (under In Progress) → Fix in Progress (under In Progress) → Needs Review (under In Progress) → Done → Closed`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`External dependency workflows (e.g., vendor requests):`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Open → In Progress → Waiting on Vendor (under Waiting) → Vendor Responded (under In Progress) → Done → Closed`}),`\n`]}),_jsx(_components.p,{children:`When designing sub-statuses, keep them scoped to the forms that need them. A “Needs Review” sub-status is relevant for bug reports but not for password reset requests. This prevents status dropdowns from becoming cluttered with irrelevant options.`}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`status-in-automation`,children:`Status in automation`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Workflow triggers:`}),` The “Status Changed” trigger fires when a ticket’s status changes. You can filter on specific status transitions (e.g., only fire when status changes to Done).`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Workflow actions:`}),` The “Set Status” action changes a ticket’s status as part of a workflow. Use it for auto-progression (e.g., set to “In Progress” when assigned, set to “Done” when an approval is completed).`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Agent rules:`}),` The agent can set ticket status based on conversation context. Common patterns:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`“When you resolve a user’s issue, set the ticket status to Done.”`}),`\n`,_jsx(_components.li,{children:`“If the user says they need to check with their manager, set status to Waiting.”`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Status-driven patterns:`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Trigger a CSAT survey when status changes to Done.`}),`\n`,_jsx(_components.li,{children:`Notify the requester when status changes from Waiting to In Progress.`}),`\n`,_jsx(_components.li,{children:`Auto-close tickets that have been in Done status for a configured period.`}),`\n`]}),_jsx(_components.hr,{}),_jsx(Heading,{level:`2`,id:`constraints-and-gotchas`,children:`Constraints and gotchas`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The five system statuses (Open, In Progress, Waiting, Done, Closed) cannot be renamed, deleted, or reordered. They are permanent.`}),`\n`,_jsx(_components.li,{children:`Custom sub-status labels must be unique within a workspace. Two sub-statuses cannot share the same label, even if they sit under different system status groups. Ravenna rejects any attempt to create or rename a sub-status to a label that’s already in use.`}),`\n`,_jsx(_components.li,{children:`Custom sub-statuses must be assigned to forms before they can be used. Creating a sub-status alone does not make it available on any ticket.`}),`\n`,_jsxs(_components.li,{children:[`Deleting a sub-status that is still in use requires a target status. `,_jsx(_components.code,{children:`ticketStatus.delete`}),` and `,_jsx(_components.code,{children:`requestTypeTicketStatus.delete`}),` accept an optional `,_jsx(_components.code,{children:`targetStatusId`}),`; it is required whenever tickets still use the status being deleted (or removed from a form), and the request fails with `,_jsx(_components.code,{children:`TARGET_STATUS_REQUIRED`}),` otherwise. `,_jsx(_components.code,{children:`targetStatusId`}),` cannot be the status being deleted. For `,_jsx(_components.code,{children:`ticketStatus.delete`}),`, the target must be another status in the same workspace. For `,_jsx(_components.code,{children:`requestTypeTicketStatus.delete`}),`, the target must be a status the form still offers, and if the removed status was the form’s default, the default is repointed to the target, or cleared when no target is given.`]}),`\n`,_jsxs(_components.li,{children:[`Ticket migration during delete runs through the standard bulk-update pipeline inside a single transaction with the delete: timestamps, timeline entries, and status-based workflows fire as with a manual bulk change; when a target is given, deleted, unpublished, and merged tickets move in the same transaction; and a failure rolls back both the move and the delete. Migrations are capped at 500 tickets per delete (`,_jsx(_components.code,{children:`TOO_MANY_TICKETS_IN_STATUS`}),`).`]}),`\n`,_jsx(_components.li,{children:`A sub-status inherits the semantics of its parent system status. A sub-status under “Done” is considered resolved regardless of its name.`}),`\n`,_jsx(_components.li,{children:`Tickets can transition between any statuses freely. There are no enforced status transition rules (e.g., you can go from Open directly to Closed). Enforce transitions through workflow logic if needed.`}),`\n`,_jsx(_components.li,{children:`Kanban board columns map to statuses. Each status (system or custom) becomes a column.`}),`\n`,_jsx(_components.li,{children:`Bulk status updates apply the same status to all selected tickets. If tickets span different forms with different available sub-statuses, only commonly available statuses will be selectable.`}),`\n`,_jsx(_components.li,{children:`Status changes are recorded in ticket history with timestamps. This data is available in analytics for tracking resolution times and workflow efficiency.`}),`\n`]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Statuses","description":"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms","keywords":"statuses, ticket status, workflow, custom statuses, system statuses, status tracking, ticket lifecycle, form configuration","href":"/documentation/tickets/organize/statuses"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"System statuses","slug":"system-statuses","depth":2,"children":[]},{"title":"Status hierarchy","slug":"status-hierarchy","depth":2,"children":[]},{"title":"Create custom statuses","slug":"create-custom-statuses","depth":2,"children":[{"title":"Assign statuses to forms","slug":"assign-statuses-to-forms","depth":3,"children":[]},{"title":"Remove a status from a form","slug":"remove-a-status-from-a-form","depth":3,"children":[]}]},{"title":"Delete a custom status","slug":"delete-a-custom-status","depth":2,"children":[]},{"title":"Use statuses","slug":"use-statuses","depth":2,"children":[{"title":"Set status during creation","slug":"set-status-during-creation","depth":3,"children":[]},{"title":"Change status","slug":"change-status","depth":3,"children":[]}]},{"title":"Organize with statuses","slug":"organize-with-statuses","depth":2,"children":[{"title":"Filter by status","slug":"filter-by-status","depth":3,"children":[]},{"title":"Group and sort","slug":"group-and-sort","depth":3,"children":[]}]},{"title":"Form-specific configurations","slug":"form-specific-configurations","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/ravenna/7f0f469e5f340adf/content/footer.js","/_mintlify/custom/ravenna/db0bdd8f8d708ebb/content/hide_guides_sidebar.js"],"subdomain":"ravenna","siteName":"Ravenna Docs | Agentic Service Management for Every Team","title":"Statuses - Ravenna Docs | Agentic Service Management for Every Team","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"contextualStarterQuestions":[{"_id":"6abae7b25a1cadb64bc0bf77","deploymentId":"66ea04bb7d15ac5ee1de3eeb","questionText":"Can I assign statuses to forms?","status":"active","generatedBy":"contextual","path":"documentation/tickets/organize/statuses","createdAt":"2026-09-28T22:18:26.918Z","updatedAt":"2026-09-28T22:18:26.918Z","__v":0},{"_id":"6abae7b25a1cadb64bc0bf76","deploymentId":"66ea04bb7d15ac5ee1de3eeb","questionText":"How do I create custom sub-statuses?","status":"active","generatedBy":"contextual","path":"documentation/tickets/organize/statuses","createdAt":"2026-09-28T22:18:26.918Z","updatedAt":"2026-09-28T22:18:26.918Z","__v":0},{"_id":"6abae7b25a1cadb64bc0bf75","deploymentId":"66ea04bb7d15ac5ee1de3eeb","questionText":"What are the five system statuses?","status":"active","generatedBy":"contextual","path":"documentation/tickets/organize/statuses","createdAt":"2026-09-28T22:18:26.918Z","updatedAt":"2026-09-28T22:18:26.918Z","__v":0}],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-28T22:18:15.040Z","gitLastModified":"2026-09-28T22:17:08.000Z","originalFileLocation":"documentation/tickets/organize/statuses.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms\">\u003cmeta data-mint-head name=\"application-name\" content=\"Ravenna Docs | Agentic Service Management for Every Team\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Statuses - Ravenna Docs | Agentic Service Management for Every Team\">\u003cmeta data-mint-head property=\"og:description\" content=\"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Ravenna Docs | Agentic Service Management for Every Team\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.ravenna.ai/documentation/tickets/organize/statuses\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ravenna.mintlify.app/_mintlify/api/og/v2?division=Organization+and+views\u0026amp;title=Statuses\u0026amp;description=Track+ticket+progress+with+flexible+status+system+including+system+statuses+and+custom+sub-statuses+that+can+be+assigned+to+specific+forms\u0026amp;theme=3ac77a0f075d2a02a286978b\u0026amp;signature=5386e0b0e2b00cf68b04d2f9f66cb6a3f4b13f9eb451d0981d6ecb7559d8cd67\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Statuses - Ravenna Docs | Agentic Service Management for Every Team\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ravenna.mintlify.app/_mintlify/api/og/v2?division=Organization+and+views\u0026amp;title=Statuses\u0026amp;description=Track+ticket+progress+with+flexible+status+system+including+system+statuses+and+custom+sub-statuses+that+can+be+assigned+to+specific+forms\u0026amp;theme=3ac77a0f075d2a02a286978b\u0026amp;signature=5386e0b0e2b00cf68b04d2f9f66cb6a3f4b13f9eb451d0981d6ecb7559d8cd67\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/ravenna/oj-cco37HttYUI6A/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Ravenna Docs | Agentic Service Management for Every Team\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#171717\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.ravenna.ai/documentation/tickets/organize/statuses\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/documentation/tickets/organize/statuses.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.ravenna.ai/#organization\",\"name\":\"Ravenna Docs | Agentic Service Management for Every Team\",\"url\":\"https://docs.ravenna.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ravenna/H2tSGby4p7uhO4qQ/logo/light.svg?fit=max\u0026auto=format\u0026n=H2tSGby4p7uhO4qQ\u0026q=85\u0026s=c4346ded5fd1478a602d5d931bb43231\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.ravenna.ai#website\",\"name\":\"Ravenna Docs | Agentic Service Management for Every Team\",\"url\":\"https://docs.ravenna.ai\",\"publisher\":{\"@id\":\"https://docs.ravenna.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses#webpage\",\"url\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses\",\"name\":\"Statuses\",\"description\":\"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms\",\"dateModified\":\"2026-09-28T22:17:08.000Z\",\"isPartOf\":{\"@id\":\"https://docs.ravenna.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Tickets\",\"item\":\"https://docs.ravenna.ai/documentation/tickets/channels\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Organization and views\",\"item\":\"https://docs.ravenna.ai/documentation/tickets/organize/views\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Statuses\",\"item\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses#article\",\"headline\":\"Statuses\",\"name\":\"Statuses\",\"description\":\"Track ticket progress with flexible status system including system statuses and custom sub-statuses that can be assigned to specific forms\",\"url\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses\",\"mainEntityOfPage\":{\"@id\":\"https://docs.ravenna.ai/documentation/tickets/organize/statuses#webpage\"},\"dateModified\":\"2026-09-28T22:17:08.000Z\",\"publisher\":{\"@id\":\"https://docs.ravenna.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.ravenna.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Ravenna Docs | Agentic Service Management for Every Team\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Ravenna Docs | Agentic Service Management for Every Team","nav":{"global":{"anchors":[{"anchor":"Log in","icon":"circle-user","href":"https://app.ravenna.ai"},{"anchor":"Status","icon":"activity","href":"https://status.ravenna.ai"},{"anchor":"Trust Center","icon":"shield-check","href":"https://trust.ravenna.ai"}]},"tabs":[{"tab":"Documentation","pages":[{"group":"Get started","pages":[{"title":"Ravenna Documentation","sidebarTitle":"Introduction","mode":"frame","href":""},{"title":"What is Ravenna?","href":"/documentation/get-started/overview"},{"title":"Core concepts","href":"/documentation/get-started/concepts"},{"title":"Shortcuts","href":"/documentation/get-started/shortcuts"}]},{"group":"Platform","pages":[{"title":"Roles and access","sidebarTitle":"Roles \u0026 access","href":"/documentation/platform/roles-access"},{"group":"Organizations","root":{"title":"Organizations","sidebarTitle":"Overview","href":"/documentation/platform/organizations/overview"},"pages":[{"title":"Organization settings","sidebarTitle":"Settings","href":"/documentation/platform/organizations/settings"},{"title":"Custom email domains","href":"/documentation/platform/organizations/email-domains"},{"title":"Vault","tag":"NEW","href":"/documentation/platform/organizations/vault"},{"title":"Audit log","tag":"NEW","href":"/documentation/platform/organizations/audit-log"}]},{"group":"Workspaces","root":{"title":"Workspaces","sidebarTitle":"Overview","href":"/documentation/platform/workspaces/overview"},"pages":[{"title":"Workspace settings","sidebarTitle":"Settings","href":"/documentation/platform/workspaces/settings"}]},{"title":"Admin","sidebarTitle":"Admin","href":"/documentation/platform/admin"},{"title":"Portal","sidebarTitle":"Portal","href":"/documentation/platform/portal"},{"title":"Groups","href":"/documentation/platform/groups"},{"title":"Notifications","href":"/documentation/platform/notifications"},{"title":"My settings","sidebarTitle":"My settings","href":"/documentation/platform/my-settings"}]},{"group":"Tickets","pages":[{"title":"Channels","href":"/documentation/tickets/channels"},{"group":"Organization and views","pages":[{"title":"Views","href":"/documentation/tickets/organize/views"},{"title":"Categories","href":"/documentation/tickets/organize/categories"},{"title":"Tags","href":"/documentation/tickets/organize/tags"},{"title":"Priorities","href":"/documentation/tickets/organize/priorities"},{"title":"Types","description":"Categorize tickets with five ITSM-aligned types including service request, incident, problem, change, and major incident for consistent handling.","tag":"NEW","href":"/documentation/tickets/organize/types"},{"title":"Statuses","href":"/documentation/tickets/organize/statuses"}]},{"group":"Ownership and access control","pages":[{"title":"Roles","description":"Understand ticket roles in Ravenna including requester, assignee, followers, and stakeholders, and how each affects access, notifications, and workflow.","href":"/documentation/tickets/roles"},{"title":"Private tickets","href":"/documentation/tickets/private-tickets"},{"title":"Private notes","href":"/documentation/tickets/private-notes"}]},{"group":"Time management","pages":[{"title":"Due dates","href":"/documentation/tickets/due-dates"},{"title":"Snooze","href":"/documentation/tickets/snooze"}]},{"group":"Forms","root":{"title":"Forms","sidebarTitle":"Overview","href":"/documentation/tickets/forms/overview"},"pages":[{"title":"Custom fields","href":"/documentation/tickets/forms/custom-fields"},{"title":"Attributes","href":"/documentation/tickets/forms/attributes"}]},{"group":"Approvals","root":{"title":"Approvals","sidebarTitle":"Overview","href":"/documentation/tickets/approvals/overview"},"pages":[{"title":"Approval rounds","href":"/documentation/tickets/approvals/rounds"},{"title":"Approval templates","href":"/documentation/tickets/approvals/templates"}]},{"group":"Working a ticket","pages":[{"title":"Tasks","href":"/documentation/tickets/tasks"},{"title":"Reminders","href":"/documentation/tickets/reminders"},{"title":"Snippets","href":"/documentation/tickets/snippets"},{"title":"Attachments","href":"/documentation/tickets/attachments"},{"title":"Cards","sidebarTitle":"Cards","href":"/documentation/tickets/cards"}]},{"group":"Relations","pages":[{"title":"Links","href":"/documentation/tickets/links"},{"title":"Parent \u0026 child tickets","href":"/documentation/tickets/relations"}]},{"group":"Actions","pages":[{"title":"Merge tickets","href":"/documentation/tickets/merge-tickets"},{"title":"Incidents","href":"/documentation/tickets/incidents"},{"title":"Move tickets","href":"/documentation/tickets/move-tickets"},{"title":"Share tickets","href":"/documentation/tickets/share-tickets"}]}]},{"group":"Automate","pages":[{"group":"Copilot","root":{"title":"Copilot","sidebarTitle":"Overview","href":"/documentation/automate/copilot/overview"},"pages":[{"title":"Get started with Copilot","sidebarTitle":"Get started","href":"/documentation/automate/copilot/using-copilot"},{"title":"Everyday tasks","sidebarTitle":"Everyday tasks","href":"/documentation/automate/copilot/everyday-tasks"},{"title":"Build automations","sidebarTitle":"Build automations","href":"/documentation/automate/copilot/build-automations"},{"title":"Configure your workspace","sidebarTitle":"Configure workspace","href":"/documentation/automate/copilot/configure-workspace"}]},{"group":"MCP server","root":{"title":"MCP server","sidebarTitle":"Overview","icon":"https://mintlify.s3.us-west-1.amazonaws.com/ravenna/icons/ravenna.png","href":"/documentation/automate/mcp/overview"},"tag":"BETA","pages":[{"title":"Setup","href":"/documentation/automate/mcp/setup"},{"title":"Available tools","href":"/documentation/automate/mcp/tools"}]},{"group":"Workflows","root":{"title":"Workflows","sidebarTitle":"Overview","href":"/documentation/automate/workflows/overview"},"pages":[{"title":"Collections","href":"/documentation/automate/workflows/collections"},{"group":"Build","pages":[{"title":"Workflow builder","sidebarTitle":"Workflow builder","href":"/documentation/automate/workflows/workflow-builder"},{"title":"Triggers \u0026 actions","sidebarTitle":"Triggers \u0026 actions","href":"/documentation/automate/workflows/triggers-actions"}]},{"title":"Publish","sidebarTitle":"Publish","href":"/documentation/automate/workflows/publish"},{"title":"Monitor workflows","sidebarTitle":"Monitor","href":"/documentation/automate/workflows/monitor"}]},{"group":"Knowledge","root":{"title":"Overview","href":"/documentation/automate/knowledge/overview"},"pages":[{"title":"Generate KB articles","href":"/documentation/automate/knowledge/generate-articles"},{"title":"Knowledge gaps","sidebarTitle":"Knowledge gaps","href":"/documentation/automate/knowledge/knowledge-gaps"},{"title":"Web scraping","href":"/documentation/automate/knowledge/sources/website"}]},{"group":"AI agents","root":{"title":"Agents","sidebarTitle":"Overview","href":"/documentation/automate/agents/overview"},"pages":[{"title":"Configure","href":"/documentation/automate/agents/configure"},{"title":"Customize","href":"/documentation/automate/agents/customize"},{"title":"Deploy \u0026 monitor","href":"/documentation/automate/agents/deploy-monitor"},{"title":"AI trust \u0026 privacy","sidebarTitle":"Trust \u0026 privacy","href":"/documentation/automate/agents/trust-privacy"}]},{"group":"Foundry","root":{"title":"Foundry overview","sidebarTitle":"Overview","href":"/documentation/automate/foundry/overview"},"pages":[{"title":"Foundry integrations","sidebarTitle":"Integrations","href":"/documentation/automate/foundry/integrations"},{"title":"Build Foundry functions","sidebarTitle":"Functions","href":"/documentation/automate/foundry/actions"},{"title":"Use Foundry functions in workflows and agents","sidebarTitle":"Using functions","href":"/documentation/automate/foundry/using-actions"}]},{"group":"Access provisioning","root":{"title":"Access provisioning","sidebarTitle":"Overview","href":"/documentation/automate/access-provisioning/overview"},"tag":"NEW","pages":[{"title":"Applications","href":"/documentation/automate/access-provisioning/applications"},{"title":"Access policies","href":"/documentation/automate/access-provisioning/policies"},{"title":"Entitlements","href":"/documentation/automate/access-provisioning/entitlements"},{"title":"Software access requests for agents","sidebarTitle":"Agent setup","href":"/documentation/automate/access-provisioning/agent"},{"group":"Legacy","tag":"DEPRECATED","pages":[{"title":"IGA/IAM overview","sidebarTitle":"IGA/IAM overview (legacy)","deprecated":true,"href":"/documentation/automate/access-provisioning/legacy/iga-iam-overview"},{"title":"Applications","sidebarTitle":"Applications (legacy)","deprecated":true,"href":"/documentation/automate/access-provisioning/legacy/applications"}]}]}]},{"group":"Measure","pages":[{"title":"Analytics","href":"/documentation/measure/analytics"},{"title":"AI briefs","href":"/documentation/measure/ai-briefs"},{"title":"CSAT survey","href":"/documentation/measure/csat"},{"title":"SLAs","href":"/documentation/measure/slas"}]}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides/overview"}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations/overview"}]},{"tab":"API","pages":[{"title":"API","href":"/api/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/2026"}]}]},"title":"Statuses - Ravenna Docs | Agentic Service Management for Every Team","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":[],"chunks":[]}