Skip to Content
PostP7 Video View Webhook

Video view webhook

Video watch progress webhooks are separate from render / template finished webhooks you may configure elsewhere on your account. Only the URL you save with the endpoints below receives view-milestone events.

Requirements

On each request you need to provide your Bearer authentication token. See the Authentication section for more details.

AuthorizationBearer Token
Token<token>

POST /createVideoViewWebhookSubscription

https://api.repliq.co/v2/createVideoViewWebhookSubscription

Mandatory parameters

This endpoint requires the following parameters:

ParametersTypeDescription
hookUrlstringA valid https URL. Only one video-view URL is stored per account; a new value replaces the previous one.

Response parameters

If the response status code is 200, the body includes:

ParametersTypeDescription
messagestringStatus message
hookUrlstringThe saved URL
idstringAutomation id when the host is Zapier, Make, or Pabbly; otherwise null

DELETE /deleteVideoViewWebhookSubscription

https://api.repliq.co/v2/deleteVideoViewWebhookSubscription

Send DELETE to the URL in the code block above with the same Authorization header. No request body is required; the saved video-view webhook URL is cleared.

Response parameters

If the response status code is 200, the body includes:

ParametersTypeDescription
messagestringConfirmation that the video view webhook was removed

HTTP errors (subscription endpoints)

StatusMeaning
400Invalid input (e.g. validation) or token issue
403Not allowed on the free tier (paid plans only, same idea as API access)
404User account not found
500Server error

When your webhook URL is called

When a lead watches a personalized video page, RepliQ sends HTTPS POST requests to your saved hookUrl with Content-Type: application/json. Each request is sent once per milestone per viewer session (same browser session), when that milestone is crossed for the first time.

videoWatchPercentageWhen it fires
startedFirst time watch progress goes from 0 to greater than 0 (playback started).
25First time the viewer reaches at least 25% of the video.
50First time the viewer reaches at least 50% of the video.
75First time the viewer reaches at least 75% of the video.
100First time the viewer reaches at least 100% of the video (completed).

So you can receive up to five POSTs for the same viewing session—one for started, then one each when 25%, 50%, 75%, and 100% are crossed for the first time.

Reliability and idempotency

  • A down, slow, or error-returning receiver does not affect other RepliQ services; each delivery is isolated.
  • A milestone is only treated as delivered after your endpoint returns 2xx. Non-2xx responses and network failures mean the same milestone may be attempted again on a later update.
  • In rare cases the same milestone could be delivered more than once. Treat your handler as idempotent (safe to run twice for the same videoWatchPercentage + session), for example by deduplicating on (lead.videoUrl, videoWatchPercentage, occurredAt) or your own idempotency key.

Webhook body (JSON)

Example payload your endpoint receives:

{ "videoWatchPercentage": "25", "occurredAt": "2026-03-22T06:08:03.673Z", "campaignName": "Spring outreach", "lead": { "videoUrl": "https://watch.example.com/videos/abc123", "leadWebsiteUrl": "https://prospect.example.com", "leadEmail": "jane.doe@example.com", "leadFirstName": "Jane", "leadLastName": "Doe", "jobTitle": "Marketing Director", "companyName": "Example Corp", "videoType": "website", "previewImgOrGifUrl": "https://cdn.example.com/previews/abc123_preview.gif" } }

Automation tools (e.g. n8n, Zapier): The HTTP body is the JSON object above. Some UIs nest it under a property such as body—map fields from that object in your workflow.

ParametersTypeDescription
videoWatchPercentagestringMilestone: started, 25, 50, 75, or 100.
occurredAtstringISO-8601 timestamp when the event was recorded.
campaignNamestringName of the campaign (scrapping) this video page belongs to.
leadobjectLead and page context (see below).

Inside the lead object you will receive:

ParametersTypeDescription
videoUrlstringLink to the personalized watch page.
leadWebsiteUrlstringProspect website URL used for the video.
leadEmailstringEmail when available; may be empty or a placeholder such as NoEmail.
leadFirstNamestring
leadLastNamestring
jobTitlestring
companyNamestring
videoTypestringType of video (e.g. website).
previewImgOrGifUrlstringPreview image or GIF URL for the video.
Last updated on
RepliQ API Docs