Build it
What do you want thanks.io and Uplup to do together?
Describe it and your agent reads both APIs, builds the automation, tests every branch and ships it. The list below is what exists today, not the limit.
Ask the assistant
You'll sign in before anything runs. What you typed comes with you.
Or work from Claude Code
Install the APIANT plugin for Claude Code and build, edit, test and read run history from your terminal. Every plan gets this, including free, and it spends no assistant credits.
Connect Claude CodeEverything your agent can do with thanks.io and Uplup
Triggers and actions 4 triggers · 20 actions
Trigger
Item DeliveredTriggers when a postcard, letter, notecard, or giftcard is delivered to a recipient.
Trigger
New OrderFires once for each new order placed in your thanks.io account.
Trigger
QR Code ScanTriggers when a QR Code on a postcard, letter, or notecard is scanned. This will also trigger when a giftcard is redeemed.
Action
Add RecipientAdds a recipient to your account and to an optional list. Only US or Canadian addresses are accepted. If no/invalid address is specified and a valid email address is, we'll attempt to look up a valid street address using the email address for a fee.
Action
Delete RecipientDeletes a Recipient from Mailing List.
Action
Lookup Address by EmailReturns the mailing address on file for a recipient in a thanks.io mailing list, looked up by their email address. Returns an empty list of matches when no recipient in that list has the email.
Trigger
New ResponseTriggers when someone submits a response to a quiz or form in Uplup. Includes all answers, contact info, and quiz-specific data like score and result.
Action
Add fieldAdd a new field to a form at an optional position. POST /api/v1/forms/{form_id}/fields.
Action
Add formCreate a new form or quiz with optional fields, styling, and quiz settings. POST /api/v1/forms.
Action
Add wheelCreate a new spinning wheel with customizable entries, settings, and appearance. POST /api/v1/wheels.
Action
Add wheel entriesAppend one or more entries to a wheel without replacing the existing list. POST /api/v1/wheels/{wheel_id}/entries.
Action
Delete fieldRemove a field from the form. DELETE /api/v1/forms/{form_id}/fields/{field_id}.
Action
Delete formPermanently delete a form and all associated data. DELETE /api/v1/forms/{form_id}.
Action
Delete wheelPermanently delete a wheel and all its associated data including spin history. DELETE /api/v1/wheels/{wheel_id}.
Action
Get formRetrieve a single form with all its fields, pages, styling, and settings. GET /api/v1/forms/{form_id}.
Action
Get wheelRetrieve detailed information about a specific wheel including all entries and settings. GET /api/v1/wheels/{wheel_id}.
Action
List fieldsGet all fields for a form, ordered by position. GET /api/v1/forms/{form_id}/fields.
Action
List formsReturn a paginated list of all forms and quizzes in the account. GET /api/v1/forms.
Action
List submissionsGet paginated submissions for a form with optional filtering (limit, since). GET /api/v1/forms/{form_id}/submissions.
Action
List wheelsRetrieve a paginated list of all wheels belonging to the account. GET /api/v1/wheels.
Action
Spin wheelProgrammatically spin a wheel and get a randomly selected winner; the spin is recorded to the wheel's results history. POST /api/v1/wheels/{wheel_id}/spin.
Action
Update fieldUpdate field properties; only provided fields are modified. PATCH /api/v1/forms/{form_id}/fields/{field_id}.
Action
Update formUpdate form properties; only provided fields are modified. PATCH /api/v1/forms/{form_id}.
Action
Update wheelUpdate an existing wheel's title, entries, settings, and appearance. PUT /api/v1/wheels/{wheel_id}.
No trigger or action matches that. Ask your agent to add it: it reads the API documentation and builds what you describe.