# Submit{docsify-ignore-all}

Interface Request invoking Description <br>
HTTP Request Method: POST <br>
Request address: http://127.0.0.1:8080/demo/horizon/workflow/rest/flow/support/action${suffix} <br>
**Post data description:**
```
{
  "accessToken": "",
  "flowId": "flowsupport",
  "workId": "HZ2886865bf17466015bf1871de1004b",
  "trackId": "HZ2886865bf17466015bf1872089004c",
  "subjection": "D_HZ28821856ef63420156ef63429c0000",
  "authorKey": "Author",
  "nodeId": "Node1",
  "title": "",
  "actionData": {
    "operate": "submit",
    "operateFlag": 0,
    "operateClazz": "com.horizon.wf.action.ActionSubmit",
    "flowVars": {
      "field1": "123"
    },
    "nextNodes": [
      {
        "nodeKey": "Line2",
        "selectId": "Line2~Node2",
        "selectName": "New track2(Task2)",
        "isSelect": "true",
        "isDone": "false",
        "nodeGroup": "",
        "isShowTabs": null,
        "timeLimit": "0",
        "timeLimitType": "0",
        "nodeStatus": "4",
        "authors": {
          "SecondAuthor": {
            "authorId": "SecondAuthor",
            "authorName": "Secondary",
            "selectType": "checkbox",
            "isFree": "true",
            "isUser": "false",
            "isDefUser": "false",
            "isSelect": "true",
            "selectAuthor": null,
            "selectAuthorName": null,
            "required": null,
            "initAuthor": null
          },
          "Reader": {
            "authorId": "Reader",
            "authorName": "Reader",
            "selectType": "checkbox",
            "isFree": "true",
            "isUser": "false",
            "isDefUser": "false",
            "isSelect": "true",
            "selectAuthor": null,
            "selectAuthorName": null,
            "required": null,
            "initAuthor": null
          },
          "Author": {
            "authorId": "Author",
            "authorName": "Primary",
            "selectType": "radio",
            "isFree": "true",
            "isUser": "false",
            "isDefUser": "false",
            "isSelect": "false",
            "selectAuthor": "U_admin/D_HZ28821856ef63420156ef63429c0000",
            "selectAuthorName": "Admin(Huizheng Software)",
            "required": null,
            "initAuthor": null
          }
        },
        "nodeId": "Node2",
        "nodeName": "Task2",
        "trackId": null
      }
    ]
  }
}
```
Request parameter description:

| Parameter   | Required | Description                                                                                                                                                                                                                                                                                            |
|-------------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| accessToken | Yes      | Invoking interface credentials, unique user ID                                                                                                                                                                                                                                                         |
| flowId      | No       | Flow id                                                                                                                                                                                                                                                                                                |
| workId      | Yes      | Instance ID                                                                                                                                                                                                                                                                                            |
| trackId     | Yes      | Flow track ID                                                                                                                                                                                                                                                                                          |
| subjection  | Yes      | The organizational ID of the submitter, such as department ID, group ID, position ID, etc. This field is passed in during the submission process (when the submitter belongs to multiple identities and opens as primary, this field must be passed in), with the format D_ Xxxxid G_ Xxxxid P_ Xxxxid |
| authorKey   | No       | Submitter ID                                                                                                                                                                                                                                                                                           |
| nodeId      | No       | Node ID                                                                                                                                                                                                                                                                                                |
| title       | No       | Title                                                                                                                                                                                                                                                                                                  |
| actionData  | Yes      | Process operation JSON data                                                                                                                                                                                                                                                                            |
actionData Parameter:

| Parameter    | Required | Description                                                                                                                                                                                                      |
|--------------|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| operate      | Yes      | 'Submit' operation identification, fixed value:'submit'                                                                                                                                                          |
| operateFlag  | Yes      | Operation flag, fixed value, 0: Normal submission                                                                                                                                                                |
| operateClazz | Yes      | 'Submit' operation class path,fixed value:'com.horizon.wf.action.ActionSubmit'                                                                                                                                   |
| flowVars     | No       | Process variable assignment is used, where 'flowVars' is a map and supports multiple transfers. 'Key' is the variable name, and 'Value' is the variable value                                                    |
| nextNodes    | No       | The next node list to be selected (if the track and operator information have been set, it can be left blank). If there are multiple tracks and no operatorr information has been set, it is required to fill in |
nextNodes parameter description：

