List Flow Instances

Search workflow instances that meet the specified conditions.

Prerequisites

The user must be an EnOS user.

Request Format

POST https://{apigw-address}/dataflow-batch-service/v2.0/flowInstances?action=search&userId={}&orgId={}

Request Parameters (URI)

Name

Location (Path/Query)

Required or Not

Data Type

Description

userId

Query

true

String

User ID. How to get userId>>

orgId

Query

true

String

Organization ID which the user belongs to. How to get orgId>>

Request Parameters (Body)

Name

Required or Not

Data Type

Description

type

true

Integer

Scheduling type of the workflow instance (0: Manual; 1: Periodic; 2: Temporary)

expression

true

String

Expression for searching workflow instances

owner

true

String

Owner of workflow instance

fromTriggerTime

true

Long

Query start time (by the scheduling start time of the workflow instance)

toTriggerTime

true

Long

Query end time (by the scheduling start time of the workflow instance)

status

true

String

Status of the workflow instance

pagination

false

Pagination Struct

Paging parameter. See Pagination Struct

Response Parameters

Name

Data Type

Description

data

FlowInstances

List of searched workflow instances and the count. See FlowInstances Struct

FlowInstances Struct

Sample

{
    "flowInsts":[],
    "count":0
}

Parameters

Name

Data Type

Description

flowInsts

List<FlowInstance>

Collection of workflow instances. See FlowInstance Struct

count

Integer

Number of searched workflow instances (number of elements in the FlowInstance struct)

Error Code

Code

Message

Description

62102

illegal sorted by field

The provided sortedBy parameter is invalid. Valid options are:

  • create_time

  • update_time

  • start_time

  • trigger_time

  • end_time

Sample

Request Sample

url: https://{apigw-address}/dataflow-batch-service/v2.0/flowInstances?action=search&userId={}&orgId={}

method: POST

requestBody:
{
    "type": 1,
    "fromTriggerTime": 1573648355000,
    "toTriggerTime": 1573698120000,
    "status": 1,
    "owner": "",
    "expression": "",
    "pagination":{
        "pageNo": 0,
        "pageSize": 10,
        "sorters": [{
            "field": "update_time",
            "order": "ASC"
        }]
    }
}

Return Sample

{
  "status": 0,
  "msg": " Success",
  "data": {
    "flowInsts": [{
                "instanceId": "2809-20190812080700",
                "flowId": 2809,
                "flowName": "21",
                "freq": "0 0 0 * * ? *",
                "cycle": "D",
                "parameters": "[]",
                "doAs": "data_oxxxxx",
                "graph": "{"creator":"xxxx","freq":"0 0 0 * * ? *","alert_mode":3,"owners":"xxxx","cycle":"D","do_as":"data_oxxxxx","flows":[],"alert_to":"","name":"21","inst_id":"2809-20190812080700","id":2809,"relations":[],"parameters":"[]","app_id":"","tasks":[{"task_name":"tass","task_inst_id":"104890-20190812080700","x":0.002,"y":0.002,"task_id":104890,"node_id":"t_104890"}]}",
                "status": 1,
                "statusDesc": "SUCCESS",
                "triggerTime": "2019-08-12 08:07:22",
                "startTime": "2019-08-12 08:07:30",
                "endTime": "2019-08-12 08:07:32",
                "timestamp": "2019-08-12 08:09:48.0",
                "virtual": false,
                "owner": "xxxxx",
                "hasEditPri": true,
                "hasReadPri": true,
                "isCancelled": false
            },
            {
                "instanceId": "2957-20190812075600",
                "flowId": 2957,
                "flowName": "fdd",
                "freq": "0 0 0 * * ? *",
                "cycle": "D",
                "parameters": "[]",
                "doAs": "data_oxxxxxxx",
                "graph": "{"creator":"xxxx","freq":"0 0 0 * * ? *","alert_mode":3,"owners":";xxxx;","cycle":"D","do_as":"data_oxxx","flows":[],"alert_to":"","name":"fdd","inst_id":"2957-20190812075600","id":2957,"relations":[],"parameters":"[]","app_id":"","tasks":[{"task_name":"gg","task_inst_id":"105040-20190812075600","x":0.0068,"y":0.0071,"task_id":105040,"node_id":"t_105040"}]}",
                "status": 1,
                "statusDesc": "SUCCESS",
                "triggerTime": "2019-08-12 07:56:56",
                "startTime": "2019-08-12 07:57:00",
                "endTime": "2019-08-12 07:57:02",
                "timestamp": "2019-08-12 08:00:09.0",
                "virtual": false,
                "owner": "xxxxxxxx",
                "hasEditPri": true,
                "hasReadPri": true,
                "isCancelled": false
            }],
    "count": 2
  }
}

Java SDK Sample

import com.alibaba.fastjson.JSONObject;
import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;

public class Request extends PoseidonRequest {
    public void setQueryParam(String key, Object value){
        QueryParams().put(key, value);
    }
    public void setHeaderParam(String key, String value){
        headerParams().put(key, value);
    }
    public void setBodyParam(Map<String, Object> bodyPara){
        bodyParams().putAll(bodyPara);
    }
    public void setMethod(String method) {
        this.method = method;
    }
    private String method;
    public String baseUri() {
        return "";
    }
    public String method() {
        return method;
    }
}

public void flowInstancesTest(){
        //1. Select Application Registration from the left navigation bar of EnOS Console.
        //2. Open the App Detail page to get the AccessKey and SecretKey of the application.
        String accessKey = "****************";
        String secretKey = "****************";

        //Create a request and save the required parameters in the map of the Query.
        Request request = new Request();
            HashMap<String,Object> bodyMap = new HashMap<>();
            bodyMap.put("type",0);
        bodyMap.put("owner","");
        bodyMap.put("startTriggerTime",1565568000000L);
        bodyMap.put("endTriggerTime",1565654399999L);
        bodyMap.put("status","");
            bodyMap.put("expression","");
        HashMap<String,Object> paginationMap= new HashMap<String, Object>(3);
        paginationMap.put("pageNo",0);
        paginationMap.put("pageSize",10);
        List<HashMap<String,Object>> list = new ArrayList<HashMap<String,Object>>();
        HashMap<String,Object> sorterMap= new HashMap<String, Object>(2);
        sorterMap.put("field","update_time");
        sorterMap.put("order","ASC");
        list.add(sorterMap);
        paginationMap.put("sorters",list );
        bodyMap.put("pagination",paginationMap);
        request.setQueryParam("userId","your_userId");
        request.setQueryParam("orgId","your_orgId");
        request.setBodyParam(bodyMap);
        request.setMethod("POST");

        try {
            JSONObject response = Poseidon.config(PConfig.init().appKey(accessKey).appSecret(secretKey).debug())
                    .url("https://{apigw-address}/dataflow-batch-service/v2.0/flowInstances?action=search")
                    .getResponse(request, JSONObject.class);

            System.out.println(response);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }