Automations
Wire Better Us into anything.
Better Us talks fluent HTTP, every event has a webhook, every resource has a REST endpoint. That means it works out of the box with Zapier, Make, n8n, Pipedream, IFTTT, and anything else that speaks JSON. No Zapier app to install, no n8n node to download, no waiting for us to build a connector.
Triggers
Better Us fires webhooks
Six event types, recognition.sent, wolfmode.set, pulse.created, member.joined, checkin.completed, moment.posted. Configure at /admin/integrations/webhooks.
See event payload shapes →Actions
Your tools call our API
REST endpoints for every resource, workspace, members, recognitions, pulses, audit. X-API-Key auth, JSON in JSON out, 120 req/min.
See full API reference →Pick your platform
Setup is the same shape on every platform: Better Us sends a webhook in, your platform calls the Better Us API back out. Below are the exact steps for the most common ones.
Zapier
5,000+ app connections. Best for non-technical users, every step is a guided form.
As a trigger (Better Us → them)
- In your Zap, pick Webhooks by Zapier as the trigger.
- Choose Catch Hook, copy the unique URL Zapier gives you.
- In Better Us, open /admin/integrations/webhooks → New webhook.
- Paste the Zapier URL, pick the events, save.
- Trigger one (e.g. send a recognition), Zapier should detect the sample.
As an action (them → Better Us)
- In your Zap, pick Webhooks by Zapier as the action.
- Choose POST.
- URL:
https://api.workplace.thebetterusproject.com/api/v1/workspace/YOUR_WORKSPACE_ID/recognitions - Headers:
X-API-Key: bu_live_xxx(mint at /admin/integrations/api-keys) - Payload type: JSON.
- Body: map your trigger fields to
fromMemberId,toMemberId,message,pillarId.
Make (Integromat)
Visual scenario builder. More flexible than Zapier for branching logic and loops.
As a trigger (Better Us → them)
- Add a Webhooks module → Custom webhook as the first step.
- Click Add → Make generates a unique URL. Copy it.
- In Better Us, open /admin/integrations/webhooks → New webhook.
- Paste the Make URL, pick events, save.
- Trigger an event in Better Us, Make captures the structure automatically.
As an action (them → Better Us)
- Add an HTTP module → Make a request.
- Method: POST
- URL:
https://api.workplace.thebetterusproject.com/api/v1/workspace/YOUR_WORKSPACE_ID/recognitions - Headers:
X-API-Key: bu_live_xxx - Body type: Raw → JSON
- Map upstream fields to the recognition payload shape.
n8n
Self-hostable, fair-source. Best for teams who want to own the automation layer.
As a trigger (Better Us → them)
- Add a Webhook node, set HTTP method to POST.
- Copy the test/production URL n8n gives you.
- In Better Us, open /admin/integrations/webhooks → New webhook.
- Paste the n8n URL, pick events, save.
- Trigger an event in Better Us, your workflow runs.
As an action (them → Better Us)
- Add an HTTP Request node.
- Method: POST
- URL:
https://api.workplace.thebetterusproject.com/api/v1/workspace/YOUR_WORKSPACE_ID/recognitions - Authentication: Generic credential type → Header Auth →
X-API-Key - Body Content Type: JSON
- Map fields from the previous node.
Pipedream
Code-first with a visual UI. Best for engineers who want to drop in JS/Python where templates fall short.
As a trigger (Better Us → them)
- Create a new workflow → trigger: HTTP / Webhook.
- Copy the unique URL Pipedream provides.
- In Better Us, open /admin/integrations/webhooks → New webhook.
- Paste it, pick events, save.
- First event captured will define the schema for downstream steps.
As an action (them → Better Us)
- Add an HTTP / Webhook action.
- Method: POST
- URL:
https://api.workplace.thebetterusproject.com/api/v1/workspace/YOUR_WORKSPACE_ID/recognitions - Headers:
X-API-Key: bu_live_xxx - Body: drop in a JS step before this if you want to transform, Pipedream's strong suit.
Recipes, triggered by Better Us
Every recipe starts with a webhook from Better Us and ends in another tool. Copy the shape, adapt the bits.
Slack DM when someone gets a recognition
- Trigger: Better Us `recognition.sent` webhook
- Filter: `data.toMemberId == {your member id}` OR `data.toMemberName contains {name}`
- Action: Slack → Send DM
Salesforce field updates when a rep hits a streak
- Trigger: Better Us `checkin.completed` webhook
- Filter: streak >= 7
- Action: Salesforce → Update Contact → custom field 'wellbeing_streak'
Notion row for every Wolf Mode change
- Trigger: Better Us `wolfmode.set` webhook
- Action: Notion → Create Database Item with pillar + setBy + timestamp
Email digest when 3+ recognitions land in a day
- Trigger: Better Us `recognition.sent` webhook
- Aggregate: count over last 24h
- When count crosses 3 → Action: Send email with the recent recognitions
Recipes, triggered by other tools
These start somewhere else and end with a write to the Better Us API. Mint an API key first at /admin/integrations/api-keys.
Auto-recognise on Stripe payment received
- Trigger: Stripe, payment_intent.succeeded
- Action: Better Us API → POST /recognitions with `message = 'Booked {{customer}} this morning. Quietly excellent.'`
Set Wolf Mode from Google Calendar
- Trigger: Calendar event with title 'Wolf Mode: <pillar>' starts
- Action: Better Us API → POST /wolf-mode with `pillar = den|howl|pack|hunt|move`
Pulse from a Typeform / SurveyMonkey response
- Trigger: New form submission
- Action: Better Us API → POST /pulses with the question + scale
Built something useful?
Send us your scenario / Zap / template and we'll feature it in the recipe library. Other workspaces will thank you.
Email a recipe