Validate Migration Plan

Validates a migration plan statically without executing it. This corresponds to the creation time validation described in the user guide.

Method

POST /migration/validate

Parameters

Request Body

A JSON object with the following properties:

Name Description
sourceProcessDefinitionId The id of the source process definition for the migration.
targetProcessDefinitionId The id of the target process definition for the migration.
instructions A list of migration instructions which map equal activities. Each migration instruction is a JSON object with the following properties:
Name Value Description
sourceActivityIds Array The activity ids from the source process definition being mapped.
targetActivityIds Array The activity ids from the target process definition being mapped.
updateEventTrigger Boolean Configuration flag whether event triggers defined are going to be updated during migration.

Result

A JSON object which contains a list of instruction reports if any errors are detected, other wise it is empty.

Name Value Description
instructionReports Array The list of instruction validation reports. If no validation errors are detected it is an empty list.

The properties of a instruction report are as follows:

Name Value Description
instruction Object A migration instruction JSON object with the following properties:
Name Value Description
sourceActivityIds Array The activity ids from the source process definition being mapped.
targetActivityIds Array The activity ids from the target process definition being mapped.
updateEventTrigger Boolean Configuration flag whether event triggers defined are going to be updated during migration.
failures Array A list of instruction validation report messages.

Response codes

Code Media type Description
200 Request successful. The validation report was returned.
400 application/json In case additional parameters of the request are unexpected, an exception of type InvalidRequestException is returned. See the Introduction for the error response format.

Example

Request

POST /migration/generate

Request Body:

{
  "sourceProcessDefinitionId": "aProcessDefinitionId1",
  "targetProcessDefinitionId": "aProcessDefinitionId2",
  "instructions": [
    {
      "sourceActivityIds": ["aUserTask"],
      "targetActivityIds": ["aUserTask"]
    },
    {
      "sourceActivityIds": ["anEvent"],
      "targetActivityIds": ["anotherEvent"],
      "updateEventTrigger": true
    }
  ]
}

Response

Status 200.

{
  "instructionReports": [
    {
      "instruction": {
        "sourceActivityIds": [
          "aUserTask"
        ],
        "targetActivityIds": [
          "aUserTask"
        ],
        "updateEventTrigger": false
      },
      "failures": [
        "failure1",
        "failure2"
      ]
    },
    {
      "instruction": {
        "sourceActivityIds": [
          "anEvent"
        ],
        "targetActivityIds": [
          "anotherEvent"
        ],
        "updateEventTrigger": true
      },
      "failures": [
        "failure1",
        "failure2"
      ]
    }
  ]
}

On this Page: