Webhooks

Receive an installation.permissions_accepted event

Beta: webhook event coverage and payload schemas may evolve. See /docs/integrations/webhooks for supported events and delivery limits. An organization admin adopted a newer revision of the app (GitHub's new_permissions_accepted). Carries the revision and the permissions the installation now holds, as the installation read shows them. The installation's version moved, so tokens minted before stopped: mint new ones. Sent once per adoption, never when nothing was adopted. Names no repository. Delivered only to the app installation's own webhook, whether or not the manifest lists the event, never to organization or repository endpoints. Pending deliveries of other events are not sent once the app loses access; this event still is, unless GitCafe suspended the app. GitCafe POSTs an immutable version 1 snapshot to an eligible active endpoint. Verify the timestamp and HMAC-SHA256 over timestamp + '.' + the unchanged UTF-8 request body using the indicated current signing-key generation. The signature value is sha256=<lowercase hex>. Retries reuse body and delivery identity but refresh timestamp and signing key. Delivery attempts are at least once; deduplicate by the signed body event id within each receiver subscription. The delivery header is an inspection identifier and is not covered by the signature. No ordering is promised. A 2xx response acknowledges acceptance. Network failures, 408, 425, 429 and 5xx retry within eight attempts or 24 hours; redirects and other statuses terminate. Retry-After is capped at one hour. See /docs/integrations/webhooks for configuration and failure recovery. This contract does not prove deployed transport qualification.

postWebhookinstallation.permissions_accepted

Headers

X-GitCafe-Event'installation.permissions_accepted' required

The supported event type.

X-GitCafe-Deliverystring required

Stable delivery identifier for inspection. Deduplicate using the signed body event id.

X-GitCafe-Timestampstring required

Unix seconds for this attempt. Check an appropriate receiver replay window before acceptance.

X-GitCafe-Key-Versionstring required

Current signing-key generation used for this attempt.

X-GitCafe-Signaturestring required

HMAC-SHA256 of timestamp + '.' + exact request body bytes. Compare in constant time.

Payload

idstring required
version'1' required
createdAtstring date-time required
type'installation.permissions_accepted' required
revisioninteger required

Response

The receiver accepted the event. Any 2xx status has this meaning.

Changes

Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.