12 releases

0.1.11 Nov 30, 2023
0.1.10 Aug 29, 2023
0.1.8 Jun 20, 2023
0.1.7 May 10, 2023
0.1.3 Jan 31, 2023

#453 in Web programming

45 downloads per month

MIT license

59KB
1.5K SLoC

app store connect

This repository is an AppStoreConnect api client, allow your invoke api in Rust. The full api docs in here.

Easily to use

  1. First. You need request Issuer ID, KeyId and Key in the website : https://appstoreconnect.apple.com/access/api.

  2. Adding appstoreconnect

    Run this command in your terminal to add the latest version of appstoreconnect.

    $ cargo add appstoreconnect
    
  3. build and use the client

    iss : Issuer ID
    kid : KeyId
    ec_der : key.p8 base64 content

    #[tokio::main]
    async fn main() -> Result<()> {
        // create client
        let client = ClientBuilder::default()
            .with_iss(env!("iss"))
            .with_kid(env!("kid"))
            .with_ec_der(base64::decode(env!("ec_der"))?) 
            .build()?;
        // get find devices
        let devices = client.devices(DeviceQuery {
                    filter_name: Some("mini".to_string()),
                    ..Default::default()
                }).await?;
        Ok(())
    }
    
  4. More example : Create or list profile, certs, bundleIds please visit test.rs

features

  • App Store
    • Apps
      • List Apps
      • Modify an App
    • Builds
  • Bundle IDs
    • List Bundle IDs
    • Register New Bundle ID
  • Bundle ID Capabilities
  • Certificates
    • List and Download Certificates
    • Create a Certificate
    • Revoke a Certificate
  • Devices
    • Register a New Device
    • List Devices
  • Profiles
    • Create a Profile
    • List and Download Profiles
    • Delete a Profile
  • Users
    • List users
    • Read User Information
    • Modify a User Account
    • App Accesses
      • List All Apps Visible to a User
      • Add Visible Apps to a User
      • Remove Visible Apps from a User
  • User Invitations
  • Sandbox Testers

Dependencies

~7–22MB
~333K SLoC