swagger: "2.0" info: title: Virtual Scenarios version: 1.0.0 description: | ```plain {% title="Client ID" %} prod-nam-services-fdplan.slbservice.com prod-eu-services-fdplan.slbservice.com prod-au-services-fdplan.slbservice.com prod-id-services-fdplan.slbservice.com production-services-fdplan.slbservice.com ``` The Virtual Scenarios API provides an optimized, high-volume interface to the FDPlan evaluation platform. A virtual scenario is a server-managed way to evaluate a study workflow that bypasses the interactive decision and choice framing process. Each virtual scenario starts from a single workflow-input data source that supplies every input node of the study workflow, and the platform creates it automatically when a workflow-input data source job succeeds. Virtual scenarios are typically driven by external controllers and optimization engines to run sensitivity analyses and other large realization sweeps, and they are not shown in the FDPlan user interface as regular scenarios. This API has no POST endpoint. To create virtual scenarios, submit a workflow-input data source job through the Data Sources API. Use this API to list virtual scenarios, set the realizations to evaluate, monitor the per-realization result states, promote a high-performing virtual scenario to a regular scenario, and remove virtual scenarios. contact: name: SLB Customer Support for Digital url: https://customersupport.digital.slb.com x-product-id: FDPlan-Virtual-Scenarios-v1 host: api.delfi.slb.com basePath: /planning/virtual-scenarios schemes: - https consumes: - application/json produces: - application/json paths: /v1/virtual-scenarios: get: tags: - VirtualScenarios summary: Get virtual scenarios description: | Get a paginated list of virtual scenarios for a study. The `StudyId` tag is mandatory. Narrow the results further by `state` and by the `inputDataSourceIds` of the workflow-input data sources that the virtual scenarios were created from. operationId: getVirtualScenarios produces: - application/json parameters: - $ref: '#/parameters/SlbPartitionId' - in: query description: The virtual scenario state to filter for. name: state type: string enum: - Unknown - Ready - Running - CompletedSuccessfully - CompletedWithErrors - Stopping - Stopped - Queued x-nullable: false - required: true in: query description: | The tags for the virtual scenarios to get. Virtual scenarios whose tags match the provided tags are returned. The StudyId tag is mandatory, for example StudyId:01JY6FMJMY0F6AJFV05V831SB4. name: tags type: array items: type: string pattern: ^([a-zA-Z]+):([a-zA-Z0-9-:\.\|]+)$ collectionFormat: csv maxItems: 10 minItems: 1 x-nullable: false - in: query description: | The identifiers of the workflow-input data sources associated with the virtual scenarios to get. Virtual scenarios whose input data source identifier matches any of the provided identifiers are returned. Provide a maximum of 100 identifiers, separated by commas, for example 01JY70N7ZGAQ02RZF2BTHDKRN8,01HKMNGN05NYGWD90BQD9JC6KH. name: inputDataSourceIds type: array items: type: string pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$ collectionFormat: csv maxItems: 100 minItems: 1 x-nullable: false - in: query description: The number of the page in the list of virtual scenarios. name: pageNumber type: integer default: 0 maximum: !!float 100000 x-nullable: false - in: query description: The number of virtual scenarios per page. The maximum allowed page size is 200. name: pageSize type: integer default: 200 maximum: !!float 200 minimum: !!float 1 x-nullable: false - in: query description: Returns the quota and total count alongside the virtual scenarios. name: includeCount type: boolean default: false x-nullable: false - in: query description: Returns the quota, the total count, and an empty list of virtual scenarios. name: onlyCount type: boolean default: false x-nullable: false responses: "200": description: Retrieved virtual scenarios successfully. schema: $ref: '#/definitions/VirtualScenarioCollection' "400": description: Bad request. schema: $ref: '#/definitions/Error' "401": description: Unauthorized. schema: $ref: '#/definitions/Error' default: description: Unexpected error. schema: $ref: '#/definitions/Error' patch: tags: - VirtualScenarios summary: Update virtual scenarios description: | Update properties of the virtual scenarios specified in the request, using JSON Patch operations against the collection. - Setting `realizationFilters` triggers an evaluation of the provided realizations and transitions the virtual scenario to `Running` or `Queued`. - Setting `state` to `Stopping` cancels the evaluation of virtual scenarios that are still `Running`. - The `replace` operation is allowed with the path `/{virtualScenarioId}/name`, `/{virtualScenarioId}/realizationFilters`, or `/{virtualScenarioId}/state`. - The `remove` operation is allowed with the path `/{virtualScenarioId}`. - If any of the supplied virtual scenarios is not found during `replace` or `remove`, then no changes are applied and a not-found response is returned. - A 400 Bad request response is returned if you: - try to replace the value of any property in the path other than name, realization filters, and state; or - provide no realization filters for a virtual scenario; or - provide realization filters that contain duplicate realizations; or - attempt to update a virtual scenario that is not in the `Ready` state; or - provide more than 200 virtual scenario identifiers in the request payload; or - provide more than 100 realization filters for a single virtual scenario; or - provide both state and realization filters for the same virtual scenario; or - provide an illegal value to cancel or stop a virtual scenario, where only `Stopping` is allowed; or - mix `replace` operations with `remove` operations. operationId: patchVirtualScenarios produces: - application/json consumes: - application/json parameters: - $ref: '#/parameters/SlbPartitionId' - required: true in: query description: | The tags for the virtual scenarios to patch. Virtual scenarios whose tags match the provided tags are patched. The StudyId tag is mandatory, for example StudyId:01JY6FMJMY0F6AJFV05V831SB4. name: tags type: array items: type: string pattern: ^([a-zA-Z]+):([a-zA-Z0-9-:\.\|]+)$ collectionFormat: csv maxItems: 10 minItems: 1 x-nullable: false - description: The parameters to update virtual scenarios. name: patchVirtualScenariosParams in: body required: true schema: $ref: '#/definitions/PatchVirtualScenarioParamsCollection' responses: "200": description: Patched virtual scenarios. schema: $ref: '#/definitions/VirtualScenarioCollection' "400": description: Bad request. schema: $ref: '#/definitions/Error' "401": description: Unauthorized. schema: $ref: '#/definitions/Error' "404": description: Virtual scenario is not found. schema: $ref: '#/definitions/Error' default: description: Unexpected error. schema: $ref: '#/definitions/Error' /v1/virtual-scenarios/{virtualScenarioId}: patch: tags: - VirtualScenarios summary: Update a virtual scenario description: | Promote a single virtual scenario to a regular scenario. Promotion turns a high-performing virtual scenario into a regular scenario that is visible in the FDPlan user interface, with its data sources materialized from the realization inputs. The only allowed operation is to `replace` the path `/promotion/state` with the value `Running`. While promotion runs, the `promotion` field is present on the virtual scenario resource. operationId: patchVirtualScenario produces: - application/json consumes: - application/json parameters: - $ref: '#/parameters/SlbPartitionId' - required: true in: path description: The identifier of the virtual scenario to patch. name: virtualScenarioId type: string pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$ - required: true in: query description: The tags of the virtual scenario to patch. The StudyId tag is mandatory, for example StudyId:01JY6FMJMY0F6AJFV05V831SB4. name: tags type: array items: type: string pattern: ^([a-zA-Z]+):([a-zA-Z0-9-:\.\|]+)$ collectionFormat: csv maxItems: 10 minItems: 1 x-nullable: false - description: The parameters to update a single virtual scenario. name: patchParams in: body required: true schema: $ref: '#/definitions/PatchSingleVirtualScenarioParamsCollection' responses: "200": description: The patched virtual scenario. schema: $ref: '#/definitions/VirtualScenario' "400": description: Bad request. schema: $ref: '#/definitions/Error' "401": description: Unauthorized. schema: $ref: '#/definitions/Error' "404": description: Virtual scenario is not found. schema: $ref: '#/definitions/Error' default: description: Unexpected error. schema: $ref: '#/definitions/Error' /v1/virtual-scenarios/results-states: get: tags: - VirtualScenarios summary: Get results states description: | Get the per-realization result states for the specified virtual scenarios. Use this endpoint to monitor the evaluation progress of each realization in `realizationStates` and the result-processing progress in `dataSourceProcessingState`. The ensemble-results data source is returned in `dataSource` once `dataSourceProcessingState` reaches `CompletedSuccessfully`. operationId: getResultsStates produces: - application/json parameters: - $ref: '#/parameters/SlbPartitionId' - required: true in: query description: The tags of the virtual scenarios. The StudyId tag is mandatory, for example StudyId:01JY6FMJMY0F6AJFV05V831SB4. name: tags type: array items: type: string pattern: ^([a-zA-Z]+):([a-zA-Z0-9-:\.\|]+)$ collectionFormat: csv maxItems: 10 minItems: 1 x-nullable: false - required: true in: query description: | The identifiers of the virtual scenarios. Provide a maximum of 100 identifiers in a comma-separated list. name: virtualScenarioIds type: array items: type: string pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$ collectionFormat: csv maxItems: 100 minItems: 1 x-nullable: false responses: "200": description: Success. schema: $ref: '#/definitions/VirtualScenarioResultsStateCollection' "400": description: Bad request. schema: $ref: '#/definitions/Error' "401": description: Unauthorized. schema: $ref: '#/definitions/Error' "404": description: One or more of the virtual scenarios were not found. schema: $ref: '#/definitions/Error' default: description: Unexpected error. schema: $ref: '#/definitions/Error' definitions: Error: description: Generic error response. required: - data type: object properties: data: required: - code type: object properties: code: format: int32 description: The HTTP status code. type: integer example: 500 x-nullable: false message: description: The error message. type: string example: internal server error example: data: code: 500 message: internal server error PatchVirtualScenarioParamsCollection: description: List of parameters to patch virtual scenarios. type: array items: $ref: '#/definitions/PatchVirtualScenarioParams' example: - op: replace path: /01JY70N8TE9DG79NTQZDFMGEW3/name value: Price sensitivity - Base case - op: replace path: /01JY70N8TE9DG79NTQZDFMGEW3/realizationFilters value: items: - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Base nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Low nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 - op: replace path: /01JY70N8TE64GJ0CZE6M900M99/name value: Price sensitivity - Low case - op: replace path: /01JY70N8TE9DG79NTQZDFMGEW3/state value: Stopping - op: remove path: /01JY70N8TE9DG79NTQZDFMGEW3 PatchVirtualScenarioParams: description: Parameters to patch a virtual scenario. required: - op - path type: object properties: op: description: The operation to apply for the patch. The only allowed operations are `replace` and `remove`. enum: - replace - remove type: string x-nullable: false path: description: | The path to patch. It identifies a property within a virtual scenario and has two sections divided by a forward slash. The first section is the virtual scenario identifier, the second is the virtual scenario property name. Allowed property names are `name`, `state`, and `realizationFilters`. pattern: ^\/[0-7][0-9A-HJKMNP-TV-Z]{25}(\/(name|state|realizationFilters)){0,1}$ type: string x-nullable: false value: description: The value to patch. It is a name, the value `Stopping`, or a list of realization filters. x-nullable: false example: op: replace path: /01JY70N8TE9DG79NTQZDFMGEW3/realizationFilters value: items: - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Base nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Low nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 PatchSingleVirtualScenarioParamsCollection: description: List of parameters to patch a single virtual scenario. maxItems: 1 minItems: 1 type: array items: $ref: '#/definitions/PatchSingleVirtualScenarioParams' example: - op: replace path: /promotion/state value: Running PatchSingleVirtualScenarioParams: description: Parameters to patch a single virtual scenario. required: - op - path - value type: object properties: op: description: The operation to apply for the patch. The only allowed operation is `replace`. enum: - replace type: string x-nullable: false path: description: The path to patch. It identifies a property within a virtual scenario. The only allowed value is `/promotion/state`. enum: - /promotion/state type: string x-nullable: false value: description: The value to patch. To patch the `/promotion/state` property, the only allowed value is `Running`. enum: - Running type: string x-nullable: false example: op: replace path: /promotion/state value: Running RealizationFilter: description: The set of outcomes that define one realization. Each item selects one data-provider outcome for one workflow-input node. required: - items type: object properties: items: type: array items: $ref: '#/definitions/RealizationOutcome' example: items: - name: Base nodeAddress: 0:2:0 - name: Low nodeAddress: 0:2:2 RealizationOutcome: description: | A single workflow-input choice: the data-provider outcome to use for one input node of the realization. required: - name - nodeAddress type: object properties: name: description: | The data-provider outcome name to include for the node. It matches a data provider name on the workflow-input data source, for example Base or Low. type: string x-nullable: false nodeAddress: description: The address of the workflow input node, in column:row:depth form. The row is always 2 for input nodes. pattern: ^\d+:2:\d+$ type: string example: 0:2:0 x-nullable: false example: name: Base nodeAddress: 0:2:0 VirtualScenarioCollection: description: A page of virtual scenarios that match the query. required: - items type: object properties: items: type: array items: $ref: '#/definitions/VirtualScenario' quota: format: int32 description: The maximum number of virtual scenarios allowed per study. type: integer example: 10000 x-nullable: true total: format: int32 description: The total number of virtual scenarios matching the filters provided. type: integer example: 6 x-nullable: true example: total: 4 items: - id: 01JY70N8TE9DG79NTQZDFMGEW3 name: "" inputDataSource: id: 01JY70N7ZGAQ02RZF2BTHDKRN8 version: 1 state: Ready tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW lastUpdatedAt: "2025-06-20T15:52:32.000Z" - id: 01JY70N8TE64GJ0CZE6M900M99 name: Price sensitivity - Low case inputDataSource: id: 01JY70N7ZGAQ02RZF2BTHDKRN8 version: 1 state: Running tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationFilters: items: - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Base nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Low nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 lastUpdatedAt: "2025-06-20T15:55:18.000Z" - id: 01JY70N8TE7C2K9F4ZB1RM5QPA name: Price sensitivity - Base case inputDataSource: id: 01JY70N7ZGAQ02RZF2BTHDKRN8 version: 1 resultDataSource: id: 01JY70ZMBEECJH58ZQ1K9K19DH version: 1 state: CompletedSuccessfully tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationFilters: items: - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Base nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 lastUpdatedAt: "2025-06-20T15:57:24.000Z" - id: 01JY70N8TE8H3D0YJ6P2WQ4XYZ name: Price sensitivity - High case inputDataSource: id: 01JY70N7ZGAQ02RZF2BTHDKRN8 version: 1 state: CompletedWithErrors tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationFilters: items: - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: High nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 errorMessages: - data provider name 'Base' is duplicated on address '0:2:0' lastUpdatedAt: "2025-06-20T15:58:12.000Z" VirtualScenario: description: A server-managed evaluation of a study workflow, created from a single workflow-input data source. required: - id - name - inputDataSource - state - tags - lastUpdatedAt type: object properties: id: description: The identifier of the virtual scenario. type: string example: 01JY70N8TE9DG79NTQZDFMGEW3 x-nullable: false name: description: The display name of the virtual scenario. It is optional and empty by default. type: string x-nullable: false inputDataSource: $ref: '#/definitions/VersionId' resultDataSource: $ref: '#/definitions/VersionId' state: description: | The state of the virtual scenario. - Unknown - State is invalid or unknown. - Ready - The virtual scenario is ready to run an evaluation. - Running - The evaluation of the virtual scenario is running. The Running state is set when the virtual scenario is assigned realization filters with `PATCH /v1/virtual-scenarios`. - CompletedSuccessfully - The evaluation of the virtual scenario has completed successfully. Results are provided in the associated `resultDataSource`. - CompletedWithErrors - The evaluation of the virtual scenario has completed with errors. - Stopping - The evaluation of the virtual scenario is being stopped. - Stopped - The evaluation of the virtual scenario has been stopped. - Queued - The evaluation of the virtual scenario has been queued and runs when resources become available. The Queued state is set when the virtual scenario is assigned realization filters with `PATCH /v1/virtual-scenarios` and too many virtual scenario realizations are already running. enum: - Unknown - Ready - Running - CompletedSuccessfully - CompletedWithErrors - Stopping - Stopped - Queued type: string example: Ready x-nullable: false tags: description: | List of tags associated with the virtual scenario. The StudyId tag is mandatory on every query. The platform also adds an EnsembleId tag for the ensemble that holds the realizations, and the workflow-input job typically propagates Iteration and Case tags. type: array items: type: string example: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationFilters: description: | The realizations to evaluate. Each outer item is one realization, and each inner item selects one data-provider outcome for one workflow-input node address. Setting realization filters transitions the virtual scenario to Running or Queued. required: - items type: object properties: items: type: array items: $ref: '#/definitions/RealizationFilter' errorMessages: description: List of error messages associated with the virtual scenario, populated when the state is CompletedWithErrors. type: array items: type: string example: - data provider name 'Base' is duplicated on address '0:2:0' lastUpdatedAt: format: date-time description: The time when the virtual scenario was last updated. type: string example: "2025-06-20T15:52:32.000Z" x-nullable: true promotion: $ref: '#/definitions/VirtualScenarioPromotion' example: id: 01JY70N8TE9DG79NTQZDFMGEW3 name: Price sensitivity - Base case inputDataSource: id: 01JY70N7ZGAQ02RZF2BTHDKRN8 version: 1 resultDataSource: id: 01JY70ZMBEECJH58ZQ1K9K19DH version: 1 state: CompletedSuccessfully tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationFilters: items: - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Base nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 - items: - name: Base nodeAddress: 0:2:0 - name: Cost Profile.xlsx nodeAddress: 0:2:1 - name: Low nodeAddress: 0:2:2 - name: Base nodeAddress: 0:2:3 errorMessages: [] lastUpdatedAt: "2025-06-20T15:57:24.000Z" promotion: state: Running VersionId: description: An identifier and version pair. required: - id - version type: object properties: id: description: The identifier of the resource. type: string example: 01JY70N7ZGAQ02RZF2BTHDKRN8 x-nullable: false version: format: int64 description: The version of the resource. type: integer example: 1 x-nullable: false example: id: 01JY70N7ZGAQ02RZF2BTHDKRN8 version: 1 VirtualScenarioResultsStateCollection: description: List of virtual scenario results states. required: - items type: object properties: items: type: array items: $ref: '#/definitions/VirtualScenarioResultsState' example: items: - virtualScenarioId: 01JY70N8TE9DG79NTQZDFMGEW3 dataSource: id: 01JY70ZMBEECJH58ZQ1K9K19DH version: 1 dataSourceProcessingErrors: [] dataSourceProcessingState: CompletedSuccessfully tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationStates: items: - uri: 01JY6FMJMY0F6AJFV05V831SB4/realizations/01JY70TF3Q64GJ0CZE6M900M99 version: 5 state: CompletedSuccessfully computationStates: items: - address: 0:1:0 runState: CompletedSuccessfully - address: 1:1:0 runState: CompletedSuccessfully lastUpdatedAt: "2025-06-20T15:57:24.000Z" - virtualScenarioId: 01JY70N8TE64GJ0CZE6M900M99 dataSource: id: 01JY70ZMBEECJH58ZQ1K9K19DH version: 1 dataSourceProcessingErrors: - first error message - second error message dataSourceProcessingState: CompletedWithErrors tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationStates: items: - uri: 01JY6FMJMY0F6AJFV05V831SB4/realizations/01JY70TF3Q5957VSF9Q7MG0B3D version: 2 state: CompletedWithErrors computationStates: items: - address: 0:1:0 runState: CompletedSuccessfully - address: 1:1:0 runState: CompletedWithErrors errors: items: - message: first error message addresses: - 1:2:0 - 1:1:0 - message: second error message addresses: - 1:2:1 - 1:1:0 lastUpdatedAt: "2025-06-20T15:57:24.000Z" - uri: 01JY6FMJMY0F6AJFV05V831SB4/realizations/01JY70TF3Q5957VSF9Q7MG0B3E version: 2 state: Running computationStates: items: - address: 0:1:0 runState: Running - address: 1:1:0 runState: Running lastUpdatedAt: "2025-06-20T15:55:24.000Z" VirtualScenarioResultsState: description: The result state of a virtual scenario, including its per-realization states. required: - virtualScenarioId - tags - realizationStates - dataSourceProcessingState type: object properties: virtualScenarioId: description: The identifier of the virtual scenario. type: string x-nullable: false tags: description: List of tags associated with the virtual scenario. type: array items: type: string example: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW x-nullable: false realizationStates: description: A list of realizations with their corresponding states. required: - items type: object properties: items: type: array items: $ref: '#/definitions/RealizationState' dataSourceProcessingState: $ref: '#/definitions/RunState' dataSourceProcessingErrors: description: A list of data source processing errors. type: array items: type: string dataSource: $ref: '#/definitions/VersionId' example: virtualScenarioId: 01JY70N8TE9DG79NTQZDFMGEW3 dataSource: id: 01JY70ZMBEECJH58ZQ1K9K19DH version: 1 dataSourceProcessingErrors: - first error message dataSourceProcessingState: CompletedWithErrors tags: - StudyId:01JY6FMJMY0F6AJFV05V831SB4 - Iteration:Iteration1 - Case:case1 - EnsembleId:01JY70N8V117GD9G75EP3BP5GW realizationStates: items: - uri: 01JY6FMJMY0F6AJFV05V831SB4/realizations/01JY70TF3Q64GJ0CZE6M900M99 version: 3 state: CompletedSuccessfully computationStates: items: - address: 0:1:0 runState: CompletedSuccessfully - address: 1:1:0 runState: CompletedSuccessfully lastUpdatedAt: "2025-06-20T15:57:24.000Z" - uri: 01JY6FMJMY0F6AJFV05V831SB4/realizations/01JY70TF3Q5957VSF9Q7MG0B3D version: 2 state: Running computationStates: items: - address: 0:1:0 runState: Running - address: 1:1:0 runState: CompletedWithErrors errors: items: - message: first error message addresses: - 1:2:0 - 1:1:0 lastUpdatedAt: "2025-06-20T15:55:24.000Z" RealizationState: description: The state of a single realization within a virtual scenario. required: - uri - version - state type: object properties: uri: description: The URI of the realization. type: string example: 01JY6FMJMY0F6AJFV05V831SB4/realizations/01JY70TF3Q5957VSF9Q7MG0B3D x-nullable: false version: format: int32 description: The version of the realization. type: integer example: 4 x-nullable: false state: description: The state of the realization. enum: - Unknown - InsufficientData - Running - CompletedSuccessfully - CompletedWithErrors - Stopping - Stopped type: string example: CompletedWithErrors x-nullable: false lastUpdatedAt: format: date-time description: The time when the realization was last updated. type: string example: "2025-06-20T15:55:24.000Z" x-nullable: true resultsErrors: description: The errors produced by the realization results. required: - items type: object properties: items: type: array items: $ref: '#/definitions/ResultsError' computationStates: description: List of computation run states for the realization. required: - items type: object properties: items: type: array items: $ref: '#/definitions/ComputationState' RunState: description: Run state of a process. enum: - Unknown - InsufficientData - Running - CompletedSuccessfully - CompletedWithErrors - CompletedWithRetryableErrors - Stopping - Stopped type: string x-nullable: false ResultsError: description: An error produced while computing realization results. required: - message type: object properties: message: description: A user-friendly message about the error that you can present to users to help them correct the error. type: string example: An error has occurred x-nullable: false addresses: description: A list of workflow specification addresses that describe the parts of a workflow that produced the error. type: array items: pattern: ^\d+:\d+:\d+$ type: string x-nullable: false example: - 0:1:0 - 1:2:1 ComputationState: description: The run state of a single computation within a realization. required: - address - runState type: object properties: address: description: The workflow specification address of the computation. pattern: ^\d+:\d+:\d+$ type: string x-nullable: false runState: description: The run state of the computation. enum: - Unknown - InsufficientData - Running - CompletedSuccessfully - CompletedWithErrors - Stopping - Stopped type: string example: CompletedWithErrors x-nullable: false errors: description: The errors produced by the computation. required: - items type: object properties: items: type: array items: $ref: '#/definitions/ResultsError' VirtualScenarioPromotion: description: The promotion of a virtual scenario into a regular scenario. required: - state type: object properties: state: description: | The state of the virtual scenario promotion. - Unknown - State is invalid or unknown. - Running - Creating a regular scenario from the virtual scenario is running. - CompletedSuccessfully - Creating a regular scenario from the virtual scenario has completed successfully. - CompletedWithErrors - Creating a regular scenario from the virtual scenario has completed with errors. enum: - Unknown - Running - CompletedSuccessfully - CompletedWithErrors type: string example: Running x-nullable: false errorMessages: description: List of error messages associated with the virtual scenario promotion. type: array items: type: string example: - not allowed to promote a virtual scenario in the running state parameters: SlbPartitionId: required: true in: header description: Data partition identifier. name: slb-partition-id type: string security: - bearer: [] appkey: [] securityDefinitions: bearer: type: apiKey name: Authorization in: header appkey: type: apiKey name: appkey in: header tags: - name: VirtualScenarios description: Getting and updating virtual scenarios.