INTEGRATION · MICROSOFT TEAMS
PostKnock in Microsoft Teams
Post delivery confirmations, QR scans and call outcomes straight into a Teams channel using a Power Automate Workflows webhook.
*.webhook.office.com) in May 2026. The steps below use Workflows, which is the current supported route. If you have an old connector URL saved in PostKnock, replace it — it will no longer deliver.
Connect Microsoft Teams
No developer required — this is all point and click.
-
1
Open the Teams channel that should receive alerts
In Microsoft Teams, go to the team and channel where you want PostKnock updates to appear.
-
2
Open Workflows from the channel menu
Select More options (…) next to the channel name, then Workflows.
-
3
Pick the webhook template
Search for and select a template such as Send webhook alerts to a channel. This is the current replacement for the old Incoming Webhook connector.
-
4
Configure and save the workflow
Confirm the team and channel, adjust the workflow parameters if you need to, then select Save.
-
5
Copy the webhook link
Once the workflow exists, copy the webhook URL it generates. It will be a long
…environment.api.powerplatform.comaddress containing a signature — treat it as a credential, because anyone holding it can post to that channel. -
6
Add it to PostKnock
In PostKnock open Admin › Webhooks › New webhook, set the format to Microsoft Teams, paste the URL, choose your events, save, then select Test to confirm a card appears in the channel.
Every event you can subscribe to
Pick the ones you want per webhook, or subscribe to all of them with *. Each event carries the fields listed here inside data.
| Event | Fires when | data fields |
|---|---|---|
| postcard.sent | A postcard was handed to the print partner and mailed. | campaign_id, contact_id, wave_number, lob_id |
| postcard.in_transit | The postal service scanned the piece in transit. | campaign_id, contact_id, wave_number, lob_id |
| postcard.delivered | Delivery confirmed. Never presumed — only a real carrier confirmation fires this. | campaign_id, contact_id, wave_number, lob_id, delivered_date |
| postcard.failed | The piece failed or came back as return-to-sender. | campaign_id, contact_id, wave_number, lob_id, reason |
| call.scheduled | A follow-up call was queued for a contact. | campaign_id, contact_id, wave_number, scheduled_for |
| call.completed | A call was completed and its outcome recorded. | campaign_id, contact_id, wave_number, call_result, contact_type, duration_seconds |
| call.no_answer | A call rang out or the line was unavailable. | campaign_id, contact_id, wave_number |
| contact.responded | A contact scanned the QR code on their postcard. | contact_id, campaign_id, method, tracked_url_id |
| contact.unsubscribed | A contact was marked do-not-contact. | contact_id, reason |
| campaign.activated | A campaign started sending. | campaign_id, name, total_contacts |
| campaign.completed | Every wave finished, or someone marked the campaign complete. | campaign_id, name |
| campaign.paused | A campaign paused — by request, or automatically on a low wallet balance. | campaign_id, name, reason |
| touchpoint.failed | An individual postcard or email touchpoint failed. | campaign_id, contact_id, touchpoint_type, reason |
IDs in data are the same per-account IDs you see in the PostKnock URL bar, so campaign_id: 7 is the campaign at /campaigns/7.
Want the raw JSON instead?
The Microsoft Teams format posts a message written for humans reading a channel. If you would rather receive the signed JSON envelope and handle it in your own code, use a Generic webhook — same events, full payload, HMAC signature included.
Questions
My old webhook.office.com URL stopped working. +
Why do the buttons not appear on the card? +
Does it work in a private channel? +
Do I need a signing secret? +
Who owns the workflow? +
Direct mail your other tools can see
Send postcards and follow-up calls from PostKnock, and stream every delivery, scan and call outcome straight into the tools your team already watches.
Start freeOutbound webhooks are included with PostKnock Pro.