Skip to main content
POST
/
flow
Create flow
curl --request POST \
  --url https://apiweb.mile.app/api/v3/flow \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Delivery",
  "pages": [
    {
      "id": "page0",
      "enabled": true,
      "components": [
        {
          "component": "input",
          "id": "title",
          "inputType": "string",
          "default": null,
          "title": "Title",
          "isRequired": true,
          "visible": true,
          "showAs": "title"
        },
        {
          "component": "input",
          "id": "content",
          "inputType": "string",
          "default": null,
          "title": "Content",
          "isRequired": true,
          "visible": true,
          "showAs": "content"
        },
        {
          "component": "input",
          "id": "receiverName",
          "inputType": "string",
          "default": "Admin Hub",
          "title": "ReceiverName",
          "isRequired": false,
          "visible": true
        },
        {
          "component": "input",
          "id": "qty",
          "inputType": "number",
          "default": "1",
          "title": "Quantity",
          "isRequired": false,
          "visible": true
        },
        {
          "component": "input",
          "id": "deliveryTime",
          "inputType": "string",
          "default": null,
          "title": "Delivery Time",
          "isRequired": false,
          "visible": true
        },
        {
          "component": "select",
          "id": "label",
          "default": null,
          "options": [
            "CGR",
            "HDR",
            "HJK",
            "NYT"
          ],
          "min": 0,
          "max": 2,
          "title": "Label",
          "visible": true
        },
        {
          "component": "select",
          "id": "deliveryStatus",
          "options": [
            "success",
            "failed"
          ],
          "default": "success",
          "title": "Delivery Status",
          "min": 0,
          "max": 1,
          "visible": true
        }
      ]
    },
    {
      "id": "page1",
      "components": [
        {
          "component": "input",
          "id": "receiver",
          "inputType": "string",
          "default": null,
          "title": "Receiver",
          "isRequired": false,
          "visible": true
        },
        {
          "component": "input",
          "id": "codAmount",
          "inputType": "number",
          "default": "1",
          "title": "codAmount",
          "isRequired": false,
          "visible": true
        },
        {
          "component": "select",
          "id": "statusDelivery",
          "default": null,
          "options": [
            "Success",
            "Failed"
          ],
          "min": 0,
          "max": 1,
          "title": "Status Delivery",
          "visible": true
        }
      ]
    }
  ],
  "configurations": [
    {
      "id": "startTime",
      "adjustment": 0
    },
    {
      "id": "endTime",
      "adjustment": 24
    }
  ],
  "isDefault": true,
  "version": 2
}
'
{
  "status": true,
  "message": "Success",
  "flow": {
    "_id": "6352736c628401059b37a1d1",
    "name": "Delivery",
    "pages": [
      {
        "id": "page0",
        "enabled": true,
        "components": [
          {
            "component": "input",
            "id": "title",
            "inputType": "string",
            "default": null,
            "title": "Title",
            "isRequired": true,
            "visible": true,
            "showAs": "title"
          },
          {
            "component": "input",
            "id": "content",
            "inputType": "string",
            "default": null,
            "title": "Content",
            "isRequired": true,
            "visible": true,
            "showAs": "content"
          },
          {
            "component": "input",
            "id": "receiverName",
            "inputType": "string",
            "default": "Admin Hub",
            "title": "ReceiverName",
            "isRequired": false,
            "visible": true
          },
          {
            "component": "input",
            "id": "qty",
            "inputType": "number",
            "default": "1",
            "title": "Quantity",
            "isRequired": false,
            "visible": true
          },
          {
            "component": "input",
            "id": "deliveryTime",
            "inputType": "string",
            "default": null,
            "title": "Delivery Time",
            "isRequired": false,
            "visible": true
          },
          {
            "component": "select",
            "id": "label",
            "default": null,
            "options": [
              "CGR",
              "HDR",
              "HJK",
              "NYT"
            ],
            "min": 0,
            "max": 2,
            "title": "Label",
            "visible": true
          },
          {
            "component": "select",
            "id": "deliveryStatus",
            "options": [
              "success",
              "failed"
            ],
            "default": "success",
            "title": "Delivery Status",
            "min": 0,
            "max": 1,
            "visible": true
          }
        ]
      },
      {
        "id": "page1",
        "components": [
          {
            "component": "input",
            "id": "receiver",
            "inputType": "string",
            "default": null,
            "title": "Receiver",
            "isRequired": false,
            "visible": true
          },
          {
            "component": "input",
            "id": "codAmount",
            "inputType": "number",
            "default": "1",
            "title": "codAmount",
            "isRequired": false,
            "visible": true
          },
          {
            "component": "select",
            "id": "statusDelivery",
            "default": null,
            "options": [
              "Success",
              "Failed"
            ],
            "min": 0,
            "max": 1,
            "title": "Status Delivery",
            "visible": true
          }
        ]
      }
    ],
    "configurations": [
      {
        "id": "startTime",
        "adjustment": 0
      },
      {
        "id": "endTime",
        "adjustment": 24
      }
    ],
    "isDefault": true,
    "version": 2,
    "orderIndex": 1
  }
}

Authorizations

Authorization
string
header
required

Use a valid Bearer token to authenticate.

Body

application/json
name
string
required

The name used in the flow display must be unique to avoid any conflicts or confusion. Cannot use the flow name Activity as it is already in use by the system. Example: Delivery

pages
object[]
required

Settings that will define the detail information of flow structure. Example: { 'id': 'page0', 'components': [
{ 'component': 'input', 'id': 'title', 'type': 'string', 'default': null, 'title': 'Title', 'required': 'true', 'visible': 'true', 'showAs': 'title' } ] }

configurations
object[]

Settings configuration for advance setting of the flow. Example: { 'id': 'startTime', 'adjustment': 0 }, { 'id': 'endTime', 'adjustment': 24 }

isDefault
boolean

To set flow as default. Example: true

orderIndex
integer

Order of flow. User can define it by number value. Example: 1

version
integer

Version of flow. Example: 1

Response

Success

status
boolean

Status of response.

message
string

Message of API response.

flow
object

Detail of object flow.