Listeners
Overview
In the Informat AI Low-Code Platform, listeners are powerful tools that can trigger and execute pre-configured automation programs by monitoring specific system events. This enables developers to create responsive and intelligent applications. Listeners capture specific system events (such as data changes, user operations, etc.) and automatically execute corresponding automation programs based on predefined rules and conditions. Automation programs can include data processing, notification sending, external system integration, and other operations.
In Automation programs or Scripts, you can publish an Application Event through the Publish Application Event step. The type of Application Event needs to be preset.

Important Note
Please note that listeners running on non-client side must not contain interactive steps.
Automation programs or scripts will receive a parameter of type AppEvent with the following structure:
interface AppEvent {
id: string; //Event ID
content: object; //Event content
}Transactions
All event listeners (except those triggered by notifications and clients) execute in the same transaction as the trigger point. For example, if an exception is thrown during the execution of an automation program that listens to the Before Data Table Record Creation event, all transactions including the record insertion will be rolled back.
For instance, when submitting data, some rule validation is required. If the rules are not met, users should not be allowed to submit data. Set up a rule-checking Automation program in the After Data Table Record Creation event listener. If the rules are not met, the Automation program executes Terminate Execution. When the system receives the Terminate Execution command, it will automatically roll back all transactions, and the data submission will fail.
Before/After Data Table Record Creation Events
Triggered after a user creates a record through a form.
TIP
Data table records created through automation or scripts will not trigger events.
When creating records, the event triggering order is:
- Trigger the
Before Data Table Record Creationevent for the main table - For each sub-table record, trigger the
Before Data Table Record CreationandAfter Data Table Record Creationevents - Trigger the
After Data Table Record Creationevent for the main table.
{
"content":{
"record":{
"name":"Name","age":0
},
"source":"form",
"tableId":"listenerData"
},
"id":"record.create.before"
}{
"content": {
"afterRecord": {
"age": 0,
"id": "d6dhvhodo62nl",
"name": "Name",
"seq": 2
},
"record": {
"age": 0,
"name": "Name"
},
"source": "form",
"tableId": "listenerData"
},
"id": "record.create.after"
}Before/After Data Table Record Update Events
Triggered after a user updates a record through a form.
TIP
Data table records updated through automation or scripts will not trigger events.
When updating records, the sub-table may contain three actions: Create, Update, and Delete. The event triggering order is:
- Trigger the
Before Data Table Record Updateevent for the main table - For newly added data in the sub-table, trigger the
Before Data Table Record CreationandAfter Data Table Record Creationevents in sequence - For updated data in the sub-table, trigger the
Before Data Table Record UpdateandAfter Data Table Record Updateevents in sequence - For deleted data in the sub-table, trigger the
Before Data Table Record DeletionandAfter Data Table Record Deletionevents in sequence - Trigger the
After Data Table Record Updateevent for the main table
{
"content": {
"beforeRecord": {
"age": 100,
"id": "xg2d0hi83cwym",
"name": "Zhang San",
"seq": 1
},
"record": {
"id": "xg2d0hi83cwym",
"name": "Zhang San 1"
},
"source": "form",
"tableId": "listenerData",
"updateFieldList": [
"name"
]
},
"id": "record.update.before"
}{
"content": {
"afterRecord": {
"age": 100,
"id": "xg2d0hi83cwym",
"name": "Zhang San 1",
"seq": 1
},
"beforeRecord": {
"age": 100,
"id": "xg2d0hi83cwym",
"name": "Zhang San",
"seq": 1
},
"record": {
"id": "xg2d0hi83cwym",
"name": "Zhang San 1"
},
"source": "form",
"tableId": "listenerData",
"updateFieldList": ["name"],
"updateRowCount": 1
},
"id": "record.update.after"
}Before/After Data Table Record Deletion Events
Triggered after a user deletes a record through a form.
TIP
Data table records deleted through automation or scripts will not trigger events.
When deleting records, the event triggering order is:
- Trigger the
Before Data Table Record Deletionevent for the main table - Trigger the
After Data Table Record Deletionevent for the main table.
TIP
For fields of type Associated List, the deletion action only deletes the association relationship and does not actually delete the data, so it will not trigger related events of the sub-table.
{
"content": {
"record": {
"age": 0,
"id": "d6dhvhodo62nl",
"name": "Bits and Pieces",
"seq": 2
},
"source": "form",
"tableId": "listenerData"
},
"id": "record.delete.before"
}{
"content": {
"record": {
"age": 0,
"id": "d6dhvhodo62nl",
"name": "Bits and Pieces",
"seq": 2
},
"source": "form",
"tableId": "listenerData"
},
"id": "record.delete.after"
}Data Table Record Sorting Update
Triggered after a user modifies the record order through drag and drop in the table view.
{
"content": {
"beforeRowNumber": 4,
"recordId": "gf13shmq3njqf",
"source": "form",
"tableId": "listenerData"
},
"id": "record.rownumber.update.before"
}{
"content": {
"afterRowNumber": 3,
"beforeRowNumber": 4,
"recordId": "gf13shmq3njqf",
"source": "form",
"tableId": "listenerData"
},
"id": "record.rownumber.update.after"
}After Data Table Record Comment Creation
Triggered after a user posts a comment through a form.
{
"content": {
"comment": {
"content": "{\"type\":\"doc\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"text\":\"Please refer to 1.3 \",\"type\":\"text\"},{\"type\":\"mention\",\"content\":[{\"text\":\"@Wang Yanfeng \",\"type\":\"text\"}],\"attrs\":{\"id\":\"nx8hcjsq4xk8z\",\"label\":\"Wang Yanfeng \"}},{\"text\":\" Please modify\",\"type\":\"text\"}]}]}",
"id": 0,
"parentId": 0,
"recordId": "xg2d0hi83cwym",
"tableId": "listenerData"
}
},
"id": "record.comment.create.after"
}After Data Table Record Comment Deletion
Triggered after a user deletes a comment through a form.
{
"content": {
"comment": {
"content": "{\"type\":\"doc\",\"content\":[{\"type\":\"paragraph\",\"content\":[{\"text\":\"Please refer to 1.3 \",\"type\":\"text\"},{\"type\":\"mention\",\"content\":[{\"text\":\"@Wang Yanfeng \",\"type\":\"text\"}],\"attrs\":{\"id\":\"nx8hcjsq4xk8z\",\"label\":\"Wang Yanfeng \"}},{\"text\":\" Please modify\",\"type\":\"text\"}]}]}",
"id": 0,
"parentId": 0,
"recordId": "xg2d0hi83cwym",
"tableId": "listenerData"
}
},
"id": "record.comment.delete.after"
}Automation Execution
In the Informat AI Low-Code Platform, automation execution listener events can monitor three key events of automation execution: Execution Start, Execution End, and Execution Failure. This listener event can be used to record the automation execution process, with the following usage scenarios:
- Record execution process as logs for statistical analysis
- Perform global permission checks before execution
- Send execution records to message queues and push to monitoring systems
{
"content": {
"args": [
"lefttop"
],
"draft": false,
"id": "trang7ixclbtg",
"isDraft": false,
"uuid": "trang7ixclbtg:sesgv3tgz0el"
},
"id": "app.automatic.before"
}{
"content": {
"args": [
"lefttop"
],
"draft": false,
"id": "trang7ixclbtg",
"isDraft": false,
"uuid": "trang7ixclbtg:sesgv3tgz0el"
},
"id": "app.automatic.success"
}Scheduled Task Execution
In the Informat AI Low-Code Platform, scheduled task execution listener events can monitor three key events of scheduled task execution: Execution Start, Execution Success, and Execution Failure. This listener event can be used to record the scheduled task process, with the following usage scenarios:
- Record execution process as logs for statistical analysis
- Send execution records to message queues and push to monitoring systems
{
"content": {
"endTime": 1718092915132,
"id": "tlijinwmbtnet",
"name": "Create a record every day at 10 AM, 2 PM, and 4 PM",
"requestId": "arqwu3bsirbh8",
"serverId": "informat-biz2-prd",
"startTime": 1718157714369
},
"id": "app.schedule.before"
}{
"content": {
"endTime": 1718092915132,
"id": "tlijinwmbtnet",
"name": "Create a record every day at 10 AM, 2 PM, and 4 PM",
"requestId": "arqwu3bsirbh8",
"serverId": "informat-biz2-prd",
"startTime": 1718157714369
},
"id": "app.schedule.success"
}Enter Application
The Enter Application listener event is triggered after a user enters the application from the client side. This listener can be used to implement the following application scenarios:
- Use the
Display Dialog Boxautomation step to show a welcome dialog box on the client side, displaying welcome information or application usage guidelines to users - Use the
Set Badgeautomation step to set the badge displayed by the application on the workbench interface, such as the number of unread messages or pending tasks - Record the user's login time in a log table for subsequent analysis or auditing
TIP
This listener event is triggered on the client side, and the called automation can contain interactive logic.
{
"eventContent": {
"app": {
"appData": {},
"appDefineBuild": 1905,
"appDefineEditable": true,
"appDefineId": "demoApp",
"appDefineVersion": "1.5",
"badge": "重要",
"color": "#9470DC",
"companyId": "icxt9rsd1f0ai",
"createAccountAvatar": "pic8.png",
"createAccountId": "ek5veueb6c9zg",
"createAccountName": "Mr. Zeng",
"createTime": 1700628728441,
"dbIndex": 0,
"designerAccountList": [],
"designerEditAccountList": [],
"designerPublishAccountList": [],
"enableAppJsonLog": false,
"enableAppLog": false,
"enableSaveProcessLog": false,
"env": "dev",
"envPropertyList": [
{
"id": "payID",
"value": "覆盖的值"
}
],
"groupId": "qvwfhdf328lex",
"hint": "gongnengyanshi-v1.5",
"icon": "noto-glowing-star",
"id": "i1mwqy35y88hl",
"isArchive": false,
"isInstance": false,
"isMaintained": false,
"isUnderPublish": false,
"logLevel": "DEBUG",
"monitorAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr"],
"name": "功能演示-v1.5",
"platform": "web",
"rowNumber": 1,
"saveProcessLogDays": 0,
"saveProcessLogTypes": [],
"underPublishServerId": "informat-biz-prd",
"updateAccountId": "yvkc2kwpy3xzr",
"updateTime": 1718159093356
},
"platform": "web",
"query": {
"appId": "i1mwqy35y88hl"
},
"url": "https://next.informat.cn/app/i1mwqy35y88hl",
"user": {
"avatar": "pic7.png",
"companyRoleList": ["admin"],
"departmentList": ["root"],
"id": "xwi9jogl4fcx4",
"leaderList": [],
"name": "郭",
"roleList": ["admin"],
"userInfo": {
"department": "销售部",
"role": "admin"
}
}
},
"eventId": "app.enter",
"id": "app.enter"
}Enter Module
The Enter Module listener event is triggered after a user enters a specific module of the application from the client side. This listener can be used to implement the following application scenarios:
- Use the
Display Dialog Boxautomation step to show a welcome dialog box on the client side, displaying welcome information or application usage guidelines to users - Record the user's access time in a log table for subsequent analysis or auditing
TIP
This listener event is triggered on the client side, and the called automation can contain interactive logic.
{
"appId": "i1mwqy35y88hl",
"eventContent": {
"app": {
"appData": {
"taskNum": 6
},
"appDefineBuild": 1079,
"appDefineEditable": true,
"appDefineId": "demoApp",
"appDefineVersion": "1.0",
"badge": "新的提醒",
"color": "c1",
"companyId": "icxt9rsd1f0ai",
"createAccountAvatar": "pic8.png",
"createAccountId": "ek5veueb6c9zg",
"createAccountName": "Mr. Zeng",
"createTime": 1700628728441,
"dbIndex": 0,
"designerAccountList": ["ek5veueb6c9zg", "xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "fjgefcpk28dsj", "jsonlai"],
"enableAppJsonLog": false,
"enableAppLog": false,
"enableSaveProcessLog": false,
"env": "dev",
"envPropertyList": [],
"groupId": "qvwfhdf328lex",
"hint": "gongnengyanshi-v1.0",
"icon": "noto-aries",
"id": "i1mwqy35y88hl",
"isArchive": false,
"isInstance": false,
"isMaintained": false,
"isUnderPublish": false,
"logLevel": "DEBUG",
"monitorAccountList": ["xwi9jogl4fcx4", "skydu"],
"name": "功能演示-v1.0",
"platform": "web",
"rowNumber": 1,
"saveProcessLogDays": 0,
"saveProcessLogTypes": [],
"underPublishServerId": "informat-biz-prd",
"updateAccountId": "ek5veueb6c9zg",
"updateTime": 1703572224491
},
"moduleKey": "listenerData",
"platform": "web",
"query": {
"appId": "i1mwqy35y88hl",
"moduleId": "snahtjpjwbz3f"
},
"url": "https://next.informat.cn/app/i1mwqy35y88hl/table/snahtjpjwbz3f",
"user": {
"avatar": "db379f35e7554f65bb51462a4fb03ac5.jpg",
"companyRoleList": ["normal", "designer", "admin"],
"departmentList": ["root"],
"id": "fjgefcpk28dsj",
"leaderList": ["skydu"],
"name": "李健",
"roleList": ["admin", "manager"],
"userInfo": {
"department": "销售部",
"role": "admin"
}
}
},
"eventId": "app.module.enter",
"id": "app.module.enter",
"moduleId": "snahtjpjwbz3f"
}Application Publish
Triggered after an application is published.
{
"content": {
"appDefineId": "demoApp",
"appId": "i1mwqy35y88hl",
"build": 1906,
"companyId": "icxt9rsd1f0ai",
"publishUser": "肖建宇"
},
"id": "app.publish"
}Member Events
Member events are triggered after operations such as adding, deleting, or modifying member roles through the Member Management interface.
{
"content": {
"appDefineId": "demoApp",
"appId": "i1mwqy35y88hl",
"companyId": "icxt9rsd1f0ai",
"roleList": [
"admin"
],
"userId": "bt4tdzx8vtjoe"
},
"id": "app.member.add.after"
}{
"content": {
"appDefineId": "demoApp",
"appId": "i1mwqy35y88hl",
"companyId": "icxt9rsd1f0ai",
"roleList": [
"admin"
],
"userId": "pacrwba408wd0"
},
"id": "app.member.remove.after"
}{
"content": {
"afterRoleList": [
"admin",
"ceo",
"manager"
],
"appDefineId": "demoApp",
"appId": "i1mwqy35y88hl",
"beforeRoleList": [
"admin",
"ceo"
],
"companyId": "icxt9rsd1f0ai",
"userId": "yvkc2kwpy3xzr"
},
"id": "app.member.role.update.after"
}Task Status Change
Triggered when tasks belonging to the monitored workflow in the application undergo behaviors such as Delegate, Transfer, Jump Node, Complete Task, Claim Task, and Start Task.
TIP
This listener event is triggered on the client side, and the called automation can contain interactive logic.
{
"eventId": "client.bpmn.task.change",
"eventContent": {
"app": {
"createAccountName": "Mr. Zeng",
"visitModuleKey": "listenWorkflow",
"designerPublishAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"color": "#9470DC",
"groupId": "qvwfhdf328lex",
"appDefineEditable": true,
"enableSaveProcessLog": false,
"icon": "noto-glowing-star",
"createAccountId": "ek5veueb6c9zg",
"appData": {
"taskNum": 0
},
"createAccountAvatar": "pic8.png",
"platform": "web",
"monitorAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr"],
"isInstance": false,
"logLevel": "DEBUG",
"isMaintained": false,
"dbIndex": 0,
"enableAppJsonLog": false,
"saveProcessLogTypes": [],
"isUnderPublish": false,
"id": "i1mwqy35y88hl",
"rowNumber": 1,
"appDefineBuild": 2485,
"appDefineId": "demoApp",
"envPropertyList": [
{
"id": "payID",
"value": "覆盖的值"
}
],
"isArchive": false,
"underPublishServerId": "informat-biz2-prd",
"appDefineVersion": "1.5",
"designerAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "lxx2gntjifxbh", "bt4tdzx8vtjoe"],
"saveProcessLogDays": 0,
"updateTime": 1719557611739,
"updateAccountId": "jsonlai",
"env": "dev",
"designerEditAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"badge": "重要",
"companyId": "icxt9rsd1f0ai",
"createTime": 1700628728441,
"hint": "gongnengyanshi-v1.5",
"name": "功能演示-v1.5",
"enableAppLog": false
},
"query": {
"appId": "i1mwqy35y88hl",
"moduleId": "ztkva3xsc2vbw"
},
"moduleId": "ztkva3xsc2vbw",
"user": {
"userInfo": {
"role": "admin",
"department": "销售部"
},
"leaderList": [],
"name": "赖泽城",
"companyRoleList": ["normal", "designer"],
"avatar": "8e321dac2d1e465f9b503360af87930e.jpg",
"id": "jsonlai",
"departmentList": ["root"],
"roleList": ["admin"]
},
"url": "https://next.informat.cn/app/i1mwqy35y88hl/bpmn/ztkva3xsc2vbw"
},
"id": "client.bpmn.task.change"
}Process Status Change
Triggered when the monitored workflow in the application undergoes behaviors such as Revoke and Delete.
TIP
This listener event is triggered on the client side, and the called automation can contain interactive logic.
{
"eventId": "client.bpmn.process.change",
"eventContent": {
"app": {
"createAccountName": "Mr. Zeng",
"visitModuleKey": "listenWorkflow",
"designerPublishAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"color": "#9470DC",
"groupId": "qvwfhdf328lex",
"appDefineEditable": true,
"enableSaveProcessLog": false,
"icon": "noto-glowing-star",
"createAccountId": "ek5veueb6c9zg",
"appData": {
"taskNum": 0
},
"createAccountAvatar": "pic8.png",
"platform": "web",
"monitorAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr"],
"isInstance": false,
"logLevel": "DEBUG",
"isMaintained": false,
"dbIndex": 0,
"enableAppJsonLog": false,
"saveProcessLogTypes": [],
"isUnderPublish": false,
"id": "i1mwqy35y88hl",
"rowNumber": 1,
"appDefineBuild": 2488,
"appDefineId": "demoApp",
"envPropertyList": [
{
"id": "payID",
"value": "覆盖的值"
}
],
"isArchive": false,
"underPublishServerId": "informat-biz2-prd",
"appDefineVersion": "1.5",
"designerAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "lxx2gntjifxbh", "bt4tdzx8vtjoe"],
"saveProcessLogDays": 0,
"updateTime": 1719558525789,
"updateAccountId": "jsonlai",
"env": "dev",
"designerEditAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"badge": "重要",
"companyId": "icxt9rsd1f0ai",
"createTime": 1700628728441,
"hint": "gongnengyanshi-v1.5",
"name": "功能演示-v1.5",
"enableAppLog": false
},
"instanceId": "6f5771e7-351d-11ef-b137-a6c0b0be7615",
"query": {
"ri": "6f5771e7-351d-11ef-b137-a6c0b0be7615",
"appId": "i1mwqy35y88hl",
"moduleId": "ztkva3xsc2vbw"
},
"moduleId": "ztkva3xsc2vbw",
"type": "delete",
"user": {
"userInfo": {
"role": "admin",
"department": "销售部"
},
"leaderList": [],
"name": "赖泽城",
"companyRoleList": ["normal", "designer"],
"avatar": "8e321dac2d1e465f9b503360af87930e.jpg",
"id": "jsonlai",
"departmentList": ["root"],
"roleList": ["admin"]
},
"url": "https://next.informat.cn/app/i1mwqy35y88hl/bpmn/ztkva3xsc2vbw?ri=6f5771e7-351d-11ef-b137-a6c0b0be7615"
},
"id": "client.bpmn.process.change"
}After Data Table Record Creation (Client Triggered)
Triggered after data table records are created via user form submission or user workflow submission.
TIP
This listener event is triggered on the client side, and the called automation can contain interactive logic.
{
"eventId": "client.record.create.after",
"eventContent": {
"app": {
"createAccountName": "Mr. Zeng",
"visitModuleKey": "listenerData",
"designerPublishAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"color": "#9470DC",
"groupId": "qvwfhdf328lex",
"appDefineEditable": true,
"enableSaveProcessLog": false,
"icon": "noto-glowing-star",
"createAccountId": "ek5veueb6c9zg",
"appData": {
"taskNum": 0
},
"createAccountAvatar": "pic8.png",
"platform": "web",
"monitorAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr"],
"isInstance": false,
"logLevel": "DEBUG",
"isMaintained": false,
"dbIndex": 0,
"enableAppJsonLog": false,
"saveProcessLogTypes": [],
"isUnderPublish": false,
"id": "i1mwqy35y88hl",
"rowNumber": 1,
"appDefineBuild": 2488,
"appDefineId": "demoApp",
"envPropertyList": [
{
"id": "payID",
"value": "覆盖的值"
}
],
"isArchive": false,
"underPublishServerId": "informat-biz2-prd",
"appDefineVersion": "1.5",
"designerAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "lxx2gntjifxbh", "bt4tdzx8vtjoe"],
"saveProcessLogDays": 0,
"updateTime": 1719558525789,
"updateAccountId": "jsonlai",
"env": "dev",
"designerEditAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"badge": "重要",
"companyId": "icxt9rsd1f0ai",
"createTime": 1700628728441,
"hint": "gongnengyanshi-v1.5",
"name": "功能演示-v1.5",
"enableAppLog": false
},
"query": {
"appId": "i1mwqy35y88hl",
"moduleId": "snahtjpjwbz3f"
},
"tableId": "snahtjpjwbz3f",
"source": "form",
"user": {
"userInfo": {
"role": "admin",
"department": "销售部"
},
"leaderList": [],
"name": "赖泽城",
"companyRoleList": ["normal", "designer"],
"avatar": "8e321dac2d1e465f9b503360af87930e.jpg",
"id": "jsonlai",
"departmentList": ["root"],
"roleList": ["admin"]
},
"url": "https://next.informat.cn/app/i1mwqy35y88hl/table/snahtjpjwbz3f"
},
"id": "client.record.create.after"
}After Data Table Record Update (Client Triggered)
Triggered after data table records are updated via user form submission or user workflow submission.
TIP
This listener event is triggered on the client side, and the called automation can contain interactive logic.
{
"eventId": "client.record.update.after",
"eventContent": {
"app": {
"createAccountName": "Mr. Zeng",
"visitModuleKey": "listenerData",
"designerPublishAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"color": "#9470DC",
"groupId": "qvwfhdf328lex",
"appDefineEditable": true,
"enableSaveProcessLog": false,
"icon": "noto-glowing-star",
"createAccountId": "ek5veueb6c9zg",
"appData": {
"taskNum": 0
},
"createAccountAvatar": "pic8.png",
"platform": "web",
"monitorAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr"],
"isInstance": false,
"logLevel": "DEBUG",
"isMaintained": false,
"dbIndex": 0,
"enableAppJsonLog": false,
"saveProcessLogTypes": [],
"isUnderPublish": false,
"id": "i1mwqy35y88hl",
"rowNumber": 1,
"appDefineBuild": 2488,
"appDefineId": "demoApp",
"envPropertyList": [
{
"id": "payID",
"value": "覆盖的值"
}
],
"isArchive": false,
"underPublishServerId": "informat-biz2-prd",
"appDefineVersion": "1.5",
"designerAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "lxx2gntjifxbh", "bt4tdzx8vtjoe"],
"saveProcessLogDays": 0,
"updateTime": 1719558525789,
"updateAccountId": "jsonlai",
"env": "dev",
"designerEditAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"badge": "重要",
"companyId": "icxt9rsd1f0ai",
"createTime": 1700628728441,
"hint": "gongnengyanshi-v1.5",
"name": "功能演示-v1.5",
"enableAppLog": false
},
"recordList": ["c67wwyqeth1up"],
"query": {
"ri": "c67wwyqeth1up",
"appId": "i1mwqy35y88hl",
"moduleId": "snahtjpjwbz3f"
},
"tableId": "snahtjpjwbz3f",
"source": "form",
"user": {
"userInfo": {
"role": "admin",
"department": "销售部"
},
"leaderList": [],
"name": "赖泽城",
"companyRoleList": ["normal", "designer"],
"avatar": "8e321dac2d1e465f9b503360af87930e.jpg",
"id": "jsonlai",
"departmentList": ["root"],
"roleList": ["admin"]
},
"url": "https://next.informat.cn/app/i1mwqy35y88hl/table/snahtjpjwbz3f?ri=c67wwyqeth1up"
},
"id": "client.record.update.after"
}After Data Table Record Deletion (Client Triggered)
Triggered after data table records are deleted via user form submission or user workflow submission.
TIP
This listener event is triggered on the client side, and the called automation can contain interactive logic.
{
"eventId": "client.record.delete.after",
"eventContent": {
"app": {
"createAccountName": "Mr. Zeng",
"visitModuleKey": "listenerData",
"designerPublishAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"color": "#9470DC",
"groupId": "qvwfhdf328lex",
"appDefineEditable": true,
"enableSaveProcessLog": false,
"icon": "noto-glowing-star",
"createAccountId": "ek5veueb6c9zg",
"appData": {
"taskNum": 0
},
"createAccountAvatar": "pic8.png",
"platform": "web",
"monitorAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr"],
"isInstance": false,
"logLevel": "DEBUG",
"isMaintained": false,
"dbIndex": 0,
"enableAppJsonLog": false,
"saveProcessLogTypes": [],
"isUnderPublish": false,
"id": "i1mwqy35y88hl",
"rowNumber": 1,
"appDefineBuild": 2488,
"appDefineId": "demoApp",
"envPropertyList": [
{
"id": "payID",
"value": "覆盖的值"
}
],
"isArchive": false,
"underPublishServerId": "informat-biz2-prd",
"appDefineVersion": "1.5",
"designerAccountList": ["xwi9jogl4fcx4", "skydu", "nx8hcjsq4xk8z", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "lxx2gntjifxbh", "bt4tdzx8vtjoe"],
"saveProcessLogDays": 0,
"updateTime": 1719558525789,
"updateAccountId": "jsonlai",
"env": "dev",
"designerEditAccountList": ["xwi9jogl4fcx4", "skydu", "jsonlai", "yvkc2kwpy3xzr", "skydu2", "nx8hcjsq4xk8z"],
"badge": "重要",
"companyId": "icxt9rsd1f0ai",
"createTime": 1700628728441,
"hint": "gongnengyanshi-v1.5",
"name": "功能演示-v1.5",
"enableAppLog": false
},
"recordList": ["c67wwyqeth1up"],
"query": {
"appId": "i1mwqy35y88hl",
"moduleId": "snahtjpjwbz3f"
},
"tableId": "snahtjpjwbz3f",
"user": {
"userInfo": {
"role": "admin",
"department": "销售部"
},
"leaderList": [],
"name": "赖泽城",
"companyRoleList": ["normal", "designer"],
"avatar": "8e321dac2d1e465f9b503360af87930e.jpg",
"id": "jsonlai",
"departmentList": ["root"],
"roleList": ["admin"]
},
"url": "https://next.informat.cn/app/i1mwqy35y88hl/table/snahtjpjwbz3f?ri"
},
"id": "client.record.delete.after"
}
