curl --request POST \
--url http://{host}:{port}/{contextPath}/migration/generate \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"sourceProcessDefinitionId": "aProcessDefinitionId1",
"targetProcessDefinitionId": "aProcessDefinitionId2",
"updateEventTriggers": true,
"variables": {
"foo": {
"type": "Object",
"value": "[5,6]",
"valueInfo": {
"objectTypeName": "java.util.ArrayList",
"serializationDataFormat": "application/json"
}
}
}
}
'import requests
url = "http://{host}:{port}/{contextPath}/migration/generate"
payload = {
"sourceProcessDefinitionId": "aProcessDefinitionId1",
"targetProcessDefinitionId": "aProcessDefinitionId2",
"updateEventTriggers": True,
"variables": { "foo": {
"type": "Object",
"value": "[5,6]",
"valueInfo": {
"objectTypeName": "java.util.ArrayList",
"serializationDataFormat": "application/json"
}
} }
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
sourceProcessDefinitionId: 'aProcessDefinitionId1',
targetProcessDefinitionId: 'aProcessDefinitionId2',
updateEventTriggers: true,
variables: {
foo: {
type: 'Object',
value: '[5,6]',
valueInfo: {
objectTypeName: 'java.util.ArrayList',
serializationDataFormat: 'application/json'
}
}
}
})
};
fetch('http://{host}:{port}/{contextPath}/migration/generate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "62437",
CURLOPT_URL => "http://{host}:{port}/{contextPath}/migration/generate",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'sourceProcessDefinitionId' => 'aProcessDefinitionId1',
'targetProcessDefinitionId' => 'aProcessDefinitionId2',
'updateEventTriggers' => true,
'variables' => [
'foo' => [
'type' => 'Object',
'value' => '[5,6]',
'valueInfo' => [
'objectTypeName' => 'java.util.ArrayList',
'serializationDataFormat' => 'application/json'
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://{host}:{port}/{contextPath}/migration/generate"
payload := strings.NewReader("{\n \"sourceProcessDefinitionId\": \"aProcessDefinitionId1\",\n \"targetProcessDefinitionId\": \"aProcessDefinitionId2\",\n \"updateEventTriggers\": true,\n \"variables\": {\n \"foo\": {\n \"type\": \"Object\",\n \"value\": \"[5,6]\",\n \"valueInfo\": {\n \"objectTypeName\": \"java.util.ArrayList\",\n \"serializationDataFormat\": \"application/json\"\n }\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://{host}:{port}/{contextPath}/migration/generate")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"sourceProcessDefinitionId\": \"aProcessDefinitionId1\",\n \"targetProcessDefinitionId\": \"aProcessDefinitionId2\",\n \"updateEventTriggers\": true,\n \"variables\": {\n \"foo\": {\n \"type\": \"Object\",\n \"value\": \"[5,6]\",\n \"valueInfo\": {\n \"objectTypeName\": \"java.util.ArrayList\",\n \"serializationDataFormat\": \"application/json\"\n }\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://{host}:{port}/{contextPath}/migration/generate")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sourceProcessDefinitionId\": \"aProcessDefinitionId1\",\n \"targetProcessDefinitionId\": \"aProcessDefinitionId2\",\n \"updateEventTriggers\": true,\n \"variables\": {\n \"foo\": {\n \"type\": \"Object\",\n \"value\": \"[5,6]\",\n \"valueInfo\": {\n \"objectTypeName\": \"java.util.ArrayList\",\n \"serializationDataFormat\": \"application/json\"\n }\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"sourceProcessDefinitionId": "aProcessDefinitionId1",
"targetProcessDefinitionId": "aProcessDefinitionId2",
"instructions": [
{
"sourceActivityIds": [
"aUserTask"
],
"targetActivityIds": [
"aUserTask"
],
"updateEventTrigger": false
},
{
"sourceActivityIds": [
"anEvent"
],
"targetActivityIds": [
"anotherEvent"
],
"updateEventTrigger": true
}
],
"variables": {
"foo": {
"type": "Object",
"value": "[5,6]",
"valueInfo": {
"objectTypeName": "java.util.ArrayList",
"serializationDataFormat": "application/json"
}
}
}
}{
"type": "<string>",
"message": "<string>",
"code": 123
}生成迁移计划
Generates a migration plan for two process definitions. The generated migration plan contains migration instructions which map equal activities between the two process definitions.
curl --request POST \
--url http://{host}:{port}/{contextPath}/migration/generate \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"sourceProcessDefinitionId": "aProcessDefinitionId1",
"targetProcessDefinitionId": "aProcessDefinitionId2",
"updateEventTriggers": true,
"variables": {
"foo": {
"type": "Object",
"value": "[5,6]",
"valueInfo": {
"objectTypeName": "java.util.ArrayList",
"serializationDataFormat": "application/json"
}
}
}
}
'import requests
url = "http://{host}:{port}/{contextPath}/migration/generate"
payload = {
"sourceProcessDefinitionId": "aProcessDefinitionId1",
"targetProcessDefinitionId": "aProcessDefinitionId2",
"updateEventTriggers": True,
"variables": { "foo": {
"type": "Object",
"value": "[5,6]",
"valueInfo": {
"objectTypeName": "java.util.ArrayList",
"serializationDataFormat": "application/json"
}
} }
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
sourceProcessDefinitionId: 'aProcessDefinitionId1',
targetProcessDefinitionId: 'aProcessDefinitionId2',
updateEventTriggers: true,
variables: {
foo: {
type: 'Object',
value: '[5,6]',
valueInfo: {
objectTypeName: 'java.util.ArrayList',
serializationDataFormat: 'application/json'
}
}
}
})
};
fetch('http://{host}:{port}/{contextPath}/migration/generate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "62437",
CURLOPT_URL => "http://{host}:{port}/{contextPath}/migration/generate",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'sourceProcessDefinitionId' => 'aProcessDefinitionId1',
'targetProcessDefinitionId' => 'aProcessDefinitionId2',
'updateEventTriggers' => true,
'variables' => [
'foo' => [
'type' => 'Object',
'value' => '[5,6]',
'valueInfo' => [
'objectTypeName' => 'java.util.ArrayList',
'serializationDataFormat' => 'application/json'
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "http://{host}:{port}/{contextPath}/migration/generate"
payload := strings.NewReader("{\n \"sourceProcessDefinitionId\": \"aProcessDefinitionId1\",\n \"targetProcessDefinitionId\": \"aProcessDefinitionId2\",\n \"updateEventTriggers\": true,\n \"variables\": {\n \"foo\": {\n \"type\": \"Object\",\n \"value\": \"[5,6]\",\n \"valueInfo\": {\n \"objectTypeName\": \"java.util.ArrayList\",\n \"serializationDataFormat\": \"application/json\"\n }\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("http://{host}:{port}/{contextPath}/migration/generate")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"sourceProcessDefinitionId\": \"aProcessDefinitionId1\",\n \"targetProcessDefinitionId\": \"aProcessDefinitionId2\",\n \"updateEventTriggers\": true,\n \"variables\": {\n \"foo\": {\n \"type\": \"Object\",\n \"value\": \"[5,6]\",\n \"valueInfo\": {\n \"objectTypeName\": \"java.util.ArrayList\",\n \"serializationDataFormat\": \"application/json\"\n }\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://{host}:{port}/{contextPath}/migration/generate")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sourceProcessDefinitionId\": \"aProcessDefinitionId1\",\n \"targetProcessDefinitionId\": \"aProcessDefinitionId2\",\n \"updateEventTriggers\": true,\n \"variables\": {\n \"foo\": {\n \"type\": \"Object\",\n \"value\": \"[5,6]\",\n \"valueInfo\": {\n \"objectTypeName\": \"java.util.ArrayList\",\n \"serializationDataFormat\": \"application/json\"\n }\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"sourceProcessDefinitionId": "aProcessDefinitionId1",
"targetProcessDefinitionId": "aProcessDefinitionId2",
"instructions": [
{
"sourceActivityIds": [
"aUserTask"
],
"targetActivityIds": [
"aUserTask"
],
"updateEventTrigger": false
},
{
"sourceActivityIds": [
"anEvent"
],
"targetActivityIds": [
"anotherEvent"
],
"updateEventTrigger": true
}
],
"variables": {
"foo": {
"type": "Object",
"value": "[5,6]",
"valueInfo": {
"objectTypeName": "java.util.ArrayList",
"serializationDataFormat": "application/json"
}
}
}
}{
"type": "<string>",
"message": "<string>",
"code": 123
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
The id of the source process definition for the migration.
The id of the target process definition for the migration.
A boolean flag indicating whether instructions between events should be configured to update the event triggers.
A map of variables which will be set into the process instances' scope. Each key is a variable name and each value a JSON variable value object.
Show child attributes
Show child attributes
Response
Request successful.
The id of the source process definition for the migration.
The id of the target process definition for the migration.
A list of migration instructions which map equal activities. Each migration instruction is a JSON object with the following properties:
Show child attributes
Show child attributes
A map of variables which will be set into the process instances' scope. Each key is a variable name and each value a JSON variable value object.
Show child attributes
Show child attributes