Skip to main content

Crate smbcloud_ascapi_frontend

Crate smbcloud_ascapi_frontend 

Source
Expand description

Operations shared by the asc command line and its MCP server.

Both surfaces need the same things: resolve credentials, call the App Store Connect client, and shape the result into something worth showing a human or handing a model. Putting that here means the two front ends cannot drift, and in particular that the ordering guarantee in certificates::issue_certificate (private key written before the network call) has exactly one implementation.

Two rules the result types are built around, because one of the consumers is a language model:

  • No key material in a result. certificates::IssuedCertificate carries the path a key was written to, never the key. Enforced by construction rather than filtered at the edge, since a filter is one refactor away from being bypassed.
  • No certificate bodies either. They are large, never needed to decide what to do next, and would otherwise land in a transcript. profiles::ProfileSummary applies the same rule to profileContent, and profiles::download_profile returns the path it wrote instead.

Re-exports§

pub use certificates::certificate_type_from_str;
pub use certificates::issue_certificate;
pub use certificates::CertificateSummary;
pub use certificates::IssuedCertificate;
pub use enums::bundle_id_platform_from_str;
pub use enums::display_type_from_str;
pub use enums::platform_from_str;
pub use env::api_key_from_env;
pub use profiles::download_profile;
pub use profiles::profile_type_from_str;
pub use profiles::DownloadedProfile;
pub use profiles::ProfileSummary;
pub use review::plan_submission;
pub use review::submit_for_review;
pub use review::SubmissionPlan;
pub use review::SubmittedReview;
pub use time::is_expired;
pub use time::now_iso8601;
pub use upload::upload_package;
pub use upload::AltoolAuth;
pub use upload::UploadOutcome;

Modules§

certificates
Certificate operations shared by both front ends.
enums
String to enum mapping for values that arrive as text from a command line or a tool call.
env
Credential resolution from the environment.
profiles
Provisioning profile operations shared by both front ends.
review
Submitting an App Store Version for App Review.
time
Timestamp helpers for comparing against App Store Connect’s expiry strings without a date-parsing dependency.
upload
Uploading an .ipa/.pkg to App Store Connect through xcrun altool.