Webhooks
Understand Eigenn's provider callbacks and app-specific automation deliveries without assuming a universal webhook contract.
Eigenn currently uses webhooks in two different ways:
- supported providers call Eigenn to report changes
- selected marketplace automation apps deliver Eigenn events to a configured destination
These are separate contracts. The public API does not currently expose general endpoints for creating, listing, updating, or deleting arbitrary outbound webhook subscriptions.
Provider Callbacks
The OpenAPI document includes callback endpoints for supported services such as Stripe, inbox ingestion, WhatsApp, Polar, and Storecove e-invoicing. These endpoints are intended for the corresponding first-party connection.
They are not general ingestion endpoints for custom applications. Authentication and verification vary by provider, and some callbacks use provider signatures or connection-specific secrets instead of an Eigenn bearer token.
Do not send custom payloads to the provider callback endpoints unless the relevant integration setup explicitly instructs you to do so.
Automation Deliveries
The App Marketplace includes automation connections for Zapier, n8n, and Make.
| App | Events currently identified by the app |
|---|---|
| Zapier | invoice.created, invoice.paid, payment.received, customer.updated |
| n8n | invoice.created, invoice.paid, payment.received |
| Make | invoice.created, invoice.paid, customer.updated |
Availability and configuration remain app-specific. Open the app detail panel for the current status and supported events before building a dependent workflow.
Zapier and n8n deliveries use this shared payload shape:
{
"type": "invoice.paid",
"organizationId": "00000000-0000-0000-0000-000000000000",
"occurredAt": "2026-07-11T14:30:00.000Z",
"data": {}
}The contents of data depend on the event. The shared envelope does not guarantee a universal event ID.
Delivery Behavior
For the current Zapier and n8n connections:
- a destination must be an external HTTP or HTTPS address
- private, loopback, local, and cloud-metadata destinations are rejected
- any 2xx response counts as successful delivery
- network failures and non-2xx responses are retried
- each request has a 10-second timeout
- delivery stops after three total attempts
Zapier retries after approximately 500 milliseconds and then 1 second. n8n retries after approximately 1 second and then 2 seconds. These values describe those two connections, not a platform-wide webhook service-level agreement. Make and other delivery paths do not publish the same retry guarantee.
Signature and Deduplication Boundaries
Eigenn does not currently publish a universal outbound signature header or signing-secret contract for marketplace deliveries. Do not assume an X-Canvas-Signature or equivalent header will be present.
Until an app-specific signature contract is shown:
- expose only a purpose-built endpoint
- validate the payload shape and allowed event names
- restrict the actions the endpoint can trigger
- use provider or automation-platform access controls where available
- make downstream processing safe to repeat
Because the shared envelope has no guaranteed event ID, choose a business-level idempotency key from stable fields in the event data when the destination performs a sensitive write. Do not deduplicate solely by delivery time.
Receiver Pattern
- Validate the request method and JSON content type.
- Reject event names your workflow does not support.
- Validate organizationId against the intended Eigenn team.
- Persist the accepted payload before starting slow work.
- Return a 2xx response.
- Process the event from a durable queue.
- Record enough business context to detect repeated effects.
Public API Availability
The generated WebhooksApi in Eigenn SDKs wraps provider callback endpoints from the OpenAPI document. It is not a client for managing outbound subscriptions.
For a custom event-driven connection, use a supported marketplace automation app. If you need a general subscription API, it is not documented as part of public API v1.