Simulations
11 endpoints
POST /api/v5/artifacts/simulations/get
Get Simulation
Get simulation information using the canonical shared simulation operation.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
simulation_id?: `string` | `null`
draft_id?: `string` | `null`
scenario_search?: `string` | `null`
filter_scenario_ids?: `string`[] | `null`
}Response:
{
actor_name?: `string` | `null`
simulation_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`
names?: `SimulationNameSection` | `null`
descriptions?: `SimulationDescriptionSection` | `null`
flags?: `SimulationFlagSection` | `null`
departments?: `SimulationDepartmentSection` | `null`
scenarios?: `SimulationScenarioSection` | `null`
scenario_flags?: `SimulationScenarioFlagSection` | `null`
scenario_positions?: `SimulationScenarioPositionSection` | `null`
scenario_rubrics?: `SimulationScenarioRubricSection` | `null`
scenario_time_limits?: `SimulationScenarioTimeLimitSection` | `null`
rubrics?: `SimulationRubric`[] | `null`
}POST /api/v5/artifacts/simulations/search
Search Simulation
Search simulations — 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`
filter_scenario_ids?: `string`[] | `null`
filter_cohort_ids?: `string`[] | `null`
filter_department_ids?: `string`[] | `null`
scenario_search?: `string` | `null`
cohort_search?: `string` | `null`
department_search?: `string` | `null`
flag_search?: `string` | `null`
page_size?: `integer` | `null`
page_offset?: `integer` | `null`
}Response:
{
actor_name?: `string` | `null`
simulations?: `ListSimulationApiSimulation`[] | `null`
scenarios?: `ListSimulationApiScenario`[] | `null`
scenario_filter?: `ListFilterSection` | `null`
cohort_filter?: `ListFilterSection` | `null`
department_filter?: `ListFilterSection` | `null`
flag_filter?: `ListFilterSection` | `null`
total_count?: `integer` | `null`
import_fields?: `any`[] | `null`
}POST /api/v5/artifacts/simulations/create
Create Simulation
Create simulations using composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
simulations: `CreateSimulationItem`[]
}Response:
{
results: `SimulationResultItem`[]
}POST /api/v5/artifacts/simulations/update
Update Simulation
Update simulations using composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
simulations: `UpdateSimulationItem`[]
}Response:
{
results: `SimulationResultItem`[]
}POST /api/v5/artifacts/simulations/duplicate
Duplicate Simulation
Duplicate a simulation — composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
simulation_id: `string`
}Response:
{
success: `boolean`
simulation_id: `string`
message: `string`
}POST /api/v5/artifacts/simulations/delete
Delete Simulation
Bulk delete simulations — composable infra architecture.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
simulation_ids: `string`[]
}Response:
{
results: `DeleteSimulationResult`[]
}PATCH /api/v5/artifacts/simulations/draft
Patch Simulation Draft
Patch simulation 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`
flag_ids?: `string`[] | `null`
department_ids?: `string`[] | `null`
scenario_ids?: `string`[] | `null`
scenario_flag_ids?: `string`[] | `null`
scenario_flags?: `DraftScenarioFlagValue`[] | `null`
scenario_position_ids?: `string`[] | `null`
scenario_positions?: `DraftScenarioPositionValue`[] | `null`
scenario_rubric_ids?: `string`[] | `null`
scenario_rubrics?: `DraftScenarioRubricValue`[] | `null`
scenario_time_limit_ids?: `string`[] | `null`
scenario_time_limits?: `DraftScenarioTimeLimitValue`[] | `null`
}Response:
{
success: `boolean`
draft_id: `string`
new_version: `integer`
message: `string`
form_state?: `SimulationDraftFormState` | `null`
}POST /api/v5/artifacts/simulations/drafts
Get Simulation Drafts
List simulation 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?: `GetSimulationDraftResponse`[] | `null`
}POST /api/v5/artifacts/simulations/export
Export Simulations
Export all simulations as a clean, denormalized CSV.
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Api-Key | header | No | — |
authorization | header | No | — |
X-MCP | header | No | — |
Request body:
{
simulation_id?: `string` | `null`
search?: `string` | `null`
filter_scenario_ids?: `string`[] | `null`
filter_cohort_ids?: `string`[] | `null`
filter_department_ids?: `string`[] | `null`
}Response:
{
upload_id: `string`
file_name: `string`
row_count: `integer`
}POST /api/v5/artifacts/simulations/docs
Get Simulation Docs Endpoint
Get composed documentation for the simulation 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/simulations/refresh
Simulation Refresh
Refresh simulation 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`[]
}