Agent setup guide
Sponsor Deliverables Tracker
Your brand-deal deliverables in Notion: Slack reminders from 3 days before each due date, then a proof-of-post email to the sponsor, after your approval.
What it does
Your brand-deal deliverables in Notion: Slack reminders from 3 days before each due date, then a proof-of-post email to the sponsor, after your approval.
- Every morning, reads your Notion deliverables database and finds, in code, the deliverables due in the next 3 days or overdue that aren't Posted yet.
- Reminds you in Slack with the brand, the due date, the days left and the Notion link.
- For each deliverable you set to Posted, AI drafts a short proof-of-post email for the sponsor from your proof links and the agreed terms, with no invented numbers.
- You approve the emails; each is checked in code, emailed with replies to you, and its page is set to Reported.
- Dates are worked out in code, never by the AI: days until or since each date, the window and business days are computed in your workflow's time zone, and records outside the window are skipped before the AI sees them.
- The summary is counted in code from what each step really did (sent, held, skipped, failed), so it never reports a held message as sent.
What it needs
- A paid plan (agents run live on paid plans).
- An AI provider key (Settings → AI Providers).
- Notion and Slack, connected in Settings → Integrations.
- A Notion database with Name (title), Brand (text), Due (date), Status (select: Planned, Posted, Reported), Proof link (URL), Sponsor email (email), Terms (text).
What it doesn't do
- No social analytics: it never states views, reach or results; it lists the proof links you paste.
- It doesn't post content or read your social accounts.
- Nothing is emailed to a sponsor without your approval.
Availability and plans
Available
Its workflow is built and tested, and every app it needs is live. You can get it and set it up now.
Included free on the Enterprise plan; on other paid plans it's a one-time purchase per workspace (the price is on the Agents page). The Agents page in the app always shows its current status.
Before you start
- A paid plan: agents run live, and the Free plan only runs Dry Runs.
- An AI provider key (OpenAI, Anthropic, Google and more) in Settings → AI Providers. AI usage is billed by your provider.
- These apps, connected in Settings → Integrations: Notion and Slack.
- Nothing to send: the agent runs on a schedule.
- About 15 minutes.
Set it up step by step
Get the agent first (buy it, or it's already yours when your plan includes it), then in Agents → My agents press “Set up this agent”. That creates the agent's workflow in your workspace (it counts towards your plan's workflow limit) and opens the canvas with a setup checklist above it. Each item links to the exact place to go and ticks itself off when it's done.
1. Connect your AI provider
The AI steps run on your own key (OpenAI, Anthropic, Google and more). Add one in Settings → AI Providers.
2. Connect Notion
Connect Notion (Settings → Integrations → Notion) and share your deliverables database with it.
3. Connect Slack
Connect the Slack workspace you use (Settings → Integrations → Slack).
4. Pick your deliverables database
Open “Read open deliverables”, “Read posted deliverables” and “Mark it Reported” and pick the account and database.
| Setting | What to enter | In step |
|---|---|---|
| Notion account | The Notion workspace with your deliverables database. Pick your connected Notion account. | “Read open deliverables” |
| Deliverables database | Pick your deliverables database (share it with Fluxo Flow first). | “Read open deliverables” |
| Notion account (posted, same one) | The same Notion workspace. Pick your connected Notion account. | “Read posted deliverables” |
| Deliverables database (same one) | The same database. | “Read posted deliverables” |
| Notion account (mark Reported, same one) | The same Notion workspace. Pick your connected Notion account. | “Mark it Reported” |
5. Pick the Slack channels
Open “Remind you in Slack” and “Post the summary to Slack” and pick the account and channels.
| Setting | What to enter | In step |
|---|---|---|
| Slack account | The Slack workspace you use. Pick your connected Slack account. | “Remind you in Slack” |
| Slack channel for reminders | Where reminders go, e.g. #brand-deals. | “Remind you in Slack” |
| Slack account (summary, same one) | The same Slack workspace. Pick your connected Slack account. | “Post the summary to Slack” |
| Slack channel for the summary | Where the daily summary of sent emails goes (it can be the same channel). | “Post the summary to Slack” |
6. Add your sign-off
Open “Draft the proof-of-post email” and replace the placeholder, then enter the Reply-to on “Email the sponsor”.
| Setting | What to enter | In step |
|---|---|---|
| Your name and sign-off | Replace the placeholder with your creator or channel name, tone with brands, what a proof-of-post email should include and your sign-off. It starts as “[YOUR CREATOR OR CHANNEL NAME, YOUR TONE WITH BRANDS, WHAT A PROOF-OF-POST EMAIL SHOULD INCLUDE, YOUR SIGN-OFF AND CONTACT DETAILS]” until you replace it. | “Draft the proof-of-post email” |
| Your email (sponsor replies) | Sponsors' replies come back to this address. | “Email the sponsor” |
7. Test it with Dry Run
Press Dry Run: the agent runs on sample data with no messages sent and nothing written to your apps.
8. Switch the trigger on
Open the trigger, set your time zone and switch the schedule on. It runs every day at 9:00.
How it works
The agent is a normal workflow with 24 steps (1 AI step, with a person approving in Reviews). You can open, edit and monitor it like any other workflow.
- Every day at 9:00 — Runs on a schedule (cron 0 9 * * *, UTC — change it in the trigger's settings). Runs every morning. Set your time zone on the trigger: due dates are judged in that zone.
- Read open deliverables — Notion: Query a database. Reads deliverables in your Notion database that aren't Posted or Reported yet.
- Due soon or overdue? — Step. In code, not AI: keeps deliverables due in the next 3 days (today included) or already overdue. Change the 3 days here (within.max).
- Each deliverable due — Repeats the steps below for each item (up to 30 per run). One reminder per deliverable (up to 30).
- [For each item — “Each deliverable due”] Remind you in Slack — Slack: Post a message. Posts the deliverable, the brand and how many days are left (counted in code) with its Notion link.
- Read posted deliverables — Notion: Query a database. Reads deliverables you marked Posted (with their proof links).
- Each posted deliverable — Repeats the steps below for each item (up to 20 per run). Drafts a proof-of-post email for each (up to 20).
- [For each item — “Each posted deliverable”] Draft the proof-of-post email — AI step (runs on your AI provider key). AI drafts a short proof-of-post email for the sponsor from the deliverable, the agreed terms and the proof links you pasted. It has no access to views or analytics.
- Anything posted? — Decision: picks the branch to follow. In code: no posted deliverables means nothing to approve today.
- Nothing to report — Kept in the run history. Branch: Nothing posted. Reminders only today.
- Approve the proof-of-post emails — A person approves or rejects it in Reviews (the run waits). Branch: Emails to approve. Each posted deliverable's email waits here: check the links and wording, set send to false on any that shouldn't go, and approve.
- Each approved email — Repeats the steps below for each item (up to 20 per run). Branch: Approved. Checks, sends and updates Notion for every approved email.
- [For each item — “Each approved email”] Check before sending — Step. In code: marked to send, one valid sponsor email, the Notion page id and no placeholders.
- [For each item — “Each approved email”] Send it? — Decision: picks the branch to follow. Passes: emailed and marked Reported in Notion. Otherwise held.
- [For each item — “Each approved email”] Held — Kept in the run history. Branch: Held. Missing proof link or sponsor email, or set to not send; listed in the summary.
- [For each item — “Each approved email”] Already reported? — Recalls what it remembered earlier (memory “sponsor-deliverables-tracker”). Branch: Passes. Remembers every deliverable already reported (kept a year), so an older batch approved late never emails the sponsor twice.
- [For each item — “Each approved email”] New? — Decision: picks the branch to follow. Already reported: skipped.
- [For each item — “Each approved email”] Already reported — Kept in the run history. Branch: Already reported. This deliverable was already reported; nothing was sent.
- [For each item — “Each approved email”] Email the sponsor — Sends an email from your workspace's sender. Branch: New. Sends the approved proof-of-post email, with replies to you.
- [For each item — “Each approved email”] Mark it Reported — Notion: Update page properties. Sets the deliverable's Status to Reported in Notion, so it's emailed once.
- [For each item — “Each approved email”] Remember the report — Remembers it for later runs (memory “sponsor-deliverables-tracker”, kept 365 days). Marks this deliverable as reported for a year.
- Count what happened — Step. In code, not AI: proof-of-post emails sent and held.
- Post the summary to Slack — Slack: Post a message. Posts what was sent and held (counted in code) to your channel.
- Done — Kept in the run history. The run history keeps the reminders, emails and summary.
Test it with Dry Run
Press Dry Run in the canvas. The agent runs on the sample data stored on its trigger (the “Sample data for Dry Run” box), so you can check every step's output before anything is live.
- Nothing is sent or written: app actions, emails and Slack posts are simulated, and AI steps don't call your AI provider.
- Approval steps use the Dry Run decision you pick in the step's settings (approved, rejected or timeout), so you can try each branch.
- For-each loops repeat only the first 3 items.
- Memory steps don't read or write stored memory: a recall finds nothing, and a save only shows what it would store.
Go live
- Open the trigger, set your time zone and switch the schedule on. It runs every day at 9:00.
- Scheduled runs start only once the schedule is activated, and can't repeat faster than your plan's minimum interval.
- The setup checklist adds a “paid plan” item before activation: live runs need a paid plan (the Free plan only runs Dry Runs).
- When every checklist item is done and the trigger is on, the checklist says “Live — this agent is running”. Follow its runs in the workflow's History tab and in Analytics → Agents.
Questions
Can it pull views or engagement for the report?
No. It has no access to social analytics; the email lists your proof links and offers to send stats when you have them.
How often am I reminded?
Every morning from 3 days before the due date until you set Status to Posted, including overdue days.
What must my Notion database look like?
Name (title), Brand (text), Due (date), Status (select: Planned, Posted, Reported), Proof link (URL), Sponsor email (email), Terms (text). Status must be a Select property with those option names.
Troubleshooting
- “No AI provider connected” or a rejected key: connect or fix the key in Settings → AI Providers, then press Test there.
- A checklist item stays unticked: the setting is still empty or still contains its placeholder text. Open the step from the checklist and fill it in.
- An app step fails with “Needs reconnect”: the account's access was revoked or expired. Reconnect it in Settings → Integrations.
- Slack says the app isn't in the channel: in Slack, type /invite @Fluxo Flow in that channel (always needed for private channels).
- It didn't run at the expected time: the schedule must be activated, and its time is in the trigger's timezone.
- A run shows as paused: it's waiting for someone in Reviews to approve or reject it.
- A step failed: open the run in History and check that step in the Trace tab for the error and what it received.
Generated from the agent's own workflow, so it always matches what the agent does. Last updated .