Skip to content

Latest commit

 

History

History
269 lines (216 loc) · 11.7 KB

File metadata and controls

269 lines (216 loc) · 11.7 KB

App Store Connect CLI

Command-line access to the App Store Connect API for iOS, macOS, tvOS, and visionOS release work

App Store Connect from the command line

      <p className="text-lg sm:text-xl text-gray-300 mb-8 max-w-2xl">
        Run App Store Connect tasks from your terminal, IDE, or CI/CD pipeline. Manage TestFlight, builds, submissions, signing, analytics, and more.
      </p>

      <div className="flex flex-wrap gap-4">
        <a href="/quickstart" className="inline-flex items-center px-6 py-3 rounded-lg font-semibold transition-colors bg-[#8c8c8d] text-white hover:bg-[#7a7a7b]">
          Get Started
        </a>

        <a href="/commands/overview" className="inline-flex items-center px-6 py-3 rounded-lg font-semibold transition-colors border border-white/30 bg-white/10 text-white hover:bg-white/20">
          Command Reference
        </a>
      </div>
    </div>

    <div className="lg:col-span-5 hidden lg:block">
      <div className="dark:bg-[#1a1d27] bg-white rounded-2xl border dark:border-[#27272a] border-gray-200 p-6 shadow-2xl">
        <div className="font-mono text-sm">
          <div className="text-gray-400 dark:text-gray-500 mb-2">\$ asc apps list</div>
          <div className="text-green-400 mb-4">OK Authenticated as MyApp</div>

          <div className="space-y-2 text-gray-300 dark:text-gray-400">
            <div>iOS My iOS App (123456789)</div>
            <div>macOS My macOS App (987654321)</div>
            <div>tvOS My tvOS App (456789123)</div>
          </div>

          <div className="mt-4 text-gray-400 dark:text-gray-500">\$ asc builds upload --app 123456789</div>
          <div className="text-green-400 mt-2">OK Build uploaded successfully</div>
        </div>
      </div>
    </div>
  </div>
</div>

Quick start

<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
  Get up and running with the App Store Connect CLI in minutes
</p>

<Steps>
  <Step title="Install the CLI">
    Install via Homebrew (recommended) or use the install script:

    ```bash Homebrew theme={null}
    brew install asc
    ```

    ```bash Install Script theme={null}
    curl -fsSL https://asccli.sh/install | bash
    ```
  </Step>

  <Step title="Authenticate with your API key">
    Generate an API key from [App Store Connect](https://appstoreconnect.apple.com/access/integrations/api) and authenticate:

    ```bash  theme={null}
    asc auth login \
      --name "MyApp" \
      --key-id "ABC123" \
      --issuer-id "DEF456" \
      --private-key /path/to/AuthKey.p8
    ```

    <Note>
      Your credentials are securely stored in the system keychain with config/env fallback.
    </Note>
  </Step>

  <Step title="Run your first command">
    List your apps to verify authentication:

    ```bash  theme={null}
    asc apps list --output table
    ```

    <Accordion title="Example output">
      ```
      ID          NAME              BUNDLE ID
      123456789   My iOS App        com.example.myapp
      987654321   My macOS App      com.example.macapp
      ```
    </Accordion>
  </Step>
</Steps>

Explore by topic

<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
  Guides for the main parts of shipping and maintaining your apps
</p>

<CardGroup cols={2}>
  <Card title="TestFlight distribution" icon="plane" href="/guides/testflight">
    Manage builds, beta testers, feedback, and crash reports
  </Card>

  <Card title="App Store submission" icon="rocket" href="/guides/app-store-submission">
    Validate, submit, and automate your App Store release process
  </Card>

  <Card title="Code signing" icon="key" href="/guides/code-signing">
    Manage certificates, provisioning profiles, and bundle IDs
  </Card>

  <Card title="Metadata management" icon="pen-to-square" href="/guides/metadata-management">
    Update app info, localizations, screenshots, and preview videos
  </Card>

  <Card title="Analytics & reports" icon="chart-line" href="/guides/analytics-reports">
    Download analytics, financial reports, and performance metrics
  </Card>

  <Card title="CI/CD integration" icon="code-branch" href="/cicd/overview">
    Integrate with GitHub Actions, GitLab CI, Bitrise, and CircleCI
  </Card>
</CardGroup>

Command reference

<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
  Browse all available commands organized by category
</p>

<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
  <a href="/commands/apps" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
    <div className="flex items-start gap-4">
      <div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Apps</div>

      <div>
        <h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">App Management</h3>
        <p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Manage apps, versions, localizations, pricing, and categories</p>

        <div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
          View commands

          <svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
          </svg>
        </div>
      </div>
    </div>
  </a>

  <a href="/commands/testflight" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
    <div className="flex items-start gap-4">
      <div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Test</div>

      <div>
        <h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">TestFlight & Builds</h3>
        <p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Upload builds, manage testers, view feedback and crashes</p>

        <div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
          View commands

          <svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
          </svg>
        </div>
      </div>
    </div>
  </a>

  <a href="/commands/signing" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
    <div className="flex items-start gap-4">
      <div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Sign</div>

      <div>
        <h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">Code Signing</h3>
        <p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Manage certificates, provisioning profiles, and bundle IDs</p>

        <div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
          View commands

          <svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
          </svg>
        </div>
      </div>
    </div>
  </a>

  <a href="/commands/workflow" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
    <div className="flex items-start gap-4">
      <div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Auto</div>

      <div>
        <h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">Automation</h3>
        <p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Run workflows, webhooks, Xcode Cloud, and notifications</p>

        <div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
          View commands

          <svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
          </svg>
        </div>
      </div>
    </div>
  </a>
</div>

Resources

<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
  Reference pages, troubleshooting notes, and project docs
</p>

<CardGroup cols={3}>
  <Card title="Troubleshooting" icon="wrench" href="/resources/troubleshooting">
    Common issues and solutions
  </Card>

  <Card title="FAQ" icon="circle-question" href="/resources/faq">
    Frequently asked questions
  </Card>

  <Card title="Contributing" icon="code-pull-request" href="/resources/contributing">
    Contribute to the project
  </Card>
</CardGroup>

Start with the quickstart

  <p className="text-base dark:text-gray-400 text-gray-600 mb-8 max-w-2xl mx-auto">
    Set up the CLI and run your first App Store Connect command.
  </p>

  <a href="/quickstart" className="inline-flex items-center px-6 py-3 rounded-lg font-semibold transition-colors bg-[#8c8c8d] text-white hover:bg-[#7a7a7b]">
    Get Started
  </a>
</div>