Skip to content
Weave templates

Approval Workflow

Request → Review → Decision → Approve / Reject path.

Template previewWeave
Rendering…

Make it your own.

{
  "nodes": [
    { "id": "pool",  "type": "pool",     "label": "Purchase Approval Process", "x": 0,  "y": 0,   "width": 1060, "height": 500, "fill": "rgba(241,245,249,0.45)", "stroke": "#475569" },
    { "id": "lane1", "type": "swimlane", "label": "Requester", "x": 12, "y": 42,  "width": 1036, "height": 144, "fill": "rgba(219,234,254,0.22)", "stroke": "#2563eb" },
    { "id": "lane2", "type": "swimlane", "label": "Manager",   "x": 12, "y": 192, "width": 1036, "height": 144, "fill": "rgba(254,243,199,0.22)", "stroke": "#a16207" },
    { "id": "lane3", "type": "swimlane", "label": "Finance",   "x": 12, "y": 342, "width": 1036, "height": 144, "fill": "rgba(220,252,231,0.22)", "stroke": "#15803d" },
    { "id": "n1", "type": "stadium", "label": "Submit request",  "x": 80,  "y": 80,  "fill": "#dcfce7", "stroke": "#15803d" },
    { "id": "n2", "type": "rounded", "label": "Review request",  "x": 270, "y": 230, "fill": "#dbeafe", "stroke": "#1d4ed8" },
    { "id": "n3", "type": "diamond", "label": "Approved?",       "x": 500, "y": 222, "fill": "#fef3c7", "stroke": "#a16207" },
    { "id": "n6", "type": "rounded", "label": "Notify rejection","x": 700, "y": 80,  "fill": "#fee2e2", "stroke": "#b91c1c" },
    { "id": "n4", "type": "rounded", "label": "Process payment", "x": 700, "y": 380, "fill": "#dcfce7", "stroke": "#15803d" },
    { "id": "n5", "type": "stadium", "label": "Confirm & close", "x": 890, "y": 380, "fill": "#dcfce7", "stroke": "#15803d" }
  ],
  "edges": [
    { "id": "e1", "source": "n1", "target": "n2", "label": "submit" },
    { "id": "e2", "source": "n2", "target": "n3" },
    { "id": "e3", "source": "n3", "target": "n4", "label": "approved" },
    { "id": "e4", "source": "n4", "target": "n5" },
    { "id": "e5", "source": "n3", "target": "n6", "label": "rejected", "style": "dashed" }
  ]
}