> ## Documentation Index
> Fetch the complete documentation index at: https://docs.asccli.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# App Store Connect CLI

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

<div className="relative overflow-x-hidden dark:bg-[#0f1117] bg-[#FAFAFA]">
  <div className="relative py-20 px-6 sm:px-8 lg:px-12" style={{background: 'linear-gradient(135deg, #1c1c1c 0%, #2a2a2a 100%)'}}>
    <div className="max-w-7xl mx-auto">
      <div className="grid lg:grid-cols-12 gap-12 items-center">
        <div className="lg:col-span-7">
          <h1 className="text-4xl sm:text-5xl lg:text-6xl font-bold text-white mb-6">
            App Store Connect from the command line
          </h1>

          <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>
  </div>

  <div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
    <h2 className="text-2xl sm:text-3xl font-semibold dark:text-white text-gray-900 mb-4">
      Quick start
    </h2>

    <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} theme={null}
        brew install asc
        ```

        ```bash Install Script theme={null} 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} 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} 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>
  </div>

  <div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
    <h2 className="text-2xl sm:text-3xl font-semibold dark:text-white text-gray-900 mb-4">
      Explore by topic
    </h2>

    <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>
  </div>

  <div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
    <h2 className="text-2xl sm:text-3xl font-semibold dark:text-white text-gray-900 mb-4">
      Command reference
    </h2>

    <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>
  </div>

  <div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
    <h2 className="text-2xl sm:text-3xl font-semibold dark:text-white text-gray-900 mb-4">
      Resources
    </h2>

    <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>
  </div>

  <div className="mt-20 mb-16 max-w-5xl mx-auto px-6">
    <div className="rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-8 sm:p-12 text-center">
      <h2 className="text-2xl sm:text-3xl font-semibold dark:text-white text-gray-900 mb-4">
        Start with the quickstart
      </h2>

      <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>
  </div>
</div>
