Op deze pagina

API-referentie: simulaties

Met simulaties kun je what-if-scenario’s uitvoeren op je procesmodellen. Stel verwerkingstijden, toewijzing van bronnen en aankomstpercentages in om het procesgedrag te voorspellen.

Simulaties voor een proces weergeven

Endpoint: GET /v1/tenant/{tenantId}/processes/{processId}/simulations

Authenticatie: API-sleutel voor deze tenant · read-scope

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
limit integer query Nee Maximumaantal items dat wordt teruggegeven
offset integer query Nee Aantal items dat wordt overgeslagen

Response (200):

Lijst met simulaties

[
	{
		"id": "00000000-0000-0000-0000-000000000000",
		"displayName": "string",
		"datasetName": "string",
		"startTime": "2024-03-15T16:30:00Z",
		"endTime": "2024-03-15T16:30:00Z",
		"useWarmUp": true
	}
]

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Een simulatie maken (idempotent als je een ID opgeeft)

Endpoint: POST /v1/tenant/{tenantId}/processes/{processId}/simulations

Authenticatie: API-sleutel voor deze tenant · write-scope

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid

Requestbody:

{
	"id": "00000000-0000-0000-0000-000000000000",
	"displayName": "string",
	"datasetName": "string",
	"startTime": "2024-03-15T16:30:00Z",
	"endTime": "2024-03-15T16:30:00Z",
	"useWarmUp": true
}
Veld Type Verplicht Beschrijving
id string Nee Optioneel ID voor idempotente nieuwe pogingen (moet een UUID zijn)
Formaat: uuid
displayName string Nee Naam van de simulatie
Standaard: New Simulation
datasetName string Nee Naam van de dataset waarop de simulatie wordt uitgevoerd
startTime string Nee Starttijd van de simulatie
Formaat: date-time
endTime string Nee Eindtijd van de simulatie
Formaat: date-time
useWarmUp boolean Nee Of de opwarmperiode moet worden weggelaten
Standaard: false

Response (201):

Simulatie aangemaakt

{
	"simulation": {
		"id": "00000000-0000-0000-0000-000000000000",
		"displayName": "string"
	},
	"message": "string"
}
Veld Type Verplicht Beschrijving
simulation object Ja
message string Ja

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden
  • 409 Het verzoek is in strijd met de huidige status (bijvoorbeeld een licentiecontrole of een hergebruikt ID)

Een simulatie met elementinstellingen, attributen en bronnen ophalen

Endpoint: GET /v1/tenant/{tenantId}/processes/{processId}/simulations/{simulationId}

Authenticatie: API-sleutel voor deze tenant · read-scope

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
simulationId string pad Ja Formaat: uuid

Response (200):

Simulatiedetails

