Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

As we can see, if an employee does not have the role that is being checked in the workflow, then the workflow will end without any action calls.

Creation Process

  1. Steps for Requester

    • Initiating a Creation Request

    • Providing Necessary Information

  2. Steps for Approver

    • Reviewing the Request

    • Approving or Rejecting the Request

Update Configurations

  1. Steps for Requester

    • Initiating an Update Request

    • Providing Details of Configuration Changes

  2. Steps for Approver

    • Reviewing the Update Request

    • Approving or Rejecting the Changes

Operations Approval

  1. Steps for Requester

    • Requesting Approval for Operations

    • Providing Context and Details

  2. Steps for Approver

    • Reviewing the Operation Request

    • Approving or Rejecting the Operation

Best Practices

...

Tips for Effective Request Submission

...

  1. In this part of Workflow creation, we will review the model with the Requester who makes a request to update currency, and the Approver who will review the request and make a decision. For this flow, there should be a connection between the Requester and Approver employees through task creation in Workspace mode.

    • Therefore, both the Requester and the Approver should be granted the permission "useWorkspace" and "manageTasks".

    • This allows the Requester to observe the status of created tasks.

    • Additionally, the Approver requires additional permission, "acceptCurrency", which enables one to view task details and make decisions. Without this permission, there is no option to review task details and make a decision.

In this example, employee businessanalyst@marionette.dev will act as the Requester, while employee qa@tunex.io will serve as the Approver.

To enable task creation for the Requester and decision-making for the Approver, the workflow model should include "set" and "user decision" nodes.

...


As observed, if the Role checks result in a "false" outcome, the subsequent node will be "set", where there is an opportunity to input the main details for the task title and description.

...

After the "set" node, there will be a "user decision" node with the following main conditions:

  • Component: Within the framework of workflow construction, the “user decision” element plays a crucial role, allowing the administrator to decide whether to confirm or cancel changes to the data. This element includes a Component attribute, used to visually represent changes to the administrator. Visual representation may include added, modified, created, or deleted data. The Params Key attribute is utilized to pass this data to the Component, enabling the administrator to visually evaluate changes before approving or rejecting them.

  • Assignee User: The Approver can be assigned by email.

  • Assignee Role: The Approver can be assigned by role.

  • Assignee Permission: The Approver can be assigned by permission.

  • Out port "Approve": This port has a primary color for the button in task details (positive).

  • Out port "Reject": This port has a danger color for the button in task details (negative).

As observed in this flow, if the Approver makes an "Approve" decision, the next step will be an "action call" with currencies.updateCurrency. Conversely, if the decision is "Reject", the workflow will proceed to the "end" node.

Workflow Process for updating Currency configurations

Steps for Requester. Login to Puppeteer with the credentials businessanalyst@marionette.dev and navigate to the Configurations page. Once there, locate the "Currencies" sub-menu.

  • Initiating a creation request with updating currency configurations for the "platform payout fee".

...

  • The requester can view their created open task in the Workspace and monitor its status.

...

Steps for Approver

  • Reviewing the request: The approver can observe the new task created by the requester and its details. The fields that are requested to be changed are marked with a different background color.

...

  • If the Approver decides to reject the request, it will be declined without any changes to the Currency configuration. The task status will be set to 'resolved', and it will be removed from the open tasks list for both the Approver and the Requester in the Workspace.

...

