Build
Give people tasks in Duaer with the tasks table
In Duaer, every project comes with one built-in data table named Duaer tasks. A digital organization inserts a row to assign a task, push a decision card, or write a note. When the person clicks Done or picks an option in the Duaer employee portal, the result is written back to that row and a waiting digital organization continues.
The built-in Duaer tasks table
Every Duaer project comes with one Duaer tasks table. You do not create it, and the data tables list marks it Built-in. The table is locked: it cannot be deleted or renamed, and its columns cannot be added, removed, or renamed. Only rows change.
- assignee: the email the person signs in with, lowercase, matched exactly
- title: one line saying what to do
- detail: optional context
- due: optional deadline
- status: open when created; done after the person clicks Done or picks an option, later after Not today
- link: optional related link, shown only for http or https
- resume_url: optional, the continue address of a waiting digital organization
- done_at: when the person clicked Done, decided, or put it off, filled in by Duaer
- done_by: the email of the person who did it, filled in by Duaer
- kind, pressure: a short tag on the card (such as Stock) and what gets worse if it waits (such as Sold out by the weekend)
- urgent, rank: urgent cards come first, then higher rank
- rule: the line that was crossed, such as Stock below safety level
- facts: JSON, up to 8 label and value pairs
- change: JSON {"from", "to", "note"}, what changed, drawn as from → to instead of facts
- reading, basis: two or three sentences on what the facts mean, and where they came from
- actions: JSON, up to 4 next steps the person can pick
- choice: the id of the option the person picked, filled in by Duaer
- lane: read or quiet for a note; empty for tasks and cards
A row without actions is a plain task the person marks Done. A row with actions is a decision card where the person picks one option. A row with lane set is a note that is only shown.
Assign a Duaer task from a digital organization
- Add a Data table node, select Duaer tasks, and choose Insert.
- Set assignee to the person’s email, for example {{ $json.email.toLowerCase() }}, title to what to do, and status to open. Fill due, detail, and link as needed.
- After the run, the task shows on the home page of that person’s Duaer employee portal, across every project in the organization, ordered by urgent, rank, then due, overdue in red.
[
{
"assignee": "li.na@acme.com",
"title": "Review the September receivables statement",
"detail": "37 statements in the East region, 4,210 total difference",
"due": "2026-10-08T10:00:00.000Z",
"status": "open",
"resume_url": "{{ $execution.resumeUrl }}"
}
]The person must be a member of the organization; inviting them as Employee is enough. You can also ask Duaer Designer to build it: say who gets the task, what to do, and whether to wait until they finish.
Continue after the person is done
- In the Insert node, set resume_url to {{ $execution.resumeUrl }}.
- Follow it with a Wait node: Resume On Webhook Call, HTTP Method POST. Turn on Limit Wait Time when there is a deadline.
- When the person clicks Done, Duaer calls that address and the digital organization continues from the Wait node. The Wait node output body has taskId (the task row id) and doneBy (the email of the person who clicked Done).
Duaer only calls addresses that point at a waiting execution on this instance, so always use {{ $execution.resumeUrl }}, never a hand-written or external address.
Push a Duaer decision card
The Duaer employee portal speaks first: the person opens it and sees what needs their call today, and what each option would do. Options are fixed when you build the workflow; the person can only pick one. Each step does one thing:
- Schedule Trigger: run at the hour the person starts work.
- Read: a Data table, database, or HTTP node reads the numbers the rule needs.
- Rule: one Filter or IF node keeps only what crossed the line. Nothing crossed means no card; you can write a quiet note instead.
- Facts: one Set node computes the numbers shown on the card. When the line crossed is a change (for example a column header renamed from Tracking no. to Waybill no.), write change instead.
- Reading: one AI step writes reading and basis from those facts only. It does not choose or add options.
- Card: Insert into Duaer tasks with title, kind, pressure, urgent, rule, facts, reading, basis, and actions, status open, and resume_url {{ $execution.resumeUrl }}.
- Wait: Resume On Webhook Call, HTTP Method POST, with Limit Wait Time on.
- Switch: branch on {{ $json.body.choice }}, one output per option id.
- Each branch does only the one step its option’s hint promised, then ends.
[
{
"assignee": "li.na@acme.com",
"kind": "Stock",
"urgent": true,
"pressure": "Sold out by the weekend",
"title": "Longjing 50g covers only 2.1 days",
"rule": "Stock below safety level",
"facts": "{\"On hand\":\"13 boxes\",\"14-day daily average\":\"6.4 boxes\",\"Lead time\":\"4 days\"}",
"reading": "Not slow-moving. With a 4-day lead time, no reorder today means it sells out this weekend.",
"basis": "Stock table, last 14 days of orders",
"actions": "[{\"id\":\"draft\",\"label\":\"Draft a reorder of 40\",\"hint\":\"Writes a purchase draft for 40 boxes. Nothing is sent to the supplier.\"},{\"id\":\"stop\",\"label\":\"Stop restocking\",\"hint\":\"Marks this item as no restock. No more alerts after it sells out.\"}]",
"status": "open",
"resume_url": "{{ $execution.resumeUrl }}"
}
]Write each option in actions as {"id", "label", "hint"}: id is what the Switch matches, label is the button text, and hint is one sentence on what the step does and does not touch, shown before the person clicks. The first option is drawn as the primary button, so put the safest one first. When the person picks, Duaer writes choice, sets status to done, and continues the execution with {"taskId", "doneBy", "choice"}. A decision cannot be undone. Not today only sets status to later and runs nothing; the person can take it back the same day. Duaer Designer can build this for you.
Write Duaer notes
Notes tell the person what the digital organization looked at and what is fine. Insert a row with assignee, title, and lane set to read (Checked overnight, such as Orders, 90 days, 1,284 rows) or quiet (All normal, such as 81 items cover 7+ days). Notes show beside the queue on the Duaer employee portal home page only on the day they are written, in the order written, with no buttons and no status.
Where to see Duaer task results
- Tasks table: open the project › Data tables › Duaer tasks. The row’s status is done, done_at and done_by record when and who, and choice on a decision card records which option was picked.
- Employee portal: a completed plain task no longer shows; a decided card moves to Decided, marked Done.
- Digital organization: for a task with resume_url, that execution in the executions list goes from waiting to running again, and the Wait node output is the completion feedback.
- Employee portal: if the workflow cannot continue (for example the execution already ended or was canceled), the person sees “Marked done. The workflow did not continue.” The task is still recorded as done.
To act on completed tasks without keeping an execution waiting, leave resume_url empty and add a scheduled digital organization that reads rows whose status is done.
Questions
Does Duaer delete the task row when someone clicks Done?
No. Duaer only sets status to done and fills in done_at and done_by. The row stays in the Duaer tasks table.
Can I give a Duaer task to someone outside the organization?
No. Only members of the organization can sign in to its Duaer employee portal. Invite them under Duaer Settings › Organization first; the Employee role is enough.
Can a person undo a decision in the Duaer employee portal?
No. Duaer continues that one branch as soon as the option is picked, and the card is marked Done. Only a card put off with Not today can be taken back the same day.
In this section
Give employees their own Duaer employee portal
The Duaer employee portal is a separate sign-in address for each organization. Employees see the tasks and decisions digital organizations push to them and the metrics they follow, and can ask Duaer about them, without opening the workflow editor.
NodesPause with the Wait node in Duaer
In Duaer, Wait defaults to Resume After Time Interval. On the current version, Wait Amount defaults to 5 and Wait Unit defaults to Seconds.
DataKeep rows in a Duaer data table
In Duaer, a data table lives in the current project. Rows one digital organization writes can be read by another in the same project.
ManageRead executions in Duaer
In Duaer, one execution is one run of a digital organization. The Executions list shows success, error, canceled, running, queued, and waiting.