Dataphin integrates with your company's internal approval flows, such as DingTalk OA, so users get an approval experience consistent with their existing systems. You can also customize approval rules — for example, configure automatic approvals for low-sensitivity asset requests while requiring designated approvers for high-sensitivity assets.
Related documents
To use a third-party approval flow, select Third-party approval for the Select approval system option. For more information, see Custom approval system integration API.
Background information
Integrating an external approval system with Dataphin typically requires a proxy application. This is because Dataphin users must be mapped to users in the approval system, each system has a different API, and data often requires transformation between Dataphin and the external APIs. The approval system SDK helps you develop this proxy application and quickly implement the basic workflow.

Usage limits
Only accounts with the super administrator or system administrator role can configure approval settings.
Notes
When you change the approval flow settings, be aware of how it affects in-flight approval tickets:
-
If you switch from the Dataphin built-in approval flow to an external approval flow, in-flight approval tickets can still be processed within Dataphin.
-
If you switch from one external approval flow to another, or change the approval flow parameters, in-flight tickets are processed according to the new flow. If the Callback URL or its authentication information has changed, callbacks may fail. In this case, the approval status cannot be synchronized to Dataphin. You must withdraw the original ticket and submit a new approval request.
-
If you switch from an external approval flow to the built-in approval flow, results for in-flight tickets from the external system cannot be synchronized to Dataphin. You can close these tickets by withdrawing or forcibly withdrawing them.
Configure approval settings
-
Log on to the Meta warehouse tenant with a super administrator or system administrator account.
-
On the Dataphin homepage, choose Management Center > System Settings in the top navigation bar.
-
In the left-side navigation pane, choose System Settings > Approval Settings to open the Approval Settings page.
-
Configure the Default Approval System.
When the external approval system is disabled, the default approval system is the built-in approval system. When it is enabled, you can select either the built-in approval system or a third-party approval system. After you enable an external approval system, you must also configure the external approval system and approval service settings.
NoteThe system selected here becomes the default for the Approval System option in the Approval Template.
-
Configure the External Approval System Configuration and Approval Service Configuration.
-
Approval System Name: Enter a custom name for the approval system. The name can be up to 128 characters long. All character types are supported.
-
Select Approval System: You can select DingTalk OA or Other. The required service configurations vary based on your selection.
DingTalk OA
Parameter
Description
API address
The API address for DingTalk OA.
AppKey
The AppKey from DingTalk OA.
AppSecret
The AppSecret from DingTalk OA.
Click Test Connection to verify the connection to the external approval system. If the test fails, troubleshoot based on the error message.
Callback URL
The URL where Dataphin receives callback results from DingTalk OA. This URL is generated automatically but can be customized. The format is
https://{domain_of_your_Dataphin_deployment}/task/callback.Encoding AES Key
The key used for encryption and decryption.
Click the
icon to automatically generate an Encoding AES Key.Token
The token used to authenticate the DingTalk OA client.
You can click the
icon to automatically generate a token.AgentId
The AgentId from DingTalk OA.
Other
For information about how external approval system parameters are displayed in Dataphin, see Display values for external approval system parameters.
Parameter
Description
Integration Method
Select Display only the final approval result or Display all nodes of third-party approval. The default is Display only the final approval result.
-
Display only the final approval result: The external system needs to return only the final result. Dataphin displays only the start and end nodes of the approval.
-
Display all nodes of third-party approval: The external system must return the details of each node. Dataphin synchronizes and displays all approval nodes.
Submit Approval Request URL
The URL in the external approval system to which Dataphin sends approval requests.
Access Token
The Access Token authenticates requests to the external approval system. Dataphin includes this token when submitting an approval ticket.
Click Test Connection to verify the connectivity between Dataphin and the external approval system. If the test fails, troubleshoot based on the error message.
Callback URL
The URL where Dataphin receives callback results from the external approval system. This URL is generated automatically but can be customized. The format is
https://<domain_of_your_Dataphin_deployment>/api/oa/bpms/integration/thirdparty/callback.Encoding AES Key
The key used for encryption and decryption.
Click the
icon to automatically generate an Encoding AES Key.External approval system parameters
Parameter
Condition
Display value
Operation
No condition
The value of
node_name.Result
"node_status": "PENDING"
Pending"node_status": "APPROVED"
Approved"node_status": "REJECTED"
Rejected"node_status": "DELEGATED"
Delegate ${user_name}"node_status": "TRANSFERRED"
Transfer ${user_name}Operator
"node_status": "PENDING"
"approverRelation": "or"
All pending approvers, taken from the
user_namefield inpending_approvers."node_status": "PENDING"
"approverRelation": "and"
Pending:
${pending_approver_01}, ${pending_approver_02}, ${pending_approver_03}Approved:
${approved_approver_01}, ${approved_approver_02}, ${approved_approver_03}Other cases
OperatorOperation Description
"node_status": "PENDING"
"approverRelation": "or"
The request is approved if any one approver agrees.
"node_status": "PENDING"
"approverRelation": "and"
"operator" is empty
Requires approval from all approvers.
"node_status": "PENDING"
"approverRelation": "and"
"operator" is not empty
Some approvers have approved: ${approving_user}(${reason_for_approval}), ${approving_user}(${reason_for_approval})...
Example: Some approvers have approved: John Doe (Agreed), Jane Smith (Reasonable request, approved for release).
Other cases
The
reasonprovided by the operator. -
-
-
After you finish configuring the parameters, click Save.