Apple website screenshot

Apple

Collection of Apple's public APIs and developer resources.

19 APIs 12 Features
DeveloperiOSmacOSMobileTechnologyFortune 100

APIs

Apple Music API

Access Apple Music catalog, user library, and playback controls.

WeatherKit REST API

Access weather forecasts, current conditions, and historical weather data.

App Store Connect API

Automate tasks for App Store Connect and access app metadata.

MapKit JS

Embed interactive Apple Maps on websites.

Sign in with Apple REST API

Integrate Sign in with Apple authentication.

Apple Push Notification Service (APNs)

Send push notifications to iOS, macOS, watchOS, and tvOS devices.

App Store Server API

Manage customer App Store transactions from your server, including in-app purchases and subscriptions.

App Store Server Notifications V2

Receive real-time notifications about in-app purchase events and subscription lifecycle changes.

Apple Maps Server API

Server-side geocoding, reverse geocoding, search, and estimated time of arrival using Apple Maps.

Apple News API

Publish, manage, update, and delete Apple News Format articles.

DeviceCheck API

Reduce fraudulent use of your services by managing device state and asserting app integrity.

Apple Ads Campaign Management API

Create, manage, and report on Apple Search Ads campaigns programmatically.

Wallet Passes Web Service

Create, distribute, and update passes for the Apple Wallet app via a web service.

Enterprise Program API

Automate management of users, roles, provisioning profiles, and bundle identifiers for enterprise apps.

Apple School and Business Manager API

Automate device management actions and access data about devices enrolled via Automated Device Enrollment.

Apple Pay on the Web

Accept Apple Pay payments on your website using JavaScript-based APIs.

Wallet Orders

Create, distribute, and update orders in Apple Wallet for order tracking.

ClassKit Catalog API

Declare educational activities supported by your app for use with Apple Schoolwork.

Apple Music Feed API

Access the Apple Music catalog metadata in bulk for albums, songs, and artists.

Collections

GraphQL

Apple GraphQL Schema

This conceptual GraphQL schema represents the Apple App Store Connect API and related Apple developer APIs. Apple's public APIs are REST-based (App Store Connect API, Apple Musi...

GRAPHQL

Pricing Plans

Apple Plans Pricing

3 plans

PLANS

Rate Limits

Apple Rate Limits

2 limits

RATE LIMITS

FinOps

Apple Finops

FINOPS

Features

Apple (App Store + iCloud + Apple Music + Maps): hundreds of services across Consumer Cloud + Developer
Detailed pricing: see https://developer.apple.com/programs/
Service: App Store Connect API
Service: Apple Music API
Service: MapKit JS / Apple Maps Server API
Service: Sign in with Apple
Service: Push Notifications (APNs)
Service: iCloud Web Services
Service: WeatherKit REST API
Service: Apple Pay Web
Service: Wallet API
Service: Apple Search Ads API

Use Cases

App Distribution

Automate app submissions, manage TestFlight beta testing, and handle app metadata at scale.

In-App Purchases

Manage subscriptions, consumables, and transaction history with server-side verification.

Enterprise Device Management

Automate device enrollment and management for schools and businesses at scale.

Content Publishing

Publish and manage articles in Apple News with rich media and analytics.

Location Services

Build location-aware applications with geocoding, routing, and interactive maps.

Integrations

Xcode

Full IDE integration for building, testing, and deploying apps across all Apple platforms.

TestFlight

Beta testing platform for distributing pre-release builds to internal and external testers.

App Analytics

View app performance metrics, downloads, and user engagement data.

CloudKit

Store and sync app data across devices using Apple's cloud infrastructure.

Semantic Vocabularies

App Store Connect Context

0 classes · 0 properties

JSON-LD

Apple Context

2 classes · 9 properties

JSON-LD

API Governance Rules

Apple API Rules

7 rules · 7 errors

SPECTRAL

JSON Structure

App Store Connect App Attributes Structure

11 properties

JSON STRUCTURE

App Store Connect App Relationships Structure

6 properties

JSON STRUCTURE

App Store Connect App Response Structure

1 properties

JSON STRUCTURE

App Store Connect App Structure

2 properties

JSON STRUCTURE

App Store Connect Apps Response Structure

2 properties

JSON STRUCTURE

App Store Connect Beta Group Structure

2 properties

JSON STRUCTURE

App Store Connect Beta Tester Structure

2 properties

JSON STRUCTURE

App Store Connect Build Attributes Structure

11 properties

JSON STRUCTURE

App Store Connect Build Response Structure

1 properties

JSON STRUCTURE

App Store Connect Build Structure

2 properties

JSON STRUCTURE

App Store Connect Builds Response Structure

2 properties

JSON STRUCTURE

App Store Connect Document Links Structure

1 properties

JSON STRUCTURE

App Store Connect Error Detail Structure

6 properties

JSON STRUCTURE

App Store Connect Error Response Structure

1 properties

JSON STRUCTURE

App Store Connect Relationship Data Structure

2 properties

JSON STRUCTURE

App Store Connect Resource Link Structure

1 properties

JSON STRUCTURE

Example Payloads

Press

