Zapier Webhook API
Last updated: April 15, 2026
Overview
The ReplySequence Zapier webhook accepts meeting transcripts from any Zapier-connected source (Voicenotes, Fireflies, Fathom, Otter, Granola, Read.ai, tl;dv, Chorus, Avoma, Grain, Gong, or any custom Webhooks by Zapier trigger) and generates a follow-up email draft inside the authenticated user's ReplySequence dashboard.
This document covers the single endpoint used by the ReplySequence Zapier app. It is intended for Zapier partner reviewers and integration developers.
Endpoint
POST https://www.replysequence.com/api/webhooks/zapierA verification endpoint is also available for Zapier's testAuth flow:
GET https://www.replysequence.com/api/webhooks/zapier/verify?userId=<uuid>Authentication
Each request is authenticated with two pieces of information:
- User ID — the ReplySequence user UUID, sent inside the JSON body as the
userIdfield. - HMAC Signature — an HMAC-SHA256 of the raw request body, signed with the user's webhook secret and sent in the
X-RS-Signatureheader in the formatsha256=<hex>.
Users find both values in Settings → Integrations → Show webhook details on any platform card inside their ReplySequence dashboard. The secret can be revealed and rotated from that same panel.
Request schema
Body must be valid JSON.
{
"userId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"transcript": "Speaker A: Thanks for the call today...",
"title": "Acme Corp — Pricing Review",
"date": "2026-04-15T18:00:00.000Z",
"duration": 1800,
"participants": [
{ "name": "Alice", "email": "alice@acme.com" },
{ "name": "Bob", "email": "bob@example.com" }
],
"source": "voicenotes",
"externalId": "voicenote_abc123"
}| Field | Type | Required | Description |
|---|---|---|---|
userId | UUID string | yes | ReplySequence user ID. |
transcript | string | yes | Raw meeting transcript text. |
title | string | no | Meeting title. Defaults to "Untitled Meeting". |
date | ISO-8601 string | no | Meeting timestamp. Defaults to the request time. |
duration | integer | no | Meeting length in seconds. |
participants | array<{name,email}> | no | Attendee list. |
source | string | no | Origin platform key. Defaults to "zapier". |
externalId | string | no | Upstream meeting ID. Used for deduplication. |
Response
On success the endpoint returns 200 OK with:
{
"success": true,
"meetingId": "<uuid of the ingested meeting>",
"draftId": "<uuid of the generated follow-up draft>"
}Errors
| Status | Reason | Fix |
|---|---|---|
400 | Missing or invalid body | Ensure transcript and userId are present. |
401 | Invalid HMAC signature | Re-reveal the webhook secret in Settings and re-connect in Zapier. |
404 | userId not found | Confirm the User ID from the Integrations panel. |
429 | Rate limited | Zap will auto-retry with exponential backoff. |
Rate limits
The endpoint accepts up to 60 requests per minute per user. Bursts above that return 429 with a Retry-After header.
Support
Questions, access requests, or integration issues: jimmy@replysequence.com.