Integration guide · Custom webhook

A webhook for every Teams meeting transcript

Skip the Graph API plumbing. AI Meeting Notetaker POSTs a signed JSON event to your HTTPS endpoint after every recorded Teams meeting, with the summary, action items, key points and links to the transcript.

See the steps
  • ✓ 5 meetings free
  • ✓ No Copilot license
  • ✓ No bot in your calls

Preview — exactly what we'll send

What arrives in Custom webhook after a meeting — generated by the same code that sends it.

{
  "event": "recording.completed",
  "id": "evt_cd7dba95-872e-4e51-aa6f-336f2f652609",
  "test": false,
  "created_at": "2026-11-06T19:39:05.119Z",
  "recording": {
    "id": "rec_sample",
    "title": "Weekly client sync",
    "status": "completed",
    "recorded_at": "2026-11-06T17:39:05.119Z",
    "duration_min": 47,
    "summary": "Firewall migration moves to next Tuesday; backup alerts will go to the on-call rota. Priya approves the change freeze by Friday.",
    "key_points": [
      "Firewall migration moves to next Tuesday",
      "Backup alerts will go to the on-call rota"
    ],
    "action_items": [
      {
        "task": "Send the revised migration window",
        "owner": "Jon"
      },
      {
        "task": "Approve the change-freeze exception",
        "owner": "Priya"
      }
    ],
    "sections": [],
    "url": "https://notetakerforteams.com/",
    "app_url": "https://notetakerforteams.com/app",
    "preview_image_url": "https://notetakerforteams.com/sample-meeting-preview.jpg",
    "transcript_txt_url": "https://notetakerforteams.com/",
    "transcript_docx_url": "https://notetakerforteams.com/"
  }
}

The problem

What people run into

  • Graph change notifications for transcripts need app permissions, certificates and renewals
  • Transcript API access is off by default in every tenant since July 2026
  • You still need to transcribe or summarize yourself

The do-it-yourself route

  1. Register an Entra app and get admin consent for OnlineMeetingTranscript.Read.All
  2. Create an application access policy in Teams PowerShell
  3. Turn on the tenant switch "Graph access to transcripts" — off by default since July 2026, or every call returns 403
  4. Find the meeting and transcript IDs, download the .vtt and parse it (it isn't JSON)
  5. Summarize it with your own AI service, then format and send the result
  6. Keep it running when tokens, permissions or Microsoft's APIs change

With AI Meeting Notetaker it's one sign-in and one link.

Step by step

How to set it up (about a minute)

  1. 1Sign in to AI Meeting Notetaker with your Microsoft account — 2 clicks, no admin consent.
  2. 2Open Integrations → Custom webhook.
  3. 3We POST JSON to your HTTPS URL when a meeting is ready (see the example above).
  4. 4Verify the webhook-signature header with your signing secret (Standard Webhooks: HMAC-SHA256 of id.timestamp.body).
  5. 5Return any 2xx within 10 seconds. Network errors, 429 and 5xx are retried about 1, 2 and 4 minutes later; after repeated failures we pause the webhook and email you.
  6. 6Done. Every recorded Teams meeting is delivered automatically from now on.

FAQ

Custom webhook: common questions

How do I verify the signature?+

Standard Webhooks: HMAC-SHA256 of id.timestamp.body with your signing secret (base64 part after whsec_), compared with the webhook-signature header.

What about failures?+

Any 2xx within 10 seconds is success. Network errors, 429 and 5xx are retried 3 times; after repeated failures the webhook is paused and you get an email.

Do I need Microsoft Copilot or Teams Premium?+

No. We transcribe and summarize the recording ourselves, so no Copilot or Teams Premium license is needed — only Teams meeting recording turned on.

Does a bot join my meetings?+

No. Nothing joins the call. We read the recording Teams saves to the organizer's OneDrive after the meeting.

How much does it cost?+

Your first 5 meetings are free (your 3 latest recordings and your next 2 meetings). After that it's $0.99 per meeting on a monthly plan of 10, 30 or 90 meetings — every integration is included.

Related guides

All integrations →

Set up Custom webhook in about a minute.

Your first 5 meetings are free.