Skip to main content
Every event payload carries a type field naming the event and an occurred_at ISO 8601 timestamp. All resource references are the same uuids the REST API serves, so you can always fetch the full resource after receiving an event. Subscribe to specific event types per endpoint in the webhook portal, or subscribe to all of them — see the overview for setup and signature verification.

Conversions & visitors

conversion.recorded

An attributed conversion event was accepted for your workspace. Only click-attributed, deduplicated conversions are delivered — the same gating as conversion tracking itself.
event_id is the idempotency key you supplied when tracking the event (may be null). Attribution uuids are empty strings when unresolved.

visitor.identified

A signature-attributed visitor was identified for the first time — a user_id your workspace had never seen before. Re-identifies of a known visitor (for example on every page load) do not fire. Fetch the full profile at GET /v1/analytics/visitors/{visitor.id}.

Signatures

signature.published

A signature’s draft was published (made live). Covers primary signatures and reply/internal variants — signature.kind discriminates.
name and folder_uuid are null for variants. kind is one of primary, reply_variant, internal_variant.

signature.installation.failed

Installing a signature into a specific mailbox failed. Fired once per failure transition — a mailbox that stays broken does not re-fire daily; after a successful reinstall, a new failure fires again.
Known error_code values: user_not_found, forbidden, unauthorized_client, channel_not_found, signature_too_long, multi_signatures_not_supported. New codes may be added over time.

Teammates

teammate.created

A teammate was added to your workspace — by a user in the dashboard, through the API, or by a directory sync importing a new person.

teammate.deleted

A teammate was removed — by a user or by a directory sync removing a departed person. Fired at removal time; the payload is your last chance to read the teammate’s identifiers.

Campaigns

All five campaign events share the same payload shape:
status reflects the post-transition state: draft, scheduled, active, paused or archived.

Integrations

integration.connected

An integration was connected and became active for the first time. Re-authentications of an already-connected integration do not fire.
category is one of teammates, signatures, smart_fields, assets.

integration.access_lost

Scribe lost access to a connected integration (revoked or expired credentials). Signature installs and teammate syncs through this integration are paused until an admin reconnects it — reconnect_url deep-links straight to the fix. Fired once per loss; a reconnect re-arms it.

integration.disconnected

An integration was disconnected (removed) by a user.