Thanks.io
CommunicationSend handwritten-style postcards, notecards, letters, and gift cards by post with Thanks.io and track each piece through delivery. Agents trigger physical mail off a milestone and see when it lands.
What This Integration Enables
Thanks.io posts handwritten-style postcards, notecards, letters and gift cards, and the reason to build a flow on it rather than on any other mailer is that each individual piece reports back. Statuses run through Processing, Printed, Shipped, In Transit, In Local Area, Processed for Delivery, and then to Delivered, Returned to Sender or Failed. A FlowRunner agent can therefore treat a card as an event with a landing time instead of an item that vanishes into the post.
That changes what mail is for. If you know the day a card arrives, the follow-up call, the email, and the rep's reminder can all be timed to the moment the recipient is holding it, which is the only moment direct mail is actually competing for attention on its own terms. The connector also covers saved mailing lists, bulk recipient import, and per-piece tracking with Track Order, which surfaces the pieces that failed with the postal service's reason attached. Note that the webhooks behind the triggers are a paid-plan feature.
Without FlowRunner
With FlowRunner
Use Case Scenarios
A win-back run against a saved list
A segment in Salesforce refreshes overnight. Rather than passing recipients inline, the flow uses a saved Thanks.io mailing list so the same audience can be reused across runs. Before sending, the agent calls List Mailing List Recipients to enumerate the list as it stands today, reconciles it against the opt-out register, and calls Delete Recipient for anyone who should not be there. Preview Only renders the notecard proof without creating an order. The owner confirms the list and approves, and the agent calls Send Notecard. The notecard is used deliberately here rather than a postcard, because the message is hidden until the envelope is opened.
Follow-up timed to the doormat
On Mail Piece Delivered fires per piece, carrying the recipient and the delivery date. The agent writes the delivery date onto the CRM record, reopens the account, and posts the day's landed pieces into the sales channel in Slack with the account context attached. The rep sees a short list of people who are holding a card from them today and decides which ones are worth a call. The agent does not book the calls, because deciding where a rep spends an hour is not a routing problem, it is a judgement about which relationship is worth the time.
Gift cards and the pieces that come back
A win-back gesture goes out with Send Gift Card, carrying a named brand at a permitted denomination. Some of those pieces will come back: Track Order reports counts for processing, printed, in transit, delivered, returned to sender and failed, with per-piece errors such as an address the postal service cannot deliver to. Each returned piece is stored value that reached nobody. The agent collects them, attaches the postal reason and the CRM record, and asks the campaign owner what to do with each: reissue to a corrected address, mark the contact as unreachable, or write it off. It does not silently reissue, because reissuing is a second charge against a record that has already proven to be wrong.
Human-in-Loop Highlight
The gate is on which list, and it exists because of an unusually small piece of API surface. Every send action here accepts either recipients listed inline or the ID of a saved mailing list, which means one integer decides whether twelve people or twelve thousand receive post. An inline send is auditable by reading the flow. A list ID is not: the audience lives on Thanks.io's side and can have been imported, deduplicated or bulk-loaded since anyone last looked at it. So before Send Postcard, Send Notecard, Send Letter or Send Gift Card runs against a saved list, the agent enumerates it with List Mailing List Recipients and asks: "Sending the Q3 win-back notecard to list Lapsed 2025, which currently holds 1,180 recipients, up from 940 at the last run. 22 of them appear on the opt-out register and have been removed. Proof attached. Confirm the list and send?" Cancel Order only works while an order is still in review, before it goes to print, so this question is asked before the send rather than raced against it. The human-in-the-loop step here is not approving the words. It is approving who gets them.
Agent Capabilities
14 actionsSending Mail
4- Send Postcard Sends a physical postcard with a handwritten-style message to one or more recipients, either listed inline or drawn from a saved mailing list. This bills the account and puts real mail in the post. Preview renders proof images and returns them without creating an order or charging anything.
- Send Notecard Sends a folded notecard in an envelope with a handwritten-style message. The message is hidden until the envelope is opened, which is the reason to choose it over a postcard. Preview Only checks the artwork first.
- Send Letter Sends a letter in a windowed envelope, optionally appending extra PDF pages or replacing the generated letter entirely with your own PDF. Preview Only checks the artwork first.
- Send Gift Card Sends a physical card carrying a gift card from a named brand, with the value set in minor currency units. Brands and their permitted denominations vary, so the gift card picker is checked before an amount is chosen.
Order Tracking
3- List Orders Retrieves mail orders on the account with their type, status and recipient counts. Used to reconcile sends against your own records.
- Track Order Returns delivery progress for an order, with counts of pieces processing, printed, in transit, delivered, returned to sender or failed, plus per-piece errors such as an address the postal service cannot deliver to.
- Cancel Order Cancels an order and refunds its credits. Only possible while the order is still in review, before it goes to print. The order object exposes a cancellable flag that a flow can check first.
Mailing Lists
4- List Mailing Lists Retrieves the saved mailing lists with their type and recipient counts. The list IDs returned here are what the send actions expect when mailing a saved audience.
- Create Mailing List Creates an empty list to populate with recipients. Lists let an audience be reused across repeated campaigns instead of passing recipients inline every time.
- Delete Mailing List Permanently deletes a list and its stored recipients. Orders already sent to the list are unaffected.
- List Mailing List Recipients Retrieves the recipients stored in a list, optionally only those changed since a given date so a flow can sync incrementally. Returns up to 10,000 recipients per page. This is how an agent finds out who it is actually about to mail.
Recipients
3- Create Recipient Adds a single recipient to the account, optionally attaching them to a mailing list. Custom fields one through four are available to message merge tags at send time.
- Create Recipients In Bulk Adds many recipients in one call, which is far faster than looping Create Recipient when importing a list.
- Delete Recipient Removes a recipient from the account so they are excluded from future sends to any list they belonged to. Used to honour opt-out requests.
Triggers
4 triggersEvent Triggers
4- On Order Status Updated Fires when an order changes state, delivering the order alongside its previous and current status. Used to know when a campaign has finished printing or been fulfilled without polling. Webhooks are a paid-plan feature.
- On Mail Piece Status Updated Fires each time an individual piece changes state, delivering the recipient and the previous and current status. Statuses run through Processing, Printed, Shipped, In Transit, In Local Area, Processed for Delivery and finally Delivered, Returned to Sender or Failed. Webhooks are a paid-plan feature.
- On Mail Piece Delivered Fires when a piece is confirmed delivered, carrying the recipient and the delivery date. Used to time a follow-up call or email to land while the card is still in someone's hand. Webhooks are a paid-plan feature.
- On QR Code Scanned Fires when a recipient scans the QR code printed on a piece, carrying the scanned URL and the originating order. Used to measure response and trigger immediate follow-up. Webhooks are a paid-plan feature.
Frequently Asked Questions
What can FlowRunner do with Thanks.io?
FlowRunner agents can run Send Postcard, Send Notecard, and Send Letter in Thanks.io, plus 11 more actions.
Does connecting Thanks.io to FlowRunner require OAuth?
No. Thanks.io connects to FlowRunner with an API key, no OAuth flow required.
Can Thanks.io trigger a FlowRunner workflow automatically?
Yes. Thanks.io supports 4 triggers that can start a FlowRunner workflow automatically.
Start building with Thanks.io
$100 in credits. No card required. Connect in minutes.