How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Loops Webhooks

Outbound event surface. Seventeen signed event types covering contact lifecycle, mailing-list membership, and email delivery, engagement and complaint signals, delivered by HTTP POST to one subscriber-configured endpoint per account and verified with an HMAC-SHA256 signature over {webhook-id}.{webhook-timestamp}.{raw-body}.

Loops Webhooks is one of 21 APIs that Loops publishes on the APIs.io network, described by an AsyncAPI event-driven specification.

Tagged areas include Webhook, Event, and Email. The published artifact set on APIs.io includes an AsyncAPI specification and API documentation.

This event API exposes 0 operations across 17 channels, and defines 42 schemas. It is described by AsyncAPI 3.0.0, at version 1.21.6.

The API connects through a single server, {subscriberEndpoint} (https).

0 operations 17 channels 42 schemas

Metadata

The identity and technical contract details declared by the specification.

Specification
AsyncAPI 3.0.0
API Version
1.21.6
Base URL
https://app.loops.so/api/v1

Messages & Schemas 42

The contract defines 42 schemas that model the data carried by its messages. The most detailed are WebhookContact (11 properties), WebhookTestingTestEventPayload (4 properties), WebhookMailingList (4 properties), WebhookBasePayload (4 properties). Each schema is shown below with its type and property counts.

contactUnsubscribed
message
Sent when a contact is unsubscribed from your audience, or when a contact is deleted from your audience (alongside contact.deleted). This is not the same as a…
contactCreated
message
Sent when a new contact is created in your audience. Contains a contactIdentity object and a full contact object with all of the new contact's properties (incl…
contactDeleted
message
Sent when a contact is deleted from your audience. Contains a contactIdentity object.
contactMailingListSubscribed
message
Sent when a contact is subscribed to a mailing list. Contains contactIdentity and mailingList objects. When double opt-in is enabled, this event only fires aft…
contactMailingListUnsubscribed
message
Sent when a contact is unsubscribed from a mailing list. This is not the same as a contact unsubscribing from your audience (see contact.unsubscribed). Contain…
transactionalEmailSent
message
Sent when a transactional email is sent to a contact. Contains a transactionalId value plus contactIdentity and email objects.
campaignEmailSent
message
Sent when a campaign email is sent to a contact. This event fires for every campaign send (for example, sending to 1,000 contacts produces 1,000 events). Conta…
loopEmailSent
message
Sent when a workflow email is sent to a contact. This event keeps its loop naming for compatibility (Loops was renamed to Workflows on May 6, 2026). This event…
emailDelivered
message
Sent when an email is delivered to its recipient. Contains sourceType (campaign, loop, or transactional) and the related campaignId, loopId (workflow ID), or t…
emailSoftBounced
message
Sent when an email soft bounces. Soft bounces are temporary delivery failures (for example, a connection timing out). Soft bounces are retried multiple times a…
emailHardBounced
message
Sent when an email hard bounces. Hard bounces are persistent delivery failures (for example, a mailbox that does not exist); the email will not be delivered. I…
emailClicked
message
Sent when a link in a campaign or workflow email is clicked. Not available for transactional emails because link clicks are not tracked for transactional email…
emailUnsubscribed
message
Sent when a recipient unsubscribes from marketing email or a mailing list using an email's "Unsubscribe" link. A contact.unsubscribed or contact.mailingList.un…
emailResubscribed
message
Sent when a recipient resubscribes to marketing email from an email's preference center ("Unsubscribe" link). Not available for transactional emails because un…
emailOpened
message
Sent when a campaign or workflow email is opened. Not available for transactional emails because email opens are not tracked for transactional emails. Contains…
emailSpamReported
message
Sent when a recipient reports your email as spam. Contains sourceType and the related campaignId, loopId (workflow ID), or transactionalId, plus contactIdentit…
testingTestEvent
message
Test event that can be triggered from the Webhooks settings page in Loops. Use this to verify that your endpoint is working and that your signature verificatio…
WebhookBasePayload
object
4 properties 4 required
WebhookCampaignEmailSentPayload
object
WebhookContact
object
Full contact object, including custom properties.
11 properties 10 required
WebhookContactCreatedPayload
object
WebhookContactDeletedPayload
object
WebhookContactIdentity
object
3 properties 3 required
WebhookContactMailingListSubscribedPayload
object
WebhookContactMailingListUnsubscribedPayload
object
WebhookContactUnsubscribedPayload
object
WebhookEmail
object
3 properties 3 required
WebhookEmailClickedPayload
object
WebhookEmailDeliveredPayload
object
WebhookEmailHardBouncedPayload
object
WebhookEmailMetricPayload
object
WebhookEmailOpenedPayload
object
WebhookEmailResubscribedPayload
object
WebhookEmailSoftBouncedPayload
object
WebhookEmailSpamReportedPayload
object
WebhookEmailUnsubscribedPayload
object
WebhookLoopEmailSentPayload
object
WebhookMailingList
object
Details of the mailing list.
4 properties 4 required
WebhookMarketingEmailMetricPayload
object
WebhookTestingTestEventPayload
object
4 properties 4 required
WebhookTransactionalEmailSentPayload
object
LoopsWebhookHeaders
object
Signature headers Loops sends with every webhook request. Verify by HMAC-SHA256 over {webhook-id}.{webhook-timestamp}.{raw-body} using the base64-decoded porti…
3 properties 3 required

Specification

The full machine-readable AsyncAPI contract behind this narrative.

Source

loops-webhooks-asyncapi.yml Raw ↑

Other APIs Loops publishes across the network.

Loops API key API
Loops Audience segments API
Loops Campaign groups API
Loops Campaigns API
Loops Components API
Loops Configuration API
Loops Contact properties API
Loops Contacts API
Loops Email messages API
Loops Event patterns API
Loops Events API
Loops Mailing lists API
Where this information came from

This is an independent, third-party profile of Loops Webhooks, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.