# Create instance{docsify-ignore-all}
> Create a process instance. The instance will not be saved to the database, but will only reside in memory. It will only be saved to the database when the instance is saved or submitted at the first node of the process.

Interface Request Invoking Description <br>
HTTP Request Method: POST <br>
Request Address: http://127.0.0.1:8080/demo/horizon/workflow/rest/flow/support/open${suffix} <br>
**Post data description:**
```
{
  "accessToken": "",
  "flowId": "test",
  "title": "Process test"
}
```
Request Parameter Description:

| Parameter   | Required | Description                                    |
|-------------|----------|------------------------------------------------|
| accessToken | Yes      | Invoking interface credentials, unique user ID |
| flowId      | Yes      | Flow id                                        |
| title       | No       | Title  of  instance                            |
**Example of returned results:**
```
{
  "authorKey": "Author",
  "flowButtons": [
    {
      "buttonClass": "com.horizon.wf.action.ActionStop",
      "buttonFun": "",
      "buttonId": "stop",
      "buttonName": "Terminate",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionSubmitForFree",
      "buttonFun": "",
      "buttonId": "freesubmit",
      "buttonName": "Free Submit",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionReject",
      "buttonFun": "",
      "buttonId": "reject",
      "buttonName": "Return",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionSubmit",
      "buttonFun": "",
      "buttonId": "submit",
      "buttonName": "Submit",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionSave",
      "buttonFun": "",
      "buttonId": "save",
      "buttonName": "Save",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionHuiQian",
      "buttonFun": "",
      "buttonId": "huiqian",
      "buttonName": "Initiate Multi-Operator",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionGoto",
      "buttonFun": "",
      "buttonId": "goto",
      "buttonName": "Jump",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionAddReader",
      "buttonFun": "",
      "buttonId": "addreader",
      "buttonName": "Send to Read",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionPause",
      "buttonFun": "",
      "buttonId": "pause",
      "buttonName": "Suspend",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionAddSecondAuthor",
      "buttonFun": "",
      "buttonId": "addSecondauthor",
      "buttonName": "Add Secondary Operator",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionRejectByJump",
      "buttonFun": "",
      "buttonId": "jumpreject",
      "buttonName": "Return to Any Node",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionStartMultiSubFlow",
      "buttonFun": "",
      "buttonId": "subflow",
      "buttonName": "Start sub process",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionReMsg",
      "buttonFun": "",
      "buttonId": "urge",
      "buttonName": "Urge",
      "icon": ""
    },
    {
      "buttonClass": "com.horizon.wf.action.ActionCancel",
      "buttonFun": "",
      "buttonId": "cancel",
      "buttonName": "Withdraw",
      "icon": ""
    }
  ],
  "flowForms": [
    {
      "formAuthId": "alleditable",
      "formBody": "",
      "formButton": "",
      "formDataId": "FlowTrack",
      "formDatas": "",
      "formFieldAuth": "",
      "formFields": "",
      "formId": "FlowTrack",
      "formName": "Process tracking",
      "formType": "",
      "isDef": "true",
      "isNewData": "False"
    },
    {
      "formAuthId": "HZ28858f8137db82018137db82aa0000",
      "formBody": "",
      "formButton": "",
      "formDataId": "HZ28858f8137db82018137ebd774003d",
      "formDatas": "",
      "formFieldAuth": {
        "authName": "test_auth",
        "checkField": [
          "HZ28858f80b64b190180b64e3f8f0028_P2"
        ],
        "editField": [
          "HZ28858f80b64b190180b64e3f8f0028_P2",
          "HZ28858f80b64b190180b64e3f8f0028_NAME"
        ],
        "formId": "HZ28858f80b64b190180b64e3f8f0028",
        "hiddenField": [],
        "readField": [
          "HZ28858f80b64b190180b64e3f8f0028_P1"
        ]
      },
      "formFields": "",
      "formId": "HZ28858f80b64b190180b64e3f8f0028",
      "formName": "Test Form",
      "formType": "CUSTOM",
      "isDef": "",
      "isNewData": "true"
    }
  ],
  "flowId": "test",
  "flowMsg": "Submitted successfully",
  "flowName": "New flow",
  "flowNode": {
    "memo": "",
    "nodeId": "Node1",
    "nodeName": "Task1",
    "nodeVars": {
      "testA": "10",
      "testB": "hello"
    },
    "trackId": "HZ28858f8137db82018137ebd76b0033"
  },
  "flowStatus": "110",
  "flowStatusName": "Normal",
  "flowUser": {
    "author": "Author;Creator",
    "authorName": "Operator;Created",
    "deptId": "HZ28821856ef63420156ef63429c0000",
    "deptName": "Huizheng Software",
    "transactor": "admin",
    "transactorName": "Admin",
    "userId": "admin",
    "userName": "Admin"
  },
  "flowVars": {
    "varA": "10"
  },
  "hasForm": "true",
  "openType": "true",
  "selectNodes": "",
  "subjectionId": "",
  "workId": "HZ28858f8137db82018137ebd76b0032"
}
```
**Result parameter description:**