Expand
titleFull Audit logs code for Workflow
Code Block
{
  "initialData": {
    "name": "Cardano",
    "id": "ADA",
    "precision": 4,
    "position": 7,
    "lightBgColor1": "#ff0000",
    "lightBgColor2": "#D6CCED",
    "lightTextColor": "#ffffff",
    "darkBgColor1": "#569494",
    "darkBgColor2": "#0A0F17",
    "darkTextColor": "#ffffff",
    "userBalanceEnable": true,
    "enabled": true,
    "hide": false,
    "trading_commission_enabled": true,
    "payout_fee": 2,
    "min_payout_fee": 1,
    "max_payout_fee": 250
  },
  "initialMeta": {
    "userIP": "176.120.105.193",
    "userAgent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:124.0) Gecko/20100101 Firefox/124.0",
    "method": "POST",
    "path": "api/v2/",
    "decodedUser": {
      "exp": 1715513322,
      "sub": "session",
      "iss": "marionette",
      "aud": [
        "marionette"
      ],
      "jti": "98b91213-ade7-4066-a6e5-2106c0c62690",
      "uid": "872a9c32db4545e8ac731551fb61c227",
      "email": "businessanalyst@marionette.dev",
      "role": "admin",
      "level": 3,
      "state": "active",
      "referral_id": null
    },
    "user": {
      "id": "872a9c32db4545e8ac731551fb61c227",
      "email": "businessanalyst@marionette.dev",
      "password": "sha256$4be643c4$1$95c93926a1850e210d379a4922c03cc7f397828e090c0cd9fac794af4447d065",
      "username": null,
      "role": "ADMIN",
      "state": "active",
      "referralId": null,
      "referralGroupId": null,
      "locale": null,
      "email_verified": false,
      "phone_verified": false,
      "profile_verified": false,
      "isPhone": null,
      "data": null,
      "otp": false,
      "enabled2fa": false,
      "secret2fa": "",
      "googleIdentity": false,
      "softban": false,
      "createdAt": "2024-02-13T18:50:17.000Z",
      "updatedAt": "2024-04-12T08:44:05.000Z"
    },
    "permissions": [
      "acceptCurrencyPI",
      "manageTasks",
      "useWorkspace",
      "editCurrency",
      "viewCurrencies"
    ],
    "token": "eyJhbGciOiJSUzI1NiJ9.eyJleHAiOjE3MTU1MTMzMjIsInN1YiI6InNlc3Npb24iLCJpc3MiOiJtYXJpb25ldHRlIiwiYXVkIjpbIm1hcmlvbmV0dGUiXSwianRpIjoiOThiOTEyMTMtYWRlNy00MDY2LWE2ZTUtMjEwNmMwYzYyNjkwIiwidWlkIjoiODcyYTljMzJkYjQ1NDVlOGFjNzMxNTUxZmI2MWMyMjciLCJlbWFpbCI6ImJ1c2luZXNzYW5hbHlzdEBtYXJpb25ldHRlLmRldiIsInJvbGUiOiJhZG1pbiIsImxldmVsIjozLCJzdGF0ZSI6ImFjdGl2ZSIsInJlZmVycmFsX2lkIjpudWxsfQ.J2nJwoEiVNkUql-M9AB9PT0gXMScvPHnpxDOUw6bP3b-JNG_qk2u4CWVQLmjR2VcrjGlJX6yB__YfzXmNaH3_FD3LhCvDBb7nXUeL7TdHVfWtyGjxx7bTV-B548ufCPyOpJtOd4T9d05c_KgKxmRXr9MsYm-KsxSvjK2uZEl_oeNKkeeuDDFKG6CmAPBhdOo6vnmJcwOYq3mxUz10ONkbEqoavexADxJByO-ivgVgzf_2HSJtMf3SSvzy5gFH76wm_sLcd3ezAIy5GBA411nCvq3umoAo79I9oKJL6PsuiVxyK8ZD_-wQvbnlGnZRwVxvlw9wirT-epZFyd9hfipww",
    "isApiKey": false
  }
}
Expand
titleFull Audit logs code for Workflow with 'Reject' decision
Code Block
{
  "name": "Cardano",
  "id": "ADA",
  "precision": 4,
  "position": 7,
  "lightBgColor1": "#ff0000",
  "lightBgColor2": "#D6CCED",
  "lightTextColor": "#ffffff",
  "darkBgColor1": "#569494",
  "darkBgColor2": "#0A0F17",
  "darkTextColor": "#ffffff",
  "userBalanceEnable": true,
  "enabled": true,
  "hide": false,
  "trading_commission_enabled": true,
  "payout_fee": 2,
  "min_payout_fee": 1,
  "max_payout_fee": 250,
  "taskTitle": "Request to update Currency ADA",
  "taskDescription": "Requested by businessanalyst@marionette.dev"
}

Troubleshooting

  1. Common Issues and Solutions

  2. Error Messages and Their Meanings

...