Endpoints
Attributes
string
required
Webhook ID, prefixed
hook_.string
required
The API version used to format payloads sent to this webhook endpoint.Available options:
v1, v2, v5string | null
required
The dated API version (Api-Version-Date) that v1 payloads for this endpoint
are pinned to: events serialize exactly like a REST read at this version (the
native serializer where the resource has one). Null when unpinned — legacy
(v2/v5) webhooks, and v1 webhooks on the legacy payload shape.
boolean
required
Whether events are sent for child resources. For example, if the webhook is on
an account, enabling this sends events only from its connected accounts.
integer
required
Number of consecutive deliveries whose first attempt to this endpoint failed
since it last accepted one. Later retries of the same delivery do not
increment it. Resets to
0 when a delivery succeeds or the webhook is
re-enabled.string
required
When the webhook was created, as an ISO 8601 timestamp.
string | null
required
When Whop automatically disabled this webhook, as an ISO 8601 timestamp.
null unless the webhook was disabled by Whop; a webhook you disabled
yourself has enabled: false and a null disabled_at.string | null
required
Why Whop disabled this webhook.
delivery_failures means every delivery failed for 3 days straight. null when disabled_at is null.Available options: delivery_failuresboolean
required
Whether this webhook endpoint is currently active and receiving events.
string[]
required
Event types this webhook is subscribed to, in dot form (for example
payment.succeeded).Available options: account.updated, account.financing_approved, account.financing_denied, invoice.created, invoice.marked_uncollectible, invoice.paid, invoice.past_due, invoice.voided, membership.activated, membership.deactivated, membership.trial_ending_soon, membership.updated, entry.created, entry.approved, entry.denied, entry.deleted, export.completed, export.failed, setup_intent.requires_action, setup_intent.succeeded, setup_intent.canceled, ledger_account.funds_available, swap.completed, deposit.succeeded, financial_activity.funds_available, transfer.created, transfer.completed, transfer.failed, withdrawal.created, withdrawal.updated, withdrawal.reversed, payout.created, payout.updated, payout.reversed, card_transaction.created, card_transaction.updated, card_transaction.completed, card_transaction.declined, card_transaction.reversed, card.created, card.updated, card.frozen, card.canceled, card_application.created, card_application.updated, card_application.approved, card_application.denied, course_lesson_interaction.completed, payout_method.created, verification.succeeded, identity_profile.approved, identity_profile.rejected, identity_profile.needs_action, identity_profile.updated, payout_account.status_updated, payment.authorized, payment.canceled, resolution_center_case.created, resolution_center_case.updated, resolution_center_case.decided, product.created, product.updated, product.deleted, product.published, product.unpublished, plan.created, plan.updated, plan.deleted, shipment.created, shipment.updated, member.created, member.updated, ad_campaign.payment_failed, ad_campaign.updated, ad_campaign.events, ad.updated, chat.message.created, chat.reaction.created, payment.created, payment.succeeded, payment.failed, payment.pending, payment.requires_action, dispute.created, dispute.updated, refund.created, refund.updated, dispute_alert.created, membership.cancel_at_period_end_changed, membership.went_valid, membership.went_invalid, membership.metadata_updated, resolution.created, resolution.updated, resolution.decided, payment.affiliate_reward_created, membership.experience_claimed, app_membership.went_valid, app_membership.went_invalid, app_payment.created, app_payment.succeeded, app_payment.failed, app_payment.pending, app_payment.requires_action, app_membership.cancel_at_period_end_changedstring | null
required
When the current failure streak began, as an ISO 8601 timestamp. Unlike
last_failure_at, this is set on the streak’s first failed attempt, so it
shows an endpoint that is failing right now. null when the endpoint is
healthy.string | null
required
When a delivery to this endpoint most recently failed after exhausting
retries, as an ISO 8601 timestamp.
null if no delivery has ever failed.string
required
ID of the resource (account or app) this webhook is attached to.
string[]
required
The subset of subscribed event types that support sending test payloads, in dot form.Available options:
account.updated, account.financing_approved, account.financing_denied, invoice.created, invoice.marked_uncollectible, invoice.paid, invoice.past_due, invoice.voided, membership.activated, membership.deactivated, membership.trial_ending_soon, membership.updated, entry.created, entry.approved, entry.denied, entry.deleted, export.completed, export.failed, setup_intent.requires_action, setup_intent.succeeded, setup_intent.canceled, ledger_account.funds_available, swap.completed, deposit.succeeded, financial_activity.funds_available, transfer.created, transfer.completed, transfer.failed, withdrawal.created, withdrawal.updated, withdrawal.reversed, payout.created, payout.updated, payout.reversed, card_transaction.created, card_transaction.updated, card_transaction.completed, card_transaction.declined, card_transaction.reversed, card.created, card.updated, card.frozen, card.canceled, card_application.created, card_application.updated, card_application.approved, card_application.denied, course_lesson_interaction.completed, payout_method.created, verification.succeeded, identity_profile.approved, identity_profile.rejected, identity_profile.needs_action, identity_profile.updated, payout_account.status_updated, payment.authorized, payment.canceled, resolution_center_case.created, resolution_center_case.updated, resolution_center_case.decided, product.created, product.updated, product.deleted, product.published, product.unpublished, plan.created, plan.updated, plan.deleted, shipment.created, shipment.updated, member.created, member.updated, ad_campaign.payment_failed, ad_campaign.updated, ad_campaign.events, ad.updated, chat.message.created, chat.reaction.created, payment.created, payment.succeeded, payment.failed, payment.pending, payment.requires_action, dispute.created, dispute.updated, refund.created, refund.updated, dispute_alert.created, membership.cancel_at_period_end_changed, membership.went_valid, membership.went_invalid, membership.metadata_updated, resolution.created, resolution.updated, resolution.decided, payment.affiliate_reward_created, membership.experience_claimed, app_membership.went_valid, app_membership.went_invalid, app_payment.created, app_payment.succeeded, app_payment.failed, app_payment.pending, app_payment.requires_action, app_membership.cancel_at_period_end_changedstring
required
Destination URL where webhook payloads are delivered via HTTP POST.
string | null
required
Secret key used to sign webhook payloads for verification. Include this in
your HMAC validation logic. Returned on the create response and to interactive
dashboard sessions;
null for API-key and OAuth callers on later reads.Webhook

