<!--
{
  "documentType" : "article",
  "framework" : "AppStoreConnectAPI",
  "identifier" : "/documentation/AppStoreConnectAPI/creating-alternative-distribution-packages",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "Creating alternative distribution packages"
}
-->

# Creating alternative distribution packages

Create distribution packages for your apps that you distribute on alternative marketplaces or on the web.

## Discussion

Use alternative distribution package (ADP) endpoints to create new packages and read information about package versions, variants, and deltas.

### Determing eligibilty to create alternative distribution packages

Your app is eligible for an alternative distribution package if all of the following are true:

- You accept the [Alternative Terms Addendum for Apps in the EU](https://developer.apple.com/contact/request/alternative-eu-terms-addendum/). For more information, see [Update on apps distributed in the European Union](https://developer.apple.com/support/dma-and-apps-in-the-eu/).
- Your app is an iOS, iPadOS app, or targets both platforms.
- Your app version uses the iOS or iPadOS 16.1 SDK or later.
- Your App Review approved app version is in `Pending Developer Release, Pending Apple Release,` or `Ready for Distribution.`

Additionally, one of these must be true:

- Your app is connected to an alternative marketplace. For more information, see [Manage distribution on an alternative marketplace](https://developer.apple.com/help/app-store-connect/distributing-apps-in-the-european-union/manage-distribution-on-an-alternative-app-marketplace).
- Your app is an alternative marketplace. For more information, see [Configuring alternative marketplaces and alternative marketplace apps](/documentation/AppStoreConnectAPI/configuring-alternative-marketplaces-and-alternative-marketplace-apps).
- Your app is a web distribution app. For more infomation, see [Configuring apps for web distribution](/documentation/AppStoreConnectAPI/configuring-apps-for-web-distribution).

> Note:
> Alternative marketpaces, apps distributed by alternative marketplaces, and web distribution apps all use alternative distribution packages. Web distribution apps do not use <doc://com.apple.appstoreconnectapi/documentation/AppStoreConnectAPI/notifications> or <doc://com.apple.appstoreconnectapi/documentation/AppStoreConnectAPI/marketplace-search-configurations>.``

### Create and manage alternative distribution packages for an alternative marketplace

As an app developer for alternative marketplaces, when you add an app to a marketplace integration for distribution on a specific marketplace, you can opt-in to notifications. These notifications alert the marketplace when there are certain changes to your apps — for example, when a new alternative distribution package is generated. For more information on managing notifications, see [Notifications](/documentation/AppStoreConnectAPI/notifications).

After your app is approved by App Review, and after you add it to a marketplace integration in App Store Connect, you need to create the alternative distribution package. Start by finding the app Apple ID for your app by using [`List apps`](/documentation/AppStoreConnectAPI/GET-v1-apps) and searching the resulting pages for the name of the app you want. In the response, make note of the `id` of that app, which appears in the following format:

```other
{
  "data" : [
    {
      "type" : "apps",
      "id" : "6448401697",
      ...
```

You can also find the app Apple ID by going to App Store Connect > My Apps > Select an app > App Information > Apple ID. Next, look up the `appStoreVersion` by calling [`List all app store versions for an app`](/documentation/AppStoreConnectAPI/GET-v1-apps-_id_-appStoreVersions) using the app Apple ID. Then, call [`Create an Alternative Distribution Package`](/documentation/AppStoreConnectAPI/POST-v1-alternativeDistributionPackages) using the `data.relationships.appStoreVersion.id` from the previous response. Use the sample payload below as a guide:

```other
{
  "data": {
    "type": "alternativeDistributionPackages",
    "relationships": {
      "appStoreVersion": {
        "data": {
          "type": "appStoreVersions",
          "id": "76931be7-95c6-470d-ace0-f3e208fd4b00"
        }
      }
    }
  }
}
```

If you opt-in to notifications, and the associated marketplace has set up webhooks with the [`Add a Marketplace Webhook Configuration`](/documentation/AppStoreConnectAPI/POST-v1-marketplaceWebhooks) endpoint, the marketplace is notified that a new alternative distribution package is available. If you did not opt-in, you’ll need to provide the alternative distribution package ID to the marketplace.

If you manage an alternative marketplace, you can get the alternative distribution package ID either from a notification from the webhooks API or manually from the app developer. A marketplace can’t generate alternative distribution packages on behalf of the app developer. The marketplace developer uses the App Store Connect API key associated with the marketplace provider’s account to download ADPs.

To learn more about server-side processing of marketplace webhooks, see <doc://com.apple.documentation/documentation/marketplacekit/processing-alternative-marketplace-notifications>.

### Create and manage alternative distribution packages for web distribution apps

After your web distribution app is approved by App Review, you need to create the alternative distribution package. Start by finding the app Apple ID for your app by using [`List apps`](/documentation/AppStoreConnectAPI/GET-v1-apps) and searching the resulting pages for the name of the app you want. In the response, make note of the `id` of that app, which appears in the following format:

```other
{
  "data" : [
    {
      "type" : "apps",
      "id" : "6448401697",
      ...
```

You can also find the app Apple ID by going to App Store Connect > My Apps > Select an app > App Information > Apple ID. Next, look up the `appStoreVersion` by calling [`List all app store versions for an app`](/documentation/AppStoreConnectAPI/GET-v1-apps-_id_-appStoreVersions) using the app Apple ID. Then, call [`Create an Alternative Distribution Package`](/documentation/AppStoreConnectAPI/POST-v1-alternativeDistributionPackages) using the `data.relationships.appStoreVersion.id` from the previous response. Use the sample payload below as a guide:

```other
{
  "data": {
    "type": "alternativeDistributionPackages",
    "relationships": {
      "appStoreVersion": {
        "data": {
          "type": "appStoreVersions",
          "id": "76931be7-95c6-470d-ace0-f3e208fd4b00"
        }
      }
    }
  }
}
```

To learn more about next steps for your web distribution app, see <doc://com.apple.documentation/documentation/marketplacekit/installing-your-app-from-your-website>.

### Select the most recent distribution package

Only one alternative distribution package can exist for an `appStoreVersion.` It’s possible that you might have multiple versions of an alternative distribution package. To ensure you’re selecting the most recent `alternativeDistributionPackageVersion` when there are multiple versions available, use `filter[state]=COMPLETED` when calling the [`Read Version Information for an Alternative Distribution Package`](/documentation/AppStoreConnectAPI/GET-v1-alternativeDistributionPackages-_id_-versions) endpoint.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)