Skip to main content

Stripe delivers subscription changes here

POST /v1/stripe/webhook

Unauthenticated by necessity and authenticated by signature. Idempotent: Stripe retries until it gets a 2xx and does not promise to deliver an event only once.

Credential. None. This endpoint is open.

curl --fail-with-body -X POST "https://api-833252724876.us-central1.run.app/v1/stripe/webhook"

Headers

NameTypeRequiredNotes
Stripe-SignaturestringnoDefault "".

Response · 204

Successful Response

Errors

StatusMeaning
400The signature header is malformed or its timestamp is stale.
401Missing signature, or one that does not match the body.
422Validation Error
503Billing is not configured in this environment.

Every one carries the same envelope.

API overview · Full contract