Overflow · AsyncAPI Specification
Overflow Webhooks
Version
View Spec
View on GitHub
CompanyFintechPaymentsDonationsFundraisingNonprofitGivingRecurring PaymentsWebhooksCryptocurrencyAsyncAPIWebhooksEvents
AsyncAPI Specification
generated: '2026-07-20'
method: searched
source: https://docs.overflow.co/overflow-for-nonprofits/developers/webhooks
spec_type: Webhooks
note: >-
Overflow documents a push-based webhook surface but does not publish an
AsyncAPI document. This artifact captures the documented event catalog and
delivery semantics verbatim from the docs. No AsyncAPI spec is fabricated.
description: >-
Webhooks deliver real-time signed HTTP POST notifications to a registered
HTTPS endpoint when events occur in a nonprofit's Overflow account. Managed
from the nonprofit dashboard under Developers -> Webhooks. Subscriptions can
target individual events, a whole group, or all events via the wildcard "*".
transport:
method: HTTP POST
payload: signed JSON
wildcard: "*"
signature:
header: x-overflow-webhook-signature-hmacsha256
algorithm: HMAC-SHA256
secret_format: whsk_v1_hs256_<random>
verify_against: raw request body (not re-serialized JSON)
rotation:
grace_windows: [immediately, 1 hour, 6 hours]
dual_signing: During the grace window, Overflow signs with both the previous and new secret.
retained_secrets: up to 10 previous secrets per subscription
delivery:
retries: up to 16 attempts over a 3-day+ exponential backoff for transient errors
persistent_failures: stop retrying immediately on persistent misconfiguration
event_logs_api: OpenApiWebhooksController_getWebhookEventLogs
subscription_management:
ui: Nonprofit dashboard -> Developers -> Webhooks
api_read:
- OpenApiWebhooksController_getWebhooks
- OpenApiWebhooksController_getWebhookById
- OpenApiWebhooksController_getWebhookEventLogs
event_catalog:
contributions:
- event: contribution.approved
when: A contribution has been approved.
- event: contribution.declined
when: A contribution was declined.
- event: contribution.processing
when: A contribution is in flight.
- event: contribution.paid_out
when: Funds for the contribution have been paid out.
- event: contribution.voided
when: A contribution was voided.
- event: contribution.chargeback_*
when: Lifecycle events for chargebacks (3 variants).
- event: contribution.refund_*
when: Lifecycle events for refunds, including full and partial (6 variants).
donors:
- event: donor.created
when: A new donor record was created.
- event: donor.updated
when: A donor record was updated.
- event: donor.archived
when: A donor record was archived.
- event: donor.merged
when: Two donor records were merged.
recurring_gifts:
- event: recurring_gift.active
when: A recurring gift moved to the active state.
- event: recurring_gift.inactive
when: A recurring gift was deactivated.
- event: recurring_gift.paused
when: A recurring gift was paused.
- event: recurring_gift.updated
when: A recurring gift's configuration changed.
- event: recurring_gift.failed
when: A recurring gift failed terminally.
- event: recurring_gift.cycle_failed
when: A single billing cycle of a recurring gift failed.
deposits:
- event: deposit.paid_out
when: A deposit has been paid out to your bank account.