{
	"simulation": {
		"id": "00000000-0000-0000-0000-000000000000",
		"displayName": "string",
		"datasetName": "string",
		"startTime": "2024-03-15T16:30:00Z",
		"endTime": "2024-03-15T16:30:00Z",
		"useWarmUp": true
	},
	"elementSettings": [
		{
			"simulationId": "00000000-0000-0000-0000-000000000000",
			"modelElementId": "00000000-0000-0000-0000-000000000000",
			"settings": {
				"processingTimeDistribution": [
					{
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"distribution": {
							"type": "Fixed",
							"value": 0
						},
						"timeUnit": "seconds",
						"rateUnit": "perTimeSlot"
					}
				],
				"processingTimeUnit": "seconds",
				"updateAttributeRules": [
					{
						"id": "string",
						"attributeId": "00000000-0000-0000-0000-000000000000",
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"newValue": "string",
						"isEnabled": true
					}
				],
				"requiredResources": [
					{
						"resourceId": "00000000-0000-0000-0000-000000000000",
						"amount": 0
					}
				],
				"caseStartsDistribution": [
					{
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"distribution": {
							"type": "Fixed",
							"value": 0
						},
						"timeUnit": "seconds",
						"rateUnit": "perTimeSlot"
					}
				],
				"caseStartsTimeUnit": "perTimeSlot",
				"capacityInterval": "perHour",
				"skipChanceDistribution": [
					{
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"distribution": {
							"type": "Fixed",
							"value": 0
						},
						"timeUnit": "seconds",
						"rateUnit": "perTimeSlot"
					}
				],
				"queueStrategy": "fifo",
				"chanceToTakeDistribution": [
					{
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"distribution": {
							"type": "Fixed",
							"value": 0
						},
						"timeUnit": "seconds",
						"rateUnit": "perTimeSlot"
					}
				]
			}
		}
	],
	"attributes": [
		{
			"id": "00000000-0000-0000-0000-000000000000",
			"simulationId": "00000000-0000-0000-0000-000000000000",
			"displayName": "string",
			"valueDistribution": {
				"type": "Number",
				"numberDistributions": [
					{
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"distribution": {
							"type": "Fixed",
							"value": 0
						},
						"timeUnit": "seconds",
						"rateUnit": "perTimeSlot",
						"id": "string",
						"isEnabled": true,
						"isDefault": true
					}
				],
				"textDistributions": [
					{
						"id": "string",
						"timeslot": {
							"periodicity": "Always"
						},
						"isEnabled": true,
						"isDefault": true,
						"mode": "list",
						"textValues": [
							{
								"id": "string",
								"value": "string",
								"chance": 0
							}
						]
					}
				]
			},
			"simulationAttributeType": "string"
		}
	],
	"resources": [
		{
			"id": "00000000-0000-0000-0000-000000000000",
			"simulationId": "00000000-0000-0000-0000-000000000000",
			"displayName": "string",
			"levelDistribution": [
				{
					"timeslot": {
						"periodicity": "Always"
					},
					"conditions": [
						{
							"type": "Values",
							"attribute": "string",
							"values": [
								"string"
							]
						}
					],
					"distribution": {
						"type": "Fixed",
						"value": 0
					},
					"timeUnit": "seconds",
					"rateUnit": "perTimeSlot"
				}
			],
			"attributeId": "00000000-0000-0000-0000-000000000000"
		}
	]
}
Veld Type Verplicht Beschrijving
simulation object Ja Simulatiekop
elementSettings object[] Ja Simulatie-instellingen per element
attributes object[] Ja Gesimuleerde attributen
resources object[] Ja Bronnenpools

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Een simulatie bijwerken (velden en/of elementinstellingen)

Endpoint: PUT /v1/tenant/{tenantId}/processes/{processId}/simulations/{simulationId}

Authenticatie: API-sleutel voor deze tenant · write-scope

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
simulationId string pad Ja Formaat: uuid

Requestbody:

{
	"displayName": "string",
	"datasetName": "string",
	"startTime": "2024-03-15T16:30:00Z",
	"endTime": "2024-03-15T16:30:00Z",
	"useWarmUp": true,
	"elementSettings": [
		{
			"modelElementId": "00000000-0000-0000-0000-000000000000",
			"settings": {
				"caseStartsDistribution": [
					{
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"distribution": {
							"type": "Fixed",
							"value": 0
						},
						"timeUnit": "seconds",
						"rateUnit": "perTimeSlot"
					}
				],
				"processingTimeDistribution": [
					{
						"timeslot": {
							"periodicity": "Always"
						},
						"conditions": [
							{
								"type": "Values",
								"attribute": "string",
								"values": [
									"string"
								]
							}
						],
						"distribution": {
							"type": "Fixed",
							"value": 0
						},
						"timeUnit": "seconds",
						"rateUnit": "perTimeSlot"
					}
				]
			}
		}
	]
}
Veld Type Verplicht Beschrijving
displayName string Nee Naam van de simulatie
datasetName string Nee Naam van de dataset waarop de simulatie wordt uitgevoerd
startTime string Nee Starttijd van de simulatie
Formaat: date-time
endTime string Nee Eindtijd van de simulatie
Formaat: date-time
useWarmUp boolean Nee Of de opwarmperiode moet worden overgeslagen
elementSettings object[] Nee Instellingen per element overschrijven

Antwoord (200):

Simulatie bijgewerkt

{
	"message": "string"
}
Veld Type Verplicht Beschrijving
message string Ja

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Een simulatie definitief verwijderen

Endpoint: DELETE /v1/tenant/{tenantId}/processes/{processId}/simulations/{simulationId}

