# \CmmnApi
All URIs are relative to */api*
Method | HTTP request | Description
------------- | ------------- | -------------
[**archive_cmmn_case_by_path**](CmmnApi.md#archive_cmmn_case_by_path) | **POST** /w/{workspace}/cmmn_cases/archive/{path} | archive CMMN case model by path
[**close_cmmn_case_instance**](CmmnApi.md#close_cmmn_case_instance) | **POST** /w/{workspace}/cmmn/instances/close/{id} | close a finished CMMN case instance
[**create_cmmn_case**](CmmnApi.md#create_cmmn_case) | **POST** /w/{workspace}/cmmn_cases/create | create CMMN case model
[**delete_cmmn_case_by_path**](CmmnApi.md#delete_cmmn_case_by_path) | **DELETE** /w/{workspace}/cmmn_cases/delete/{path} | delete CMMN case model by path
[**exists_cmmn_case_by_path**](CmmnApi.md#exists_cmmn_case_by_path) | **GET** /w/{workspace}/cmmn_cases/exists/{path} | exists CMMN case model by path
[**get_cmmn_case**](CmmnApi.md#get_cmmn_case) | **GET** /w/{workspace}/cmmn/instances/get/{id} | get CMMN case instance
[**get_cmmn_case_by_path**](CmmnApi.md#get_cmmn_case_by_path) | **GET** /w/{workspace}/cmmn_cases/get/{path} | get CMMN case model by path
[**get_cmmn_case_by_path_with_draft**](CmmnApi.md#get_cmmn_case_by_path_with_draft) | **GET** /w/{workspace}/cmmn_cases/get/draft/{path} | get CMMN case model by path with draft
[**get_cmmn_case_history**](CmmnApi.md#get_cmmn_case_history) | **GET** /w/{workspace}/cmmn_cases/history/p/{path} | get CMMN case model history by path
[**get_cmmn_case_overview**](CmmnApi.md#get_cmmn_case_overview) | **GET** /w/{workspace}/cmmn_cases/overview/v/{version} | get the stage overview and case pages for a deployed case-model version
[**get_cmmn_case_status**](CmmnApi.md#get_cmmn_case_status) | **GET** /w/{workspace}/cmmn/instances/get/{id}/status | get CMMN case instance status
[**list_cmmn_case_instances**](CmmnApi.md#list_cmmn_case_instances) | **GET** /w/{workspace}/cmmn/instances/list | list CMMN case instances
[**list_cmmn_cases**](CmmnApi.md#list_cmmn_cases) | **GET** /w/{workspace}/cmmn_cases/list | list all CMMN case models
[**resume_cmmn_case_instance**](CmmnApi.md#resume_cmmn_case_instance) | **POST** /w/{workspace}/cmmn/instances/resume/{id} | resume a suspended CMMN case instance
[**start_cmmn_case**](CmmnApi.md#start_cmmn_case) | **POST** /w/{workspace}/cmmn/run/p/{path} | start CMMN case instance
[**suspend_cmmn_case_instance**](CmmnApi.md#suspend_cmmn_case_instance) | **POST** /w/{workspace}/cmmn/instances/suspend/{id} | suspend a running CMMN case instance
[**terminate_cmmn_case_instance**](CmmnApi.md#terminate_cmmn_case_instance) | **POST** /w/{workspace}/cmmn/instances/terminate/{id} | terminate a running CMMN case instance
[**trigger_cmmn_plan_item**](CmmnApi.md#trigger_cmmn_plan_item) | **POST** /w/{workspace}/cmmn/instances/{id}/plan-items/{plan_item_id}/{transition} | apply a transition to one plan item of a running CMMN case
[**update_cmmn_case**](CmmnApi.md#update_cmmn_case) | **POST** /w/{workspace}/cmmn_cases/update/{path} | update CMMN case model
## archive_cmmn_case_by_path
> String archive_cmmn_case_by_path(workspace, path, archive_flow_by_path_request)
archive CMMN case model by path
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
**archive_flow_by_path_request** | [**ArchiveFlowByPathRequest**](ArchiveFlowByPathRequest.md) | archive CMMN case model | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## close_cmmn_case_instance
> String close_cmmn_case_instance(workspace, id)
close a finished CMMN case instance
The CMMN 1.1 case-instance transition out of `completed` or `terminated`. Unlike suspend/resume/terminate this is applied immediately rather than through the control channel: a finished case's queue row has been completed, so no worker would ever read it.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**id** | **uuid::Uuid** | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## create_cmmn_case
> models::CmmnDeployResult create_cmmn_case(workspace, new_cmmn_case_model)
create CMMN case model
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**new_cmmn_case_model** | [**NewCmmnCaseModel**](NewCmmnCaseModel.md) | CMMN case model to create | [required] |
### Return type
[**models::CmmnDeployResult**](CmmnDeployResult.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## delete_cmmn_case_by_path
> String delete_cmmn_case_by_path(workspace, path)
delete CMMN case model by path
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## exists_cmmn_case_by_path
> bool exists_cmmn_case_by_path(workspace, path)
exists CMMN case model by path
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
### Return type
**bool**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## get_cmmn_case
> models::CmmnCaseDetail get_cmmn_case(workspace, id)
get CMMN case instance
The persisted runtime state of one case instance — the engine's own `CaseInstance` (plan-item instances, their lifecycle states, sentry latches, case variables, transition history) plus the job-level lifecycle, incidents, the waiting set and the control channel. `case_status` is `null` in the window between the job being pushed and its first step committing, so a freshly started case can legitimately return `200` with no engine state yet.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**id** | **uuid::Uuid** | | [required] |
### Return type
[**models::CmmnCaseDetail**](CmmnCaseDetail.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## get_cmmn_case_by_path
> models::CmmnCaseModel get_cmmn_case_by_path(workspace, path)
get CMMN case model by path
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
### Return type
[**models::CmmnCaseModel**](CmmnCaseModel.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## get_cmmn_case_by_path_with_draft
> models::CmmnCaseModelWithDraft get_cmmn_case_by_path_with_draft(workspace, path)
get CMMN case model by path with draft
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
### Return type
[**models::CmmnCaseModelWithDraft**](CmmnCaseModelWithDraft.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## get_cmmn_case_history
> Vec<models::CmmnCaseModelVersion> get_cmmn_case_history(workspace, path)
get CMMN case model history by path
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
### Return type
[**Vec<models::CmmnCaseModelVersion>**](CmmnCaseModelVersion.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## get_cmmn_case_overview
> models::CmmnCaseOverview get_cmmn_case_overview(workspace, version)
get the stage overview and case pages for a deployed case-model version
The stage rail and the case-page list `orvanta_cmmn::stage_overview` and `orvanta_cmmn::case_pages` derive from one deployed document. **By version, not by path**, and that is half the point. A running case pins a `cmmn_case_model_version.id` and resolves its model from that row on every step, while `GET /cmmn_cases/get/{path}` returns whatever is deployed *now* — a different document the moment anyone redeploys. A Case View reading the latest can only warn that its rail might not match; reading the pinned version makes the warning unnecessary. The ACL comes from the parent `cmmn_case_model` row: the version table has no RLS and no `extra_perms` of its own, so the read joins the parent and `cmmn_cases:read:<path>` is checked on the path the join returned, not on one the caller supplied.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**version** | **i64** | a `cmmn_case_model_version.id` | [required] |
### Return type
[**models::CmmnCaseOverview**](CmmnCaseOverview.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## get_cmmn_case_status
> models::CmmnCaseInstanceStatus get_cmmn_case_status(workspace, id)
get CMMN case instance status
Everything the Case View re-reads on its 1s poll, and nothing else. **The trace is absent by construction, not empty.** This response has no `history` field at all rather than an emptied one, because a `[]` a reader could mistake for \"this case has done nothing\" is exactly the silent shape this codebase keeps unwinding. `history_len` says how many events the full document carries, so a client can tell \"no trace here\" from \"no trace yet\" without fetching it — use `GET /cmmn/instances/get/{id}` for the trace itself. `case_state` / `lifecycle` are `null` in the window between the job being pushed and its first step committing. That is a `200`, not a `404`: the row exists and the poll must keep going.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**id** | **uuid::Uuid** | | [required] |
### Return type
[**models::CmmnCaseInstanceStatus**](CmmnCaseInstanceStatus.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## list_cmmn_case_instances
> Vec<models::CmmnCaseSummary> list_cmmn_case_instances(workspace, page, per_page, business_key)
list CMMN case instances
Case instances for the workspace, newest first, as cheap columns only. Root `cmmn_case` jobs (`parent_job IS NULL`) — a case's own child jobs are not case instances. `business_key` is a **server-side** filter over `cmmn_case_status.business_key` (case-insensitive substring), which is what makes a case on page three findable from page one. `lifecycle` and `case_state` are read straight out of the JSONB rather than by deserialising the engine blob, so a page of thirty rows costs thirty column reads and not thirty case documents. Both are reported because they can legitimately disagree: an `active` case may carry an `incident`.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**page** | Option<**i32**> | which page to return (start at 1, default 1) | |
**per_page** | Option<**i32**> | number of items to return for a given page (default 30, max 100) | |
**business_key** | Option<**String**> | case-insensitive substring match on the #199 business key. An empty value is no filter, not a match on the empty string. | |
### Return type
[**Vec<models::CmmnCaseSummary>**](CmmnCaseSummary.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## list_cmmn_cases
> Vec<models::ListableCmmnCaseModel> list_cmmn_cases(workspace, page, per_page, path_start, show_archived, include_draft_only, with_cmmn_xml)
list all CMMN case models
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**page** | Option<**i32**> | which page to return (start at 1, default 1) | |
**per_page** | Option<**i32**> | number of items to return for a given page (default 30, max 100) | |
**path_start** | Option<**String**> | mask to filter matching starting path | |
**show_archived** | Option<**bool**> | | |
**include_draft_only** | Option<**bool**> | | |
**with_cmmn_xml** | Option<**bool**> | (default false) Include each model's deployed `cmmn_xml` on the list row, so a caller that draws every model (a thumbnail grid, which reads the document's own `CMMNDI` geometry) does not need one `getCmmnCaseByPath` per item. Opt-in because it is by far the largest thing in the row. Limited to `per_page` <= 100; a larger page with this flag set is refused with 400 rather than silently clamped. | |
### Return type
[**Vec<models::ListableCmmnCaseModel>**](ListableCmmnCaseModel.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## resume_cmmn_case_instance
> String resume_cmmn_case_instance(workspace, id)
resume a suspended CMMN case instance
Every suspended plan item takes `parentResume` back to the state it held when the case was suspended — not `available`, which would re-activate a stage and duplicate its children — and the case becomes `active` again.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**id** | **uuid::Uuid** | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## start_cmmn_case
> String start_cmmn_case(workspace, path, start_cmmn_case)
start CMMN case instance
Pushes a `CmmnCase` job for the latest deployed version at `path` and returns its id, which is also the case-instance id. Only a **deployed** model can be started: the lookup spells `draft_only IS NOT TRUE`, so a path that exists only as a draft 404s exactly as an absent one does. A draft was never parsed and never admitted, so starting one would hand the worker a model nothing checked.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
**start_cmmn_case** | [**StartCmmnCase**](StartCmmnCase.md) | start variables, and an optional | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## suspend_cmmn_case_instance
> String suspend_cmmn_case_instance(workspace, id)
suspend a running CMMN case instance
Every live plan item takes `parentSuspend` and the case becomes `suspended`: no criteria are evaluated, no completion is decided and plan-item triggers are refused until it is resumed. The request is parked in the case's control channel and applied by the worker on its next step.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**id** | **uuid::Uuid** | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## terminate_cmmn_case_instance
> String terminate_cmmn_case_instance(workspace, id)
terminate a running CMMN case instance
Every live plan item takes `terminate`, deepest first, and the case becomes `terminated`. Distinct from an exit criterion on the case plan model, which emits `exit` instead — both land in `terminated`, so only the recorded history tells them apart.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**id** | **uuid::Uuid** | | [required] |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## trigger_cmmn_plan_item
> String trigger_cmmn_plan_item(workspace, id, plan_item_id, transition, instance)
apply a transition to one plan item of a running CMMN case
Completing a human task, firing a user event listener, manually starting an item — one [`CmmnTriggerIntent`] written into the case's control channel and applied by the worker on its next step. The engine decides legality; this route decides who may ask. ## Which transitions `Complete`, `Occur`, `ManualStart`, `Disable`, `Reenable` — exactly the set the engine can put into `CmmnWaitingItem.accepts`, so a client passes back verbatim what it was offered. The spelling in the path is the **Rust variant name** (`ManualStart`), which is how `accepts` serialises, not the CMMN `<standardEvent>` spelling (`manualStart`). Everything else is a `400` naming why. Notably `Fault` is never requestable — a fault is raised by a behaviour and never asked for, and making it requestable would let a caller fabricate a failure the engine never observed. Per-plan-item `Terminate` / `Suspend` / `Resume` are drivable by the engine but are operator authority over one item rather than participation in it; the case-level routes above are the operator surface today. ## Which instance `?instance=` names one entry of `CmmnCaseInstance.instances`. Omitting it is the ordinary case and it is resolved server-side. It becomes **required** the moment a plan item has more than one instance parked — a `repetitionRule` produces one per repetition, each separately completable, and picking one arbitrarily is the defect BPMN's #1275 named. The `400` lists the candidates. ## Who may ask `cmmn_cases:write:instances`, the instance must be visible under the caller's own row-level ACLs, **and** the plan item's declared audience must admit them. The audience is derived from the model by the same `HumanTaskAudience::permits` predicate BPMN's user tasks use (#1123): admins always; a task that declares nobody falls back to instance visibility; a literal `flowable:assignee` / `owner` / `candidateUsers` / `candidateGroups` is matched on username or group; and a declared identity this build cannot resolve — an `${expression}`, or a `performerRef` / `authorizedRoleRefs` naming a `<caseRoles>` role that `orvanta-cmmn` does not model — falls **open**, because hiding a task nobody can be shown to own is the defect #1104 fixed.
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**id** | **uuid::Uuid** | | [required] |
**plan_item_id** | **String** | the `<planItem>` id, as reported by `CmmnWaitingItem.plan_item_id` | [required] |
**transition** | **String** | one of the transitions `CmmnWaitingItem.accepts` can contain. Any other `CmmnPlanItemTransition` is a 400. | [required] |
**instance** | Option<**i32**> | index into `CmmnCaseInstance.instances`, as reported by `CmmnWaitingItem.instance`. Required only when the plan item has more than one instance parked. | |
### Return type
**String**
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
## update_cmmn_case
> models::CmmnDeployResult update_cmmn_case(workspace, path, new_cmmn_case_model)
update CMMN case model
### Parameters
Name | Type | Description | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**workspace** | **String** | | [required] |
**path** | **String** | | [required] |
**new_cmmn_case_model** | [**NewCmmnCaseModel**](NewCmmnCaseModel.md) | CMMN case model to update. A `path` differing from the one in the URL renames the model: the model row and its whole version history move together, so a running case's pinned version still resolves (#1343). | [required] |
### Return type
[**models::CmmnDeployResult**](CmmnDeployResult.md)
### Authorization
[cookieAuth](../README.md#cookieAuth), [bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: application/json
- **Accept**: application/json, text/plain
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)