Scenarios
11 endpoints
POST /api/v5/artifacts/scenarios/get
Get Scenario
Get scenario information using the canonical shared scenario operation.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
scenario_id?: `string` | `null`
document_ids?: `string`[] | `null`
problem_statement_ids?: `string`[] | `null`
filter_department_ids?: `string`[] | `null`
filter_persona_ids?: `string`[] | `null`
filter_document_ids?: `string`[] | `null`
filter_parameter_ids?: `string`[] | `null`
filter_field_ids?: `string`[] | `null`
persona_search?: `string` | `null`
document_search?: `string` | `null`
parameter_search?: `string` | `null`
description_search?: `string` | `null`
problem_statement_search?: `string` | `null`
image_search?: `string` | `null`
video_search?: `string` | `null`
question_search?: `string` | `null`
option_search?: `string` | `null`
persona_show_selected?: `boolean` | `null`
document_show_selected?: `boolean` | `null`
parameter_show_selected?: `boolean` | `null`
...
}Response:
{
actor_name?: `string` | `null`
scenario_exists?: `boolean` | `null`
can_edit?: `boolean` | `null`
disabled_reason?: `string` | `null`
draft_version?: `integer` | `null`
group_id?: `string` | `null`
basic_show_ai_generate?: `boolean` | `null`
content_show_ai_generate?: `boolean` | `null`
resolved_parameter_ids?: `string`[] | `null`
names?: `ScenarioNameSection` | `null`
descriptions?: `ScenarioDescriptionSection` | `null`
problem_statements?: `ScenarioProblemStatementSection` | `null`
flags?: `ScenarioFlagSection` | `null`
departments?: `ScenarioDepartmentSection` | `null`
personas?: `ScenarioPersonaSection` | `null`
documents?: `ScenarioDocumentSection` | `null`
parameters?: `ScenarioParameterSection` | `null`
parameter_fields?: `ScenarioParameterFieldSection` | `null`
objectives?: `ScenarioObjectiveSection` | `null`
images?: `ScenarioImageSection` | `null`
...
}POST /api/v5/artifacts/scenarios/search
Search Scenario
Search scenarios — composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
search?: `string` | `null`
persona_ids?: `string`[] | `null`
simulation_ids?: `string`[] | `null`
filter_department_ids?: `string`[] | `null`
persona_search?: `string` | `null`
simulation_search?: `string` | `null`
department_search?: `string` | `null`
flag_search?: `string` | `null`
page_size?: `integer` | `null`
page_offset?: `integer` | `null`
}Response:
{
actor_name?: `string` | `null`
scenarios?: `ListScenarioApiScenario`[] | `null`
objectives?: `ListScenarioApiObjective`[] | `null`
fields?: `ListScenarioApiField`[] | `null`
cohorts?: `ListScenarioApiCohort`[] | `null`
personas?: `ListScenarioApiPersona`[] | `null`
simulations?: `ListScenarioApiSimulation`[] | `null`
departments?: `ListScenarioApiDepartment`[] | `null`
persona_filter?: `ListFilterSection` | `null`
simulation_filter?: `ListFilterSection` | `null`
department_filter?: `ListFilterSection` | `null`
flag_filter?: `ListFilterSection` | `null`
total_count?: `integer` | `null`
import_fields?: `ImportField`[] | `null`
}POST /api/v5/artifacts/scenarios/create
Create Scenario
Create scenarios using composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
scenarios: `CreateScenarioItem`[]
}Response:
{
results: `ScenarioResultItem`[]
}POST /api/v5/artifacts/scenarios/update
Update Scenario
Update scenarios using composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
scenarios: `UpdateScenarioItem`[]
}Response:
{
results: `ScenarioResultItem`[]
}POST /api/v5/artifacts/scenarios/duplicate
Duplicate Scenario
Duplicate a scenario — composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
scenario_id: `string`
}Response:
{
success: `boolean`
scenario_id: `string`
message: `string`
}POST /api/v5/artifacts/scenarios/delete
Delete Scenario
Bulk delete scenarios — composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
scenario_ids: `string`[]
}Response:
{
results: `DeleteScenarioResult`[]
}PATCH /api/v5/artifacts/scenarios/draft
Patch Scenario Draft
Patch scenario draft — composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
input_draft_id?: `string` | `null`
expected_version?: `integer`
name?: `string` | `null`
name_id?: `string` | `null`
description?: `string` | `null`
description_id?: `string` | `null`
problem_statement?: `string` | `null`
problem_statement_id?: `string` | `null`
objectives?: `string`[] | `null`
objective_ids?: `string`[] | `null`
images?: `DraftImageValue`[] | `null`
image_ids?: `string`[] | `null`
videos?: `app__routes__v5__api__main__scenario__types__DraftVideoValue`[] | `null`
video_ids?: `string`[] | `null`
questions?: `DraftQuestionValue`[] | `null`
question_ids?: `string`[] | `null`
options?: `DraftOptionValue`[] | `null`
option_ids?: `string`[] | `null`
flag_ids?: `string`[] | `null`
department_ids?: `string`[] | `null`
...
}Response:
{
success: `boolean`
draft_id: `string`
new_version: `integer`
message: `string`
form_state: `ScenarioDraftFormState`
}POST /api/v5/artifacts/scenarios/drafts
Get Scenario Drafts
List scenario drafts owned by the current profile.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Response:
{
entries?: `GetScenarioDraftResponse`[] | `null`
}POST /api/v5/artifacts/scenarios/export
Export Scenarios
Export all scenarios as a clean, denormalized CSV.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
scenario_id?: `string` | `null`
search?: `string` | `null`
persona_ids?: `string`[] | `null`
simulation_ids?: `string`[] | `null`
filter_department_ids?: `string`[] | `null`
}Response:
{
upload_id: `string`
file_name: `string`
row_count: `integer`
}POST /api/v5/artifacts/scenarios/docs
Get Scenario Docs Endpoint
Get composed documentation for the scenario artifact.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
entity_id?: `string` | `null`
}Response:
{
name: `string`
type: `string`
description: `string`
artifact?: `DocsResponse` | `null`
entries: `DocsResponse`[]
resources: `DocsResponse`[]
permissions: `OperationInfo`[]
api_operations: `OperationInfo`[]
page_metadata?: `DocsApiResponse` | `null`
}POST /api/v5/artifacts/scenarios/refresh
Scenario Refresh
Refresh scenario materialized views and invalidate caches.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Response:
{
success: `boolean`
refreshed_views: `string`[]
invalidated_tags: `string`[]
}