The system supports approval configurations for automated marketing tasks, SMS marketing tasks, and Lingyang SuperSMS marketing tasks.
Comments
Multiple approval nodes are supported. Only when the previous node is passed can the next approval node be entered. All approval nodes are approved only after the task is approved. If any node rejects the task, the approval fails.
If multiple approvers are configured for a single node, any approver will pass the current node, and any approver will reject the current node.
Limits
Workspace Administrator: the administrator of the workspace.
Specified Member: the members of the current workspace.
Specified Role: a role in the current workspace.
Entry point
On the Quick Audience homepage, click Configuration Management in the top navigation bar.
Choose Configuration Management> Security Settings, and follow the instructions shown in the following figure to go to the Approve Configuration page.

In the Enable Approval Configuration dialog box, configure the approval node information.

Item
Example value
Approval Type
Approval Type Name
External OA docking
See External OA Docking in this article
approval node
An approval node can have up to five levels.
Approver:
Workspace administrators: members who have the current workspace management permissions.
Specified Members: Specify a maximum of five members. Approval is triggered when a task is submitted. If the node member does not exist, the system forwards the task to the workspace administrator for approval.
Specify Role: Specify a role in the current workspace. If a task is submitted to trigger approval and no member is assigned to the specified role, the system forwards the task to the workspace administrator for approval by default.
Description: The description of the approval member. This parameter is optional and can be up to 200 characters in length.
Remarks
The description of the approval configuration. This parameter is optional and can be up to 200 characters in length.
After the approver is configured, click Save and Enable.
Click Message Center to view the content to be approved by me. As shown in the following figure, click Details to approve. You can perform the Approve /Reject operation.


External OA docking
1. Overall process
2. Call external OA system API
The external oa system provides a notification API to configure the API path when the approval configuration is enabled
API Path: Domain + Path
Request type: post
Input parameters:
Parameter | Data type | Parameters | |
applyId | String | approval form id | |
applyReason | String | Reason | |
applicantName | String | The name of the applicant. | |
moduleName | Integer | Approval Type Description | |
resourceName | Integer | Approval object description | |
resourceDetailUrl | String | The URL of the feature details page, which must contain the corresponding business ID. You can redirect the | |
startTime | date | Approval start time | |
endTime | date | Approval end time | |
organizationId | String | The ID of the organization. | |
organizationName | String | Organization name | |
workspaceId | String | The drive ID. | |
workspaceName | String | Workspace name |
The output parameters:
Returns a Boolean value
3. External OA system callback API
API: openapi/apply/externalApplyCallBack
parameter type: Content-Type:application/x-www-form-urlencoded
API type: post
Input parameters:
Parameter | Data type | Parameters | Required |
applyId | String | approval form id | true |
approverStatus | Integer | Approval result (1 Pass 2 Reject) | true |
approverReason | String | Approval remarks | false |
approvalNode | Integer | Approval node (required for multi-level approval, level 1-1, level 2-2) | false |
approverName | String | The name of the approver for the current node. | true |
nextApproverName | String | The name of the approver for the next node (required for multi-level approval. Multiple approvers are separated by [,]) | false |
applyStatus | Approval Doc Status (0-Pending Approval, 1 Passed 2 Rejected) | true | |
organizationId | String | The ID of the organization. | true |
workspaceId | String | The drive ID. | true |
The output parameters:
Returns a Boolean value
Sample request:
curl --location 'https://xxx.xxx.xxx.xxx/openapi/apply/externalApplyCallBack' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Cookie: csrf_token=de30eec1-4e68-4ae7-a43c-1b415e818f29' \
--data-urlencode 'accessId=6d212e40-48d1-4064-806f-00cf3694026d' \
--data-urlencode 'applyId=6b2d80748cfe11ee9f8e5a51625d9458' \
--data-urlencode 'approverStatus=1' \
-- data-urlencode 'approverName=Zhang San' \
-- data-urlencode 'nextApproverName=Li Si' \
--data-urlencode 'applyStatus=0' \
-- data-urlencode 'approverReason=External node approval test 1' \
--data-urlencode 'workspaceId=1a53dca5-b345-4802-ad34-ea706b52cdb3'Sample response:
{
"data": "true",
"errorCode": null,
"errorDesc": null,
"exStack": null,
"opers": [],
"solution": null,
"success": true,
"traceId": "0ada03af17013970520966528d00ae"
}