Event Types
A reference guide to all App Store Connect webhook events and App Store Server Notification V2 events supported by Yeethook.
Yeethook listens for two kinds of Apple events: App Store Connect webhook events (operational events like build processing and app review) and App Store Server Notifications V2 (in-app purchase and subscription lifecycle events). This page explains every event type Yeethook supports.
App Store Connect Events
These events are delivered via App Store Connect webhooks (introduced at WWDC 2025). They cover the operational lifecycle of your app — builds, reviews, TestFlight, and more. In Quick Start mode, Yeethook configures these webhooks automatically.
App Version
| Event | Description |
|---|---|
APP_STORE_VERSION_APP_VERSION_STATE_UPDATED | An App Store version state changed. Fired when a version is approved, rejected, or moves to another review state. |
Builds
| Event | Description |
|---|---|
BUILD_UPLOAD_STATE_UPDATED | A build upload state changed. Fired when processing completes, fails, or the build becomes ready for testing or submission. |
TestFlight
| Event | Description |
|---|---|
BUILD_BETA_DETAIL_EXTERNAL_BUILD_STATE_UPDATED | A TestFlight external build state changed. Fired when a beta build is approved, rejected, or expires. |
BETA_FEEDBACK_CRASH_SUBMISSION_CREATED | A TestFlight tester submitted a crash report. Includes crash logs and device details. |
BETA_FEEDBACK_SCREENSHOT_SUBMISSION_CREATED | A TestFlight tester submitted a screenshot with feedback. |
Alternative Distribution
| Event | Description |
|---|---|
ALTERNATIVE_DISTRIBUTION_PACKAGE_VERSION_CREATED | A new alternative distribution package version was created. |
ALTERNATIVE_DISTRIBUTION_PACKAGE_AVAILABLE_UPDATED | An alternative distribution package's availability changed. |
ALTERNATIVE_DISTRIBUTION_TERRITORY_AVAILABILITY_UPDATED | Alternative distribution territory availability changed. |
Background Assets
| Event | Description |
|---|---|
BACKGROUND_ASSET_VERSION_STATE_UPDATED | A background asset version state changed — for example, processing completed. |
BACKGROUND_ASSET_VERSION_APP_STORE_RELEASE_STATE_UPDATED | A background asset version App Store release state changed. |
BACKGROUND_ASSET_VERSION_EXTERNAL_BETA_RELEASE_STATE_UPDATED | A background asset version external beta release state changed. |
BACKGROUND_ASSET_VERSION_INTERNAL_BETA_RELEASE_CREATED | A background asset version was created for internal beta release. |
For the full App Store Connect webhook documentation, see Manage webhooks and WWDC 2025 Session 324 on Apple Developer.
App Store Server Notifications V2
These events are delivered via App Store Server Notifications. They cover the lifecycle of in-app purchases and auto-renewable subscriptions. In Quick Start mode, Yeethook registers the notification URL for each of your apps automatically.
Subscriptions
| Event | Description |
|---|---|
SUBSCRIBED | A customer subscribed to an auto-renewable subscription for the first time, or re-subscribed after expiration. |
DID_RENEW | An auto-renewable subscription successfully renewed for a new billing period. |
DID_CHANGE_RENEWAL_STATUS | A customer changed their subscription renewal status — for example, turned off auto-renew. |
DID_CHANGE_RENEWAL_PREF | A customer changed their subscription plan preference — for example, upgraded or downgraded to a different plan. |
DID_FAIL_TO_RENEW | A subscription failed to renew due to a billing issue such as an expired payment method. |
EXPIRED | A subscription expired and is no longer active. |
GRACE_PERIOD_EXPIRED | The billing grace period after a failed renewal has ended without successful payment. |
Offers
| Event | Description |
|---|---|
OFFER_REDEEMED | A customer redeemed a subscription offer code (introductory, promotional, or win-back offer). |
PRICE_INCREASE | The system requires customer consent for a subscription price increase before it can take effect. |
Refunds
| Event | Description |
|---|---|
REFUND | Apple refunded an in-app purchase transaction. |
REFUND_DECLINED | Apple declined a customer's refund request. |
REFUND_REVERSED | Apple reversed a previously granted refund — the original transaction is active again. |
Revocations
| Event | Description |
|---|---|
REVOKE | An in-app purchase was revoked. This typically happens when a purchase is no longer shared through Family Sharing, or when Apple revokes a transaction. |
Purchases
| Event | Description |
|---|---|
ONE_TIME_CHARGE | A customer purchased a consumable, non-consumable, or non-renewing subscription, including Family Sharing access to a non-consumable. |
Consent
| Event | Description |
|---|---|
RESCIND_CONSENT | A parent or guardian withdrew consent for a child's use of your app. Apple then prevents the app from launching for that child. |
Other
| Event | Description |
|---|---|
CONSUMPTION_REQUEST | Apple is requesting consumption data to help process a customer's refund request. Your server should respond with usage information. |
TEST | A test notification sent to verify your server endpoint is reachable and responding correctly. |
RENEWAL_EXTENDED | A subscription renewal date was extended, giving the customer additional time before the next billing date. |
RENEWAL_EXTENSION | A batch renewal-date extension finished. The SUMMARY subtype reports succeeded and failed counts; FAILURE reports a single subscriber that could not be extended. |
EXTERNAL_PURCHASE_TOKEN | An external purchase token event for apps that use alternative payments in the EU. Subtypes include CREATED, ACTIVE_TOKEN_REMINDER, and UNREPORTED. |
Advanced Commerce
These notification types fire only for apps that use Apple's Advanced Commerce API. They are available in Yeethook's event selector but are not selected by default.
| Event | Description |
|---|---|
METADATA_UPDATE | You changed subscription metadata through the Change Subscription Metadata endpoint. |
MIGRATION | You migrated a subscription to the Advanced Commerce API. |
PRICE_CHANGE | You changed a subscription price through the Change Subscription Price endpoint. |
For the full App Store Server Notifications documentation, see notificationType on Apple Developer.