| Parameter      | Type   | Description                                                                                                                                                                        |
|----------------|--------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| authorKey      | String | Identity of the current operator                                                                                                                                                   |
| flowButtons    | List   | Process operation button information, details can be found in the 'FlowButtons' parameter description                                                                              |
| flowForms      | List   | Process form information, details can be found in the 'FlowForms' parameter description                                                                                            |
| flowId         | String | Flow ID                                                                                                                                                                            |
| flowMsg        | String | Process return information                                                                                                                                                         |
| flowName       | String | Flow name                                                                                                                                                                          |
| flowNode       | Object | Current node information, details can be found in the 'FlowNode' parameter description                                                                                             |
| flowUser       | Object | The current user information for process execution, details can be found in the 'FlowUser' parameter description                                                                   |
| flowStatus     | String | Process status;100: Draft; 110: Normal;120: Multi-Operator;130: Return;140: Suspend;150: Withdraw;160: Sub process;170: End;180: Terminate;190: Take back.                         |
| flowStatusName | String | Process Status Display Name                                                                                                                                                        |
| flowVars       | Map    | Process variable, where key is the variable name and value is the variable value                                                                                                   |
| hasForm        | String | Does the process include business forms                                                                                                                                            |
| openType       | String | Process Open Status                                                                                                                                                                |
| selectNodes    | List   | In the case of multi branch processes, users may have processing operations on multiple nodes in multiple branches, and this user needs to select a node when handling the process |
| workId         | String | Instance ID                                                                                                                                                                        |
| subjectionId   | String | Scope of the operator                                                                                                                                                              |
*flowButtons  Parameter Description：*

| Parameter   | Type   | Description                           |
|-------------|--------|---------------------------------------|
| buttonClass | String | Operation button implementation class |
| buttonFun   | String | Button event                          |
| buttonId    | String | Button id                             |
| buttonName  | String | Button name                           |
| icon        | String | Button Style                          |
*flowForms Parameter Description:*

| Parameter     | Type   | Description                                          |
|---------------|--------|------------------------------------------------------|
| formAuthId    | String | Field permission ID                                  |
| formBody      | String | Form content                                         |
| formButton    | List   | Form button                                          |
| formDataId    | String | Form data ID                                         |
| formDatas     | Object | Form data (extended fields, temporarily unavailable) |
| formFieldAuth | Object | Form field permission information                    |
| formFields    | Object | Form data (extended fields, backup fields)           |
| formId        | String | Form ID                                              |
| formName      | String | Form name                                            |
| formType      | String | Form type:External form, Customized form             |
| isDef         | String | Is it the default form?                              |
| isNewData     | String | Is it a new form data?                               |
*flowNode Parameter Description：*

| Parameter | Type   | Description                                                                                                                      |
|-----------|--------|----------------------------------------------------------------------------------------------------------------------------------|
| memo      | String | Node description information                                                                                                     |
| nodeId    | String | Node  ID                                                                                                                         |
| nodeName  | String | Node name                                                                                                                        |
| nodeVars  | Map    | The current node parameter, where 'key' is the variable name and value is the variable value, is only valid for the current node |
| trackId   | String | Flow track ID                                                                                                                    |
*flowUser Parameter Description：*

| Parameter      | Type   | Description                                  |
|----------------|--------|----------------------------------------------|
| author         | String | User ID: Operator/Assistant/Creator/Reader   |
| authorName     | String | User name: Operator/Assistant/Creator/Reader |
| deptId         | String | Department ID                                |
| deptName       | String | Department Name                              |
| transactor     | String | Current processing user ID                   |
| transactorName | String | Current processing user name                 |
| userId         | String | User ID                                      |
| userName       | String | User Name                                    |
*formFieldAuth Parameter Description:*

| Parameter   | Type   | Description                                                                                                       |
|-------------|--------|-------------------------------------------------------------------------------------------------------------------|
| authName    | String | Permission Name                                                                                                   |
| formId      | String | Form  ID                                                                                                          |
| editField   | List   | The permission name field can be edited, and each item is a concatenation of form ID and associated table fields. |
| checkField  | List   | Required fields, each item is a concatenation of form ID and associated table fields.                             |
| hiddenField | List   | Hidden fields, each item is a concatenation of form ID and associated table fields.                               |
| readField   | List   | Read only fields, each item is a concatenation of form ID and associated table fields.                            |