Apple Intelligence gets even more powerful with new ...

2026-05-25

Introducing Apple Intelligence for iPhone, iPad, and Mac

2026-05-25

Apple Intelligence is available today on iPhone, iPad, and ...

2026-05-25

Use Apple Intelligence on your iPhone

2026-05-25

Joint statement from Google and Apple

2026-05-25

Resources

🔗
LinkedIn
LinkedIn
🌐
DeveloperPortal
DeveloperPortal
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
💬
Support
Support
📰
Blog
Blog
🟢
StatusPage
StatusPage
📝
Signup
Signup
💰
Pricing
Pricing
👥
GitHubOrganization
GitHubOrganization
👥
YouTube
YouTube
📄
ChangeLog
ChangeLog
🔑
Authentication
Authentication
🎓
Tutorials
Tutorials
💻
CodeExamples
CodeExamples
📦
SDKs
SDKs
🔗
Contact
Contact
🔗
JSONLD
JSONLD
🔗
SpectralRules
SpectralRules
🔗
MCPServer
MCPServer

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Apple App Store Connect API
  version: 3.6.0
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Apps
    type: folder
  items:
  - info:
      name: List Apps
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/apps
      params:
      - name: filter[bundleId]
        value: ''
        type: query
        description: Filter by bundle identifier
      - name: filter[id]
        value: ''
        type: query
        description: Filter by app resource ID
      - name: filter[name]
        value: ''
        type: query
        description: Filter by app name
      - name: filter[sku]
        value: ''
        type: query
        description: Filter by SKU
      - name: filter[appStoreVersions.platform]
        value: ''
        type: query
        description: Filter by platform
      - name: filter[appStoreVersions.appStoreState]
        value: ''
        type: query
        description: Filter by App Store version state
      - name: sort
        value: ''
        type: query
        description: Sort order for the results
      - name: fields[apps]
        value: ''
        type: query
        description: Fields to return for app resources
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Find and list apps in App Store Connect. Returns a paginated list of apps associated with your Apple Developer account.
  - info:
      name: Read App Information
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/apps/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the app resource
      - name: fields[apps]
        value: ''
        type: query
        description: Fields to return for app resources
      - name: include
        value: ''
        type: query
        description: Relationship data to include in the response
    docs: Get information about a specific app.
  - info:
      name: Modify an App
      type: http
    http:
      method: PATCH
      url: https://api.appstoreconnect.apple.com/v1/apps/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the app resource
      body:
        type: json
        data: '{}'
    docs: Update app information including app-level attributes.
  - info:
      name: List All Builds of an App
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/apps/:id/builds
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the app resource
      - name: fields[builds]
        value: ''
        type: query
        description: Fields to return for build resources
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Get a list of builds associated with a specific app.
- info:
    name: Builds
    type: folder
  items:
  - info:
      name: List Builds
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/builds
      params:
      - name: filter[app]
        value: ''
        type: query
        description: Filter by app resource ID
      - name: filter[id]
        value: ''
        type: query
        description: Filter by build resource ID
      - name: filter[version]
        value: ''
        type: query
        description: Filter by build version string
      - name: filter[expired]
        value: ''
        type: query
        description: Filter by expiration status
      - name: filter[processingState]
        value: ''
        type: query
        description: Filter by processing state
      - name: filter[preReleaseVersion.platform]
        value: ''
        type: query
        description: Filter by platform
      - name: filter[preReleaseVersion.version]
        value: ''
        type: query
        description: Filter by pre-release version string
      - name: filter[betaGroups]
        value: ''
        type: query
        description: Filter by beta group IDs
      - name: filter[usesNonExemptEncryption]
        value: ''
        type: query
        description: Filter by encryption usage
      - name: sort
        value: ''
        type: query
        description: Sort order for results
      - name: fields[builds]
        value: ''
        type: query
        description: Fields to return for build resources
      - name: include
        value: ''
        type: query
        description: Relationship data to include in the response
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Find and list builds for all apps in App Store Connect. Returns a paginated list of builds.
  - info:
      name: Read Build Information
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/builds/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the build resource
      - name: fields[builds]
        value: ''
        type: query
        description: Fields to return for build resources
      - name: include
        value: ''
        type: query
        description: Relationship data to include in the response
    docs: Get information about a specific build.
  - info:
      name: Modify a Build
      type: http
    http:
      method: PATCH
      url: https://api.appstoreconnect.apple.com/v1/builds/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the build resource
      body:
        type: json
        data: '{}'
    docs: Expire a build or change its encryption exemption setting.
  - info:
      name: List All Individual Testers for a Build
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/builds/:id/individualTesters
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the build resource
      - name: fields[betaTesters]
        value: ''
        type: query
        description: Fields to return for beta tester resources
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Get a list of beta testers individually assigned to a build.
- info:
    name: Beta Testers
    type: folder
  items:
  - info:
      name: List Beta Testers
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/betaTesters
      params:
      - name: filter[email]
        value: user@example.com
        type: query
        description: Filter by email address
      - name: filter[firstName]
        value: ''
        type: query
        description: Filter by first name
      - name: filter[lastName]
        value: ''
        type: query
        description: Filter by last name
      - name: filter[inviteType]
        value: ''
        type: query
        description: Filter by invitation type
      - name: filter[apps]
        value: ''
        type: query
        description: Filter by app resource IDs
      - name: filter[betaGroups]
        value: ''
        type: query
        description: Filter by beta group resource IDs
      - name: filter[builds]
        value: ''
        type: query
        description: Filter by build resource IDs
      - name: filter[id]
        value: ''
        type: query
        description: Filter by beta tester resource ID
      - name: sort
        value: ''
        type: query
        description: Sort order for results
      - name: fields[betaTesters]
        value: ''
        type: query
        description: Fields to return for beta tester resources
      - name: include
        value: ''
        type: query
        description: Relationship data to include in the response
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Find and list beta testers for all apps, builds, and beta groups.
  - info:
      name: Create a Beta Tester
      type: http
    http:
      method: POST
      url: https://api.appstoreconnect.apple.com/v1/betaTesters
      body:
        type: json
        data: '{}'
    docs: Create a beta tester assigned to a group, a build, or an app.
  - info:
      name: Read Beta Tester Information
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/betaTesters/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta tester resource
      - name: fields[betaTesters]
        value: ''
        type: query
        description: Fields to return for beta tester resources
      - name: include
        value: ''
        type: query
        description: Relationship data to include in the response
    docs: Get information about a specific beta tester.
  - info:
      name: Delete a Beta Tester
      type: http
    http:
      method: DELETE
      url: https://api.appstoreconnect.apple.com/v1/betaTesters/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta tester resource
    docs: Remove a beta tester's ability to test all apps.
  - info:
      name: List All Apps for a Beta Tester
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/betaTesters/:id/apps
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta tester resource
      - name: fields[apps]
        value: ''
        type: query
        description: Fields to return for app resources
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Get a list of apps that a beta tester can test.
  - info:
      name: List All Builds Individually Assigned to a Beta Tester
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/betaTesters/:id/builds
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta tester resource
      - name: fields[builds]
        value: ''
        type: query
        description: Fields to return for build resources
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Get a list of builds individually assigned to a specific beta tester.
  - info:
      name: List Beta Groups
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/betaGroups
      params:
      - name: filter[app]
        value: ''
        type: query
        description: Filter by app resource ID
      - name: filter[name]
        value: ''
        type: query
        description: Filter by group name
      - name: filter[isInternalGroup]
        value: ''
        type: query
        description: Filter by internal group status
      - name: filter[publicLinkEnabled]
        value: ''
        type: query
        description: Filter by public link enabled status
      - name: filter[id]
        value: ''
        type: query
        description: Filter by beta group resource ID
      - name: sort
        value: ''
        type: query
        description: Sort order for results
      - name: fields[betaGroups]
        value: ''
        type: query
        description: Fields to return for beta group resources
      - name: include
        value: ''
        type: query
        description: Relationship data to include in the response
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Find and list beta groups for all apps.
  - info:
      name: Create a Beta Group
      type: http
    http:
      method: POST
      url: https://api.appstoreconnect.apple.com/v1/betaGroups
      body:
        type: json
        data: '{}'
    docs: Create a beta group associated with an app, optionally enabling TestFlight public links.
  - info:
      name: Read Beta Group Information
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/betaGroups/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta group resource
      - name: fields[betaGroups]
        value: ''
        type: query
        description: Fields to return for beta group resources
      - name: include
        value: ''
        type: query
        description: Relationship data to include in the response
    docs: Get information about a specific beta group.
  - info:
      name: Modify a Beta Group
      type: http
    http:
      method: PATCH
      url: https://api.appstoreconnect.apple.com/v1/betaGroups/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta group resource
      body:
        type: json
        data: '{}'
    docs: Modify a beta group's metadata, including name and public link status.
  - info:
      name: Delete a Beta Group
      type: http
    http:
      method: DELETE
      url: https://api.appstoreconnect.apple.com/v1/betaGroups/:id
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta group resource
    docs: Delete a beta group and remove beta tester access to associated builds.
  - info:
      name: List All Beta Testers in a Beta Group
      type: http
    http:
      method: GET
      url: https://api.appstoreconnect.apple.com/v1/betaGroups/:id/betaTesters
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta group resource
      - name: fields[betaTesters]
        value: ''
        type: query
        description: Fields to return for beta tester resources
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return (maximum 200)
    docs: Get a list of beta testers contained in a specific beta group.
  - info:
      name: Add Beta Testers to a Beta Group
      type: http
    http:
      method: POST
      url: https://api.appstoreconnect.apple.com/v1/betaGroups/:id/relationships/betaTesters
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta group resource
      body:
        type: json
        data: '{}'
    docs: Add one or more beta testers to a specific beta group.
  - info:
      name: Remove Beta Testers From a Beta Group
      type: http
    http:
      method: DELETE
      url: https://api.appstoreconnect.apple.com/v1/betaGroups/:id/relationships/betaTesters
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier for the beta group resource
      body:
        type: json
        data: '{}'
    docs: Remove one or more beta testers from a specific beta group.
bundled: true