# App Store Connect API credentials # Create a key: App Store Connect → Users and Access → Integrations → App Store Connect API # Download the .p8 once; store it under secrets/ (never commit it). # # Copy this file to .env and fill in your values: # cp .env.example .env # # Load before CI/scripts (example): # set -a && source .env && set +a # Issuer ID (UUID on the App Store Connect API keys page) APP_STORE_CONNECT_ISSUER_ID= # Key ID (10 characters, shown when you create the API key) APP_STORE_CONNECT_KEY_ID= # Path to the downloaded private key (.p8), relative to repo root APP_STORE_CONNECT_API_KEY_PATH=secrets/AuthKey_XXXXXXXXXX.p8 # Optional: private key contents instead of a file (use \n for line breaks in one line) # APP_STORE_CONNECT_API_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----" # App Store Connect numeric App ID (App Information → Apple ID) APP_STORE_CONNECT_APP_ID= # This project (from Xcode) PRODUCT_BUNDLE_IDENTIFIER=com.hwaccount.zoom-app DEVELOPMENT_TEAM=NNC7V99779 # Optional: Apple ID + app-specific password (Transporter / legacy upload flows) APPLE_ID= APP_SPECIFIC_PASSWORD= # Zoom Marketplace OAuth app # Production redirect URI / allow list must include exactly: # https://www.mqldevelopment.com/oauth/zoom-callback # (Production rejects loopback http://127.0.0.1:8742/oauth2redirect with error 4,700.) # Mirror Client ID values in the Xcode scheme (Run → Arguments → Environment Variables). # With Use Public Client OAuth ON, authorize uses ZOOM_OAUTH_PUBLIC_CLIENT_ID + PKCE. # Do not copy Marketplace’s generated OAuth URL — it uses the confidential Client ID and fails with loopback/HTTPS PKCE mismatch. ZOOM_OAUTH_CLIENT_ID= ZOOM_OAUTH_PUBLIC_CLIENT_ID= ZOOM_OAUTH_CLIENT_SECRET=