Expand description
App Store Connect’s App Metadata resources: apps, app infos and their localizations, app store versions and their localizations, builds, bundle IDs, and screenshots.
Everything here is an extension trait on
Client, because that type belongs to
the core crate and Rust only allows inherent impls in the crate that
defines a type. Import prelude to get all of them at once.
use smbcloud_ascapi_core::{ApiKey, Client};
use smbcloud_ascapi_aso::prelude::*;
let api_key = ApiKey::from_p8_file("L84N624YQH", "b4e8d369-…", "AuthKey.p8")?;
let client = Client::new(api_key);
let apps = client.list_apps(Some("xyz.smbcloud.mailx")).await?;Modules§
- app
GET /v1/apps,GET/PATCH /v1/apps/{id}. Note there is noPOST /v1/apps— App Store Connect has no “create an app” endpoint. An app record comes into existence the first time you register its bundle ID (seecrate::bundle_id) and give it a firstcrate::app_store_version; the App Store Connect UI (or, per platform, a build upload) is what actually provisions theApprow. This module only reads and updates one that already exists.- app_
info - An
AppInfois the platform-independent, category/age-rating side of an app’s metadata; its localized name/subtitle live oncrate::app_info_localization. App Store Connect creates and managesAppInforows itself (there is no create/delete endpoint) — this module only reads them and updates category/age-rating relationships. - app_
info_ localization - app_
screenshot - An
AppScreenshotis one image binary within anAppScreenshotSet. Uploading one is a three-step JSON:API + raw-HTTP dance (see https://developer.apple.com/documentation/appstoreconnectapi/uploading-assets-to-app-store-connect): - app_
screenshot_ set - An
AppScreenshotSetgroups the screenshots for one device/display class (e.g. Apple Vision Pro, iPhone 6.7“) within one localization of anAppStoreVersion. Screenshots themselves are a separate resource (crate::app_screenshot) that belongs to a set. - app_
store_ version - An
AppStoreVersionis App Store Connect’s per-platform record for an app:platformis one ofIOS/MAC_OS/TV_OS/VISION_OS. Since there is no direct “create app for platform X” endpoint (seecrate::app), creating anAppStoreVersionfor a platform an app doesn’t have one for yet — e.g. adding visionOS to an app that so far only ships on iOS/macOS — is how you add that platform. - app_
store_ version_ localization - beta_
app_ review_ detail BetaAppReviewDetail— contact and demo info that Apple’s Beta App Review team uses when reviewing an app for external TestFlight distribution.- beta_
app_ review_ submission BetaAppReviewSubmission— submit a build to Apple’s Beta App Review for external TestFlight distribution approval.- beta_
build_ localization BetaBuildLocalization— per-locale “What to Test” notes on a TestFlight build.- beta_
group BetaGroup— a TestFlight distribution group that can receive builds.- build
- Lookup for
Build— the processed artifact behind an uploaded.ipa/.pkg— andPreReleaseVersion, the version string App Store Connect groups builds under for TestFlight. The one write is a build’s export-compliance answer (BuildsApi::update_build). - bundle_
id - prelude
- Every extension trait in this crate, for one glob import.
- review_
submission ReviewSubmission— how an App Store Version reaches App Review.