Summary
What this framework is and who it is for
This framework is a reference graph for a social post approval pipeline: a workflow that takes a content brief as input, uses an AI agent to draft post copy, runs an automated brand safety check, routes the draft through one or two human review stages, and hands off the approved post to a publishing system or a human scheduler.
It is designed for social media teams, content operations teams, and marketing agencies that publish at volume and need a repeatable, auditable process rather than a chain of Slack messages and shared spreadsheets. The framework is equally useful for a two-person team that wants a lightweight approval gate and a ten-person team that needs multi-stage sign-off with compliance documentation.
Every node in this framework maps directly to a node type you drag from the Node Palette in the DAVE Workflow Editor. No code is required to build it. You will need the Admin or Curate role to build and save the workflow. Users with the Use role can run instances and complete the human tasks within it, including submitting briefs and approving drafts.
The framework is a starting point. The node types are fixed: DAVE ships ten node types and this framework uses eight of them. What you adapt is the configuration inside each node, the number of review stages, and the delivery mechanism at the end.
The complete node graph
The social post approval workflow uses nine nodes connected by directed edges. Place them on the canvas in the order below, working top to bottom. Connect them by dragging from the source handle (bottom circle) of each node to the target handle (top circle) of the next.
Start (
start, green). The entry point. Every workflow requires exactly one Start node. No configuration is needed. All execution flows out from this node.Collect Brief (
user_interaction, blue). Pauses the workflow and creates a human task for the person commissioning the post. They provide the brief: platform (LinkedIn, X, Instagram, etc.), topic, tone, target audience, key message, any mandatory inclusions or exclusions, and the target publish date. Configure the User Assignment section in the Properties Panel to assign this task to the commissioning user or role. Configure the Fields section to capture the brief as structured data that the downstream agent node can read from the workflow context. In the Notifications section, set the mode to Use workspace rule: this is a first-touch task and standard notification behaviour is appropriate.Draft Copy Agent (
agent_interaction, purple). Invokes an AI agent automatically. The agent reads the brief from the workflow context and drafts post copy: the caption, any hashtags, a suggested call to action, and optionally a prompt for the accompanying image or video. The agent writes its output back to the workflow context. No human task is created at this step. Configure the Agent Assignment section to select the agent responsible for copy drafting. This node runs without human involvement and completes as soon as the agent returns a result.Brand Safety Check (
agent_review, pink). An AI-powered automated quality check. A second agent evaluates the drafted copy against defined criteria: brand voice consistency, prohibited terms, regulatory compliance for the relevant platform, and absence of factual claims that cannot be substantiated. The agent returns a pass or fail result on its output port. No human task is created. Configure the Agent Assignment section with a review agent configured for brand safety evaluation. The pass and fail output ports feed the next node.Route on Safety (
routing, purple). A logic-only branching node. It reads the pass/fail result from the Brand Safety Check node and routes execution down one of two paths: pass routes to the Human Review gate; fail routes back to the Draft Copy Agent to regenerate the copy. Configure the Routing Configuration section with two output ports: one for the pass condition and one for the fail condition, evaluated against the safety check result field in the workflow context. This node creates no tasks and invokes no agents. To prevent an infinite revision loop, add a counter field to the workflow context and a routing rule that escalates to the Human Review node after a configurable number of failed safety checks.Social Media Manager Review (
human_review, amber). Creates a review task for the social media manager or content lead. They read the drafted copy and the brief from the workflow context and make one of three decisions: Approve (the copy is ready for final sign-off or publishing), Reject (the copy needs to be redrafted from scratch), or Request Changes (the copy needs targeted revision). Configure the User Assignment section to assign this task to the appropriate reviewer or role. In the Notifications section, set the mode to Custom audience and select the task assignee: this ensures the reviewer is notified promptly without relying on the workspace default. Connect three outgoing edges: Approve to the next node, Reject back to the Draft Copy Agent, and Request Changes back to the Draft Copy Agent with a context field indicating the specific changes required.Final Approver Review (
human_review, amber). A second human review gate for teams that require senior or legal sign-off before publishing. The final approver sees the copy and the social media manager's approval in the workflow context. Decisions: Approve (proceed to publishing handoff), Reject (return to drafting), or Request Changes (return to the social media manager for revision). Configure the User Assignment section to assign this task to the final approver or role. In the Notifications section, set the mode to No notification if this step fires at high frequency and would otherwise generate excessive email: the approver can monitor their Task Inbox directly instead. Connect three outgoing edges as above. If your team does not require a second approval stage, omit this node and connect the Social Media Manager Review's Approve edge directly to the Publish Handoff node.Publish Handoff (
api_call, cyan). Calls an external REST API to deliver the approved post copy to a scheduling or publishing system. This might post to a social media scheduling tool, a content calendar API, a CMS, or an internal publishing queue. Configure the API Configuration section with the method, URL, authentication headers, body template (referencing the approved copy and metadata from the workflow context), and response mapping. If you do not use a scheduling API, replace this node with a User Interaction node that presents the final approved copy to the scheduler for manual publishing.End (
end, red). The terminal node. Marks workflow completion. Connect the outgoing edge from the Publish Handoff node to this node. The workflow instance moves tocompletedstatus when execution reaches the End node.
Total: 9 nodes, connected by directed edges. The graph contains two feedback loops: Route on Safety back to Draft Copy Agent on a fail result, and both Human Review nodes back to Draft Copy Agent on a Reject decision.
Notification strategy for high-frequency approval workflows
Social post approval workflows often run at high volume: a busy team may generate dozens of approval tasks per day. Without deliberate notification configuration, every task assignment triggers an email, and reviewers quickly start ignoring them. DAVE gives you per-node notification control so you can match notification intensity to task urgency without changing the workspace-wide rule.
Each User Interaction and Human Review node has a Notifications section in the Properties Panel with three modes:
- Use workspace rule: the default. The node follows whatever the workspace has configured at Settings, then Notifications, then Events for the
task.assignedevent. Use this for first-touch tasks (like the Collect Brief node) where standard notification behaviour is appropriate. - No notification: this step never sends a notification, even when the workspace rule is on. Use this for high-frequency intermediate approval steps where email volume would otherwise become noise. Reviewers monitor their Task Inbox directly.
- Custom audience: this step notifies its own audience instead of following the workspace rule. Options include the task assignee, the instance owner, instance participants, or workspace admins. Use this for the primary review gate (the Social Media Manager Review node) where you want to ensure the reviewer is notified promptly regardless of the workspace default.
The notification setting is stored on the node and travels with the workflow version. Publishing a new version carries the setting forward; older versions keep the behaviour they were saved with. If you select Custom audience and clear every option, the node sends nothing: the Properties Panel warns you rather than failing silently at runtime.
A practical configuration for this framework: set Collect Brief to Use workspace rule, Social Media Manager Review to Custom audience (task assignee), and Final Approver Review to No notification if the approver prefers to work from their inbox on a schedule.
Building this workflow in the Workflow Editor
Navigate to Workflows in the sidebar. Click New Workflow, enter a name such as "Social Post Approval", and click Create Workflow. Click the workflow name link to open the Workflow Editor.
The editor opens with a blank canvas and a three-panel layout: the Node Palette on the left, the canvas in the centre, and the Properties Panel on the right (visible when a node is selected). A dot-grid background and a mini-map in the bottom-right corner help you orient the graph as it grows.
Step-by-step build order:
- Drag a Start node from the Node Palette onto the top of the canvas.
- Drag each subsequent node type from the palette in the order listed in the node graph above, placing each one below the previous. The node/edge counter in the top-right badge updates as you add each node.
- Rename each node immediately after dropping it: click the node to open the Properties Panel, edit the Label field to match the name in the framework (for example, change "Human Review" to "Social Media Manager Review"), and click away to confirm.
- Connect nodes by hovering over the source handle (bottom circle) of the upstream node, dragging to the target handle (top circle) of the downstream node, and releasing. The edge appears as an animated line.
- For the feedback loops, draw edges from the fail port of the Route on Safety node back up to the Draft Copy Agent node, and from the Reject port of each Human Review node back to the Draft Copy Agent. Use the mini-map to navigate if the canvas becomes large.
- Configure each node by clicking it and working through the Properties Panel sections: Label, Agent Assignment (agent nodes), User Assignment and Notifications (interaction and review nodes), Fields, Routing Configuration (Routing node), and API Configuration (API Call node).
- Add Information nodes next to the feedback loops to document the revision logic for future editors. Information nodes have no effect on execution.
- Click Save Version in the top-right corner. Each click creates a new immutable snapshot. Save frequently: the editor does not auto-save and there is no confirmation prompt when navigating away.
Once the workflow has at least one saved version, change its status from draft to active in the Workflows list page to make it available for instantiation. Test with a draft instance before activating.
Frequently asked questions
Do I need two Human Review nodes, or can I use just one?
One is sufficient for most teams. The second Human Review node (Final Approver Review) is for teams that require a separate senior or legal sign-off before publishing. If your social media manager has full approval authority, omit the Final Approver Review node and connect the Social Media Manager Review's Approve edge directly to the Publish Handoff node. The framework is a starting point: remove what you do not need.
What happens if the Brand Safety Check agent always returns a fail result?
The Route on Safety node will keep routing execution back to the Draft Copy Agent. To prevent an infinite loop, add a counter field to the workflow context and a routing rule that escalates to the Social Media Manager Review node after a configurable number of failed safety checks. The reviewer can then decide whether to approve the copy manually or abandon the instance.
Can I run multiple social post approval instances simultaneously?
Yes. Each instance is an independent execution of the workflow version. Multiple instances can run in parallel without interfering with each other. Each maintains its own context, tasks, and status. This is the normal operating mode for a team publishing multiple posts per day.
Who can build this workflow?
Only users with the Admin or Curate role can open the Workflow Editor, add and connect nodes, and save versions. Users with the Use role can run instances and complete human tasks (the Collect Brief, Social Media Manager Review, and Final Approver Review steps) but cannot edit the workflow graph.
How do I handle platform-specific variants, for example a LinkedIn version and an Instagram version of the same post?
Two approaches. First, add a second Draft Copy Agent node in parallel after the Collect Brief node, one configured for each platform, and merge their outputs before the Brand Safety Check. Second, run separate instances of the same workflow for each platform, with the brief specifying the target platform. The second approach is simpler to build and easier to audit.
What node type should I use if I want to post a Slack notification when a post is approved?
Use an API Call node (api_call, cyan) placed between the final Human Review node and the End node. Configure the API Configuration section with Slack's incoming webhook URL as the endpoint, POST as the method, and a body template that references the approved copy from the workflow context. The API Call node sends the HTTP request automatically when the instance reaches it, with no human task required.
Can I see a full audit trail of who approved each post?
Yes. Every task decision (Approve, Reject, or Request Changes) is recorded in the tenant audit log with the acting user's identity, the decision, and a timestamp. All workflow state transitions are also logged. When SOC 2 or GDPR compliance modes are active, these events carry the applicable compliance tags. The audit trail is available to Admin users and is independent of the instance detail page, so it persists even after the instance is archived.