Authenticatie: API-sleutel voor Tenant · write-scope

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
simulationId string pad Ja Formaat: uuid

Antwoord (200):

Simulatie verwijderd

{
	"message": "string"
}
Veld Type Verplicht Beschrijving
message string Ja

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Deze endpoints gebruiken AI om automatisch simulatie-instellingen te genereren op basis van het procesmodel.

Simulatie-instellingen genereren met AI (asynchroon; controleer de status via het status-endpoint)

Endpoint: POST /v1/tenant/{tenantId}/processes/{processId}/simulations/{simulationId}/generate-settings

Authenticatie: API-sleutel voor Tenant · write-scope · limiet 2 verzoeken/s (piek 4)

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
simulationId string pad Ja Formaat: uuid

Request body:

{
	"processDescription": "string",
	"additionalContext": "string"
}
Veld Type Verplicht Beschrijving
processDescription string Nee
additionalContext string Nee

Antwoord (200):

Genereren gestart / resultaat

{
	"message": "string"
}
Veld Type Verplicht Beschrijving
message string Ja

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Status van het genereren van simulatie-instellingen controleren

Endpoint: GET /v1/tenant/{tenantId}/processes/{processId}/simulations/{simulationId}/generate-settings/status

Authenticatie: API-sleutel voor Tenant · write-scope

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
simulationId string pad Ja Formaat: uuid

Antwoord (200):

Generatiestatus

{
	"message": "string"
}
Veld Type Verplicht Beschrijving
message string Ja

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Een simulatie uitvoeren (asynchroon; resultaten komen in de datatabellen van het proces)

Endpoint: POST /v1/tenant/{tenantId}/processes/{processId}/simulations/{simulationId}/run

Authenticatie: API-sleutel voor Tenant · write-scope · limiet 5 verzoeken/s (piek 10)

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
simulationId string pad Ja Formaat: uuid

Antwoord (200):

Simulatie gestart

{
	"message": "string"
}
Veld Type Verplicht Beschrijving
message string Ja

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Status van de laatste simulatie-uitvoering ophalen (afgeleid van de uitvoerdatatable)

Endpoint: GET /v1/tenant/{tenantId}/processes/{processId}/simulations/{simulationId}/run/status

Authenticatie: API-sleutel voor Tenant · read-scope

Parameters:

Naam Type Locatie Verplicht Beschrijving
tenantId string pad Ja Formaat: uuid
processId string pad Ja Formaat: uuid
simulationId string pad Ja Formaat: uuid

Antwoord (200):

Status van de uitvoering

{
	"state": "notStarted",
	"startedAt": "2024-03-15T16:30:00Z",
	"completedAt": "2024-03-15T16:30:00Z",
	"step": "string",
	"casesSimulated": 0,
	"targetCases": 0,
	"eventsGenerated": 0,
	"errorMessage": "string",
	"simulationId": "00000000-0000-0000-0000-000000000000"
}
Veld Type Verplicht Beschrijving
state notStarted | running | processing | ready | error Ja Toegestane waarden: notStarted, running, processing, ready, error
startedAt string Nee Formaat: date-time
completedAt string Nee Formaat: date-time
step string Nee
casesSimulated number Nee
targetCases number Nee
eventsGenerated number Nee
errorMessage string Nee
simulationId string Ja Formaat: uuid

Fouten:

  • 400 Ongeldig verzoek: bijvoorbeeld een ongeldige filterexpressie, een proces zonder model, een niet-ondersteund uploadtype of een verplicht veld dat ontbreekt
  • 401 API-sleutel ontbreekt, is ongeldig, uitgeschakeld of verlopen
  • 404 Bron niet gevonden

Verbeter processen. Bouw aan een samenhangende architectuur. Houd de regie.

Krijg meteen toegang, zonder creditcard of wachttijd. Maak van de manier waarop je organisatie werkt heldere, samenhangende procesmodellen.

Breng de procesarchitectuur in kaart, leg verantwoordelijkheden en beheersmaatregelen vast en stem rollen en taken op elk niveau op elkaar af.

Start je gratis proefperiode en bouw een betrouwbare basis om processen te beheren en continu te verbeteren.