| Parameter     | Required | Description                                                                                                                                                                                                                    |
|---------------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| nodeKey       | Yes      | Current node primary key                                                                                                                                                                                                       |
 | selectId      | Yes      | Next node id to be selected                                                                                                                                                                                                    |
 | selectName    | No       | Next node name to be selected                                                                                                                                                                                                  |
 | isSelect      | Yes      | Has the next node been selected?                                                                                                                                                                                               |
| isDone        | No       | Has the process once passed the next node before?                                                                                                                                                                              | 
| nodeGroup     | No       | If there are no multiple branches in the current instance, this value is empty. If there are multiple branches, this value returns the node ID of the previous node to bind the grouping information                           |
 | isShowTabs    | No       | Whether to display operator tab page of the process node                                                                                                                                                                       |
 | timeLimit     | No       | Node processing deadline                                                                                                                                                                                                       |
 | timeLimitType | No       | Processing time limit type, limit value. 0: Calendar day;1: Working day                                                                                                                                                        |
 | nodeStatus    | No       | Node status, limited value, 0. Success; 1. Select operator; 2. Select node; 3. Operator not found;4. Next node not found. Can be ignored during RESTful submission                                                             |
| authors       | Yes      | The key of the next node's operator object is Primary,Secondary, Reader,and the value is Primary/Secondary/Reader object parameter. When there is no Secondary/reader, the Secondary/Reader object parameter can be left unset |
| nodeId        | Yes      | Current node ID                                                                                                                                                                                                                |
| nodeName      | No       | Current node name                                                                                                                                                                                                              |
Author/SecondAuthor/Reader object parameter description in Authors:

| Parameter        | Required | Description                                                                                  |
|------------------|----------|----------------------------------------------------------------------------------------------|
| authorId         | No       | ID of operator type , limit value. Author; SecondAuthor; Reader                              |
| authorName       | No       | Name of operator type , limit value. Primary;Secondary;Reader                                |
| selectType       | No       | Operator selection type, limited value. Radio: Single selection;Checkbox: Multiple selection |
| isFree           | No       | Whether to select freely                                                                     |
| isUser           | No       | Is it allowed to only select user?                                                           |
| isDefUser        | No       | Select from the organization library of process node attributes                              |
| isSelect         | No       | Is it allowed to select the operator                                                         |
| selectAuthor     | Yes      | The selected operator ID for the node                                                        |
| selectAuthorName | Yes      | The selected  operator name  for the node                                                    |
| required         | No       | Required identifier for the operator, required when it is 'True'                             |
| initAuthor       | No       | Node initialization operator ID                                                              |
**Example of returned results:**
```
{
  "operate": "submit",
  "operateClazz": "com.horizon.wf.action.ActionSubmit",
  "operateText": "Submit",
  "operateFlag": "0",
  "operateMsg": "Submitted successfully",
  "reOpen": "false",
  "workId": "HZ2886865c0ec540015c0fb3103700da",
  "trackId": "HZ2886865c0ec540015c0fb3103800db",
  "nodeId": "Node1",
  "nodeName": "Task1",
  "subjection": "",
  "authorKey": "Author",
  "operateStatus": "success",
  "alert": "",
  "messageType": "",
  "nextNodes": [
    {
      "nodeKey": "Line2",
      "selectId": "Line2~Node2",
      "selectName": "Mew track2(Task2)",
      "isSelect": "true",
      "isDone": "false",
      "nodeGroup": "",
      "isShowTabs": "",
      "timeLimit": "0",
      "timeLimitType": "0",
      "nodeStatus": "4",
      "authors": {
        "SecondAuthor": {
          "authorId": "SecondAuthor",
          "authorName": "Secondary",
          "selectType": "checkbox",
          "isFree": "true",
          "isUser": "false",
          "isDefUser": "false",
          "isSelect": "true",
          "selectAuthor": "",
          "selectAuthorName": "",
          "required": "",
          "initAuthor": ""
        },
        "Reader": {
          "authorId": "Reader",
          "authorName": "Reader",
          "selectType": "checkbox",
          "isFree": "true",
          "isUser": "false",
          "isDefUser": "false",
          "isSelect": "true",
          "selectAuthor": "",
          "selectAuthorName": "",
          "required": "",
          "initAuthor": ""
        },
        "Author": {
          "authorId": "Author",
          "authorName": "Primary",
          "selectType": "radio",
          "isFree": "true",
          "isUser": "false",
          "isDefUser": "false",
          "isSelect": "false",
          "selectAuthor": "U_admin/D_HZ28821856ef63420156ef63429c0000",
          "selectAuthorName": "Admin(Huizheng Software)",
          "required": "",
          "initAuthor": ""
        }
      },
      "nodeId": "Node2",
      "nodeName": "Task2",
      "trackId": ""
    }
  ],
  "subFlows": ""
}
```
**Result parameter description:**

