...
URL:
Code Block | ||
---|---|---|
| ||
GetGET httphttps://{wf-designer-ip}:{port}/workflow-modeler?operationID={operationID}&uuid={uuid}&id={id}&displayMode={view/modify/create} |
Request:
Query Parameters:
The following attribute data transfers using Query Parameters
Name | Data Type | Required | Description |
operationID | String |
Y | The new generated ID |
of the |
operation |
uuid |
String | Y | Versioned identifier of the resource model (this uuid changed for every major version of the resource) Ex.: b8ff69ca-786d-479e-9f9c-217a90ee0ebc | |
id | String | Y | Unique UUID of the workflow |
displayMode | Enum | Y | The Display Mode for the workflow, Valid value as follow: view - can view only, can't modify. - OOS modify - can |
modify workflow - OOS create - can create the workflow |
Response:
Navigate to the (ZTE) WF Designer UI, load the workflow content with the given id from Catalog.
...
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
id | String | Yes | Unique UUID of the workflow |
Response:
Return the BPMN file content of the workflow . For details to see data model 'WorkflowInfo'.in the format of string.
Save Workflow Content with artifactUUID(WF ID) (to Catalog)
Save workflow content to the Catalog.
URL:
Code Block | ||
---|---|---|
| ||
PUTPOST http://{sdc-ip}:{port}/api/sdc/v1/workflow-modeler/models/{id} |
Request:
Pah Parameters:
/catalog/resource/{uuid}/interfaces/{operationID}/artifacts/{artifactUUID} |
Path Parameters:
The following attribute data will be transfer using path Parameters
Name | Data Type | Required | Description |
uuid |
String |
Body Parameters:
The workflow content, for details to see data model 'WorkflowInfo'.
Response:
Y | Versioned identifier of the resource model (this uuid is changed for every major version of the resource) Ex.: b8ff69ca-786d-479e-9f9c-217a90ee0ebc | ||
operationID | String | Y | identifier of the operation Ex.: b8ff69ca-786d-479e-9f9c-217a90ee0ebc |
artifactUUID
| String | Y |
Unique UUID of the workflow |
Get Extend BPMN Activites (from Catalog)
Get the detail informtion of the extend BPMN activities such as 'Stop Traffic', 'Stop VNF', 'Create VNF', etc.
These informations will describe the details of the activities which can be deployed to the workflow engine finally. At the same time the activity's detail information will be used to generate the BPMN artifacts.
URL:
Code Block | ||
---|---|---|
| ||
GET http://{sdc-ip}:{port}/api/sdc/v1/workflow-modeler/ext-activities |
Request:
Path Parameters:
...
(WF ID) |
Request (POST):
Request Headers
Header Name | Mandatory? | Description |
Content-Type | Y | Valid value is : application/json |
Content-MD5
| Y | The value for this header must be the MD5 checksum over the whole json body |
USERID | Y | The user ID of the SDC Designer. This user must also have a Designer role in SDC |
X-ECOMP-RequestID | N | According to the general ECOMP agreement the "X-ECOMP-RequestID" header with the transaction UUID should be published by ECOMP component calling an exposed by other ECOMP component API in order to make possible the transaction traceability across ECOMP. If it is not sent it will be automatically generated by SDC on request receipt. |
X-ECOMP-InstanceID | Y | For auditing purpose each component calling the SDC API should identify itself by sending its identity ( e.g. Instar name ...) in "X-ECOMP-InstanceID" header. If this header with non-null value is not supplied the HTTP Request will be rejected with '400 Bad Syntax’ response code. Ex.: “workflow” |
Accept | N | Determines the format of the body of the response. Valid values are: “application/octet-stream” |
|
|
|
Request Body
The body of the save request must be in a json format that specifies the metadata.
The workflow contents or artifacts. See WorkflowInfo
WorkflowInfo
...
id
...
Uniqued id of the extend bpmn activity.
Response:
Return the detail information of the extend activities, that is ExtendActivity[]. For details to see data model 'ExtendActivity'.
Get Category Information of Extend BPMN Activities (from Catalog)
Get the category information of extend Activities. If the extend activities have category informations, the WF Designer will organize and display extend activities in categories.
URL:
Code Block | ||
---|---|---|
| ||
GET http://{sdc-ip}:{port}/api/sdc/v1/workflow-modeler/ext-activity-categories |
Request:
...
Name | Data Type | Required | Description |
the scene of the workflow designer. Valid value as follow:
vnf - open a VNF's workflow
service - open a Service's workflow
Response:
...
artifactName | String | Y | Name of the workflow |
description | String | Y | description of the workflow |
artifactType | String | Y | ‘PLAN’ |
payloadData | String | Y | The workflow artifact or assets file. The data of the artifact after Base64 encoding |
Info | ||
---|---|---|
| ||
The resulting string is then encoded using the RFC2045-MIME variant of Base64 |
Response:
Response Headers
Header Name | Mandatory? | Description |
Content-Type | Y | Determines the format of the response body. Valid value is: “application/json” |
Content-Length | Y | Length of the response body |
Response Body
Response body is sent as JSON object (Content-Type: application/json).
Response Example
HTTP/1.1 200 OK Content-MD5: NWQwZmZhZjFjNDc3NDFlZjkzMzBhZjcwN2YzODhjNDc= Content-Type: application/json X-ECOMP-RequestID: 3d3da579-455d-4dab-af4a-dc4ea60ff6ea Content-Length: 893 Server: Jetty(9.3.6.v20151106) { "Response code":"500", "Exception Code":"POL5000", "Reason":" The POST request failed either due to internal SDC problem." } |
---|
Http Response Code
Response code | Exception Code | Reason /Description |
200 | N/A | component is authenticated and list of Catalog Assets Metadata is saved. |
400 | POL5001 | Missing “ID” or “UUID” from HTTP header |
404 | SVC4063 | Error: Requested resource was not found. |
405 | POL4050 | Method Not Allowed: Invalid HTTP method type used |
500 | POL5000 | The POST request failed either due to internal SDC problem. |
Get Extend BPMN Activites (from Catalog)
Get the detail information of the extend BPMN activities such as 'Stop Traffic', 'Stop VNF', 'Create VNF', etc.
These information will describe the details of the activities which can be deployed to the workflow engine finally. At the same time the activity's detail information will be used to generate the BPMN artifacts.
URL:
Code Block | ||
---|---|---|
| ||
GET http://{sdc-ip}:{port}/api/sdc/v1/workflow-modeler/ext-activities |
Request:
Path Parameters:
...
Category Informations of the extend activities.
key – extend activity id
value - Category Information of the extend activity
...
Category Data of the group.
key - Category id
value - Category Data
CategoryInfo:
...
Category id of the extend activity.
CategoryData:
...
Category name.
...
sample:
Code Block | ||||
---|---|---|---|---|
| ||||
{
"nodes":{
"extend-activity-id-stop-traffic":{
"category":"aaa"
},
"extend-activity-id-stop-vnf":{
"category":"bbb"
}
},
"categoryData":{
"aaa":{
"name":"aaa",
"collapse":false
},
"bbb":{
"name":"bbb",
"collapse":true
}
}
} |
Data Model
...
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
id | String | Yes |
Unique UUID of the workflow
String
String
String
the scene of the workflow designer. Valid value as follow:
vnf - open a VNF's workflow
service - open a Service's workflow
String
Sample:
...
language | xml |
---|---|
title | A New Workflow (Empty): |
...
Uniqued id of the extend bpmn activity. |
Response:
Return the detail information of the extend activities, that is ExtendActivity[]. For details to see data model 'ExtendActivity'.
Get Category Information of Extend BPMN Activities (from Catalog)
Get the category information of extend Activities. If the extend activities have category informations, the WF Designer will organize and display extend activities in categories.
URL:
Code Block | ||
---|---|---|
| ||
GET http://{sdc-ip}:{port}/api/sdc/v1/workflow-modeler/ext-activity-categories |
Request:
Query Parameters:
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
scene | Enum | Yes | the scene of the workflow designer. Valid value as follow: vnf - open a VNF's workflow service - open a Service's workflow | different scene may has different activities extend. |
Response:
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
nodes | Map<String, CategoryInfo> | Yes | Category Informations of the extend activities. key – extend activity id value - Category Information of the extend activity | |
categoryData | Map<String, CategoryData> | Yes | Category Data of the group. key - Category id value - Category Data |
CategoryInfo:
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
category | String | No | Category id of the extend activity. |
CategoryData:
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
name | String | Yes | Category name. | |
collapse | Boolean | No | Do you collapse this category by default? |
sample:
Code Block | ||||
---|---|---|---|---|
| ||||
{
"nodes":{
"extend-activity-id-stop-traffic":{
"category":"aaa"
},
"extend-activity-id-stop-vnf":{
"category":"bbb"
}
},
"categoryData":{
"aaa":{
"name":"aaa",
"collapse":false
},
"bbb":{
"name":"bbb",
"collapse":true
}
}
} |
Data Model
ExtendActivity
Detail informtion of the extend activity.
...
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
class | String | Yes | The implement class of the bpmn service task | |
inputs | Map<String, Input> | No | The input parameter definitions of the task. key - Input parameter name value - Input parameter definition | These parameters will dispaly on UI for designer to fullfill. |
Sample:
Code Block | ||||
---|---|---|---|---|
| ||||
[ { "id":"extend-activity-id-stop-traffic", "name":"Stop Traffic", "description":"Stop Traffic", "type":"serviceTask", "icon":{ "name":"stop-traffic", "width":56, "height":56 }, "content":{ "class":"org.onap.activity.ext.StopTrafficServiceTask", "inputs":{ "param1":{ "type":"string", "default":"value1", "required":true, "constraints":[ ], "displayName":"aaa", "show":true }, "param2":{ "type":"string", "default":"value2", "required":false, "constraints":[ ] } } } } ] |
...
Name | Data Type | Required | Description | Comment |
---|---|---|---|---|
scriptFormat | String | Yes | The script format, For example: JavaScript, groovy | |
script | String | Yes | The script content. |
Sample:
Code Block | ||||
---|---|---|---|---|
| ||||
[ { "id":"extend-activity-id-stop-vnf", "name":"Stop VNF", "description":"Stop VNF", "type":"scriptTask", "icon":{ "name":"stop-vnf", "width":56, "height":56 }, "content":{ "scriptFormat":"groovy", "script":"test groovy script" } } ] |
...