| Parameter     | Type   | Description                                                                |
|---------------|--------|----------------------------------------------------------------------------|
| operate       | String | 'Submit' operation identification                                          |
| operateClazz  | String | 'Submit' operation class path                                              |
| operateText   | String | Operation display name                                                     |
| operateFlag   | String | Operation flag -1: Display closed, 0: Normal submission, 1: Pre submission |
| operateMsg    | String | Operation return information                                               |
| reOpen        | String | Whether to reopen, can be ignored                                          |
| workId        | String | Instance id                                                                |
| trackId       | String | Flow track id                                                              |
| nodeId        | String | Current node ID                                                            |
| nodeName      | String | Current node name                                                          |
| subjection    | String | Submitter ID                                                               |
| authorKey     | String | Operator type ID                                                           |
| operateStatus | String | Returned operation results                                                 |
| alert         | String | Whether to pop up a successful operation message, can be ignored           |
| messageType   | String | Message sending type                                                       |
| nextNodes     | List   | List of next nodes to be selected                                          |
| subFlows      | List   | List of sub processes                                                      |
*nextNodes parameter description:*

| Parameter     | Type   | Description                                                                                                                                                                                          |
|---------------|--------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| nodeKey       | String | Node primary key                                                                                                                                                                                     |
| selectId      | String | Next node id to be selected                                                                                                                                                                          |
| selectName    | String | Next node name to be selected                                                                                                                                                                        |
| isSelect      | String | Has the next node been selected?                                                                                                                                                                     |
| isDone        | String | Has the process once passed the next node before?                                                                                                                                                    | 
| nodeGroup     | String | If there are no multiple branches in the current instance, this value is empty. If there are multiple branches, this value returns the node ID of the previous node to bind the grouping information |
| isShowTabs    | String | Whether to display operator tab page of the process node                                                                                                                                             |
| timeLimit     | String | Node processing deadline                                                                                                                                                                             |
| timeLimitType | String | Processing time limit type, limit value. 0: Calendar day;1: Working day                                                                                                                              |
| nodeStatus    | String | Node status, limited value, 0. Success; 1. Select operator; 2. Select node; 3. Operator not found;4. Next node not found. Can be ignored during RESTful submission                                   |
| authors       | Map    | The key of the next node's operator object is Primary,Secondary, Reader,and the value is Primary/Secondary/Reader object parameter                                                                   |
*subFlows  parameter description *

| Parameter   | Type   | Description                                                                                  |
|-------------|--------|----------------------------------------------------------------------------------------------|
| subFlowId   | String | ID of sub process                                                                            |
 | subFlowName | String | Name of sub process                                                                          |
 | isStarted   | String | Is started?                                                                                  |
 | subWorks    | Map    | List of sub process instances                                                                |
 | authors     | Obejct | Process operator                                                                             |
 | isSelect    | String | Is selected?                                                                                 |
 | selectType  | String | Operator selection type, limited value. Radio: Single selection;Checkbox: Multiple selection |
*Author/SecondAuthor/Reader parameter description in Authors:*

| Parameter        | Type   | Description                                                                                  |
|------------------|--------|----------------------------------------------------------------------------------------------|
| authorId         | String | ID of operator type , limit value. Author; SecondAuthor; Reader                              |
| authorName       | String | Name of operator type , limit value. Primary;Secondary;Reader                                |
| selectType       | String | Operator selection type, limited value. Radio: Single selection;Checkbox: Multiple selection |
| isFree           | String | Whether to select freely                                                                     |
| isUser           | String | Is it allowed to only select user?                                                           |
| isDefUser        | String | Select from the organization library of process node attributes                              |
| isSelect         | String | Is it allowed to select the operator                                                         |
| selectAuthor     | String | The selected operator ID for the node                                                        |
| selectAuthorName | String | The selected operator name for the node                                                      |
| required         | String | Required identifier for the operator                                                         |
| initAuthor       | Map    | Node initialization operator ID                                                              |
