作り方

App Store Connect API で作業を減らす

ブラウザを開いて手作業でクリックしていたビルド提出やメタデータ更新は、APIを使うと短時間で終わります。

6 分で読めます
App Store Connect API で作業を減らす
すくじ 編集部 更新 2026年10月19日

App Store Connect API で自動化できる日常作業

App Store Connect API を使うと、ブラウザで画面を行き来してクリックしていた作業をコマンドラインやスクリプトから実行できます。個人開発で最も時間を取られるのは、新しいビルドのTestFlight配布、バージョンごとのメタデータ登録、そして提出ステータスの確認です。これらを自動化すると、リリースのたびに管理画面を開いて待機する時間がなくなります。

手作業の管理画面操作は、入力欄の押し間違いや、審査提出時のチェック漏れを起こします。公式の App Store Connect API はREST形式で提供されており、ビルドのメタデータ設定、テスターグループへの配信、価格設定、さらにはプロモーションテキストの変更までプログラム経由で指示できます。ブラウザの読み込み待ちや二段階認証の再入力を繰り返す生活から抜け出すための基盤になります。

毎回手動で行っていた作業も、シェルスクリプトやCIツールに組み込めばコマンド実行で完了します。一度仕組みを作れば、複数のアプリを抱えていても同じスクリプトを使い回せます。

APIキーの作成とローカル環境の準備

作業の第一歩は、専用の認証キーを作ることです。Apple Developer Program(年間99米ドル、最新の金額はAppleのページを確認してください)のアカウントで App Store Connect の「ユーザーとアクセス」 にログインします。画面上部にある「統合」タブを選び、左側のメニューから「APIキー」をクリックします。

キーの作成画面でキー名や必要な役割を選択してキーを発行します。役割の選択肢や詳細な要件については、提出前にApp Store Connectを確認してください。

秘密鍵ファイルの取り扱いには注意してください。ダウンロードした秘密鍵ファイルは安全なディレクトリに配置して管理します。APIリクエストを送るときは、認証情報を使って署名付きJWT(JSON Web Token)を生成し、Authorization ヘッダーにベアラートークンとして付与します。トークンの有効期限などの仕様については、提出前にApp Store Connectを確認してください。

TestFlight配信をコマンドで完結させる

Xcodeからアーカイブをアップロードしたあと、TestFlightで外部テスターに配るまでの待機時間を短縮します。手作業だと、処理中(Processing)が解除されるのを画面のリロードを繰り返して待ち、内部グループや外部テスターに割り当てる必要があります。TestFlightでは最大10,000人までの外部テスターを登録できますが、外部公開には短いベータ版App審査が必要です。

APIを使うと、ビルドの処理状態を監視し、テスターグループをビルドに関連付ける処理を自動化できます。これで人間が画面を見張る必要がなくなります。設定要件は変更される可能性があるため、提出前にApp Store Connectを確認してください。

自前でcurlスクリプトを組むこともできますが、Fastlaneの `pilot` や公式のオープンソースライブラリを利用すると記述量を大幅に削れます。内部テスターへの即時配布であれば、ビルド完了後に端末へ通知が届く状態を自動化できます。

メタデータとストア説明文の更新

アプリのアップデート時に更新するテキスト情報も、API経由で一括更新できます。App Storeの入力欄には厳格な文字数制限があります(要件は変更される可能性があるため、提出前にApp Store Connectを確認してください)。アプリ名は30文字、サブタイトルは30文字、キーワード欄は100文字、プロモーションテキストは170文字、説明文は4,000文字です。Web画面で直接編集すると、文字数超過で保存に失敗してやり直しになる事故がよく起きます。

手元のGitリポジトリでテキストファイルを管理し、デプロイスクリプトから API 経由で更新します。変更内容の履歴がGitに残るため、いつどのキーワードを試したのか後から正確に追跡できます。プロモーションテキスト などの項目を更新したいとき、この自動化が役立ちます。

各言語のローカライズ文面も同様です。日本語と英語の両方を展開している場合、ブラウザ画面で言語を切り替えながらコピペを繰り返す作業はミスを招きます。ローカルの翻訳ファイルを読み込んで全言語を一括で反映できる体制を作ると、多言語対応の心理的ハードルが下がります。

よく起きるエラーと具体的な解決法

App Store Connect API を動かし始めた開発者が突き当たる代表的な失敗パターンを整理しました。原因の特定に時間を奪われないよう、対処法を把握しておきます。

エラー表示または現象主な原因解決手順
BETA_CONTRACT_MISSING有料契約や規約の未同意App Store Connectのアグリーメント画面で保留中の契約や規約の同意を完了させる(提出前にApp Store Connectを確認してください)。

エラーが発生した場合は、契約状況や権限設定に不備がないか、提出前にApp Store Connectを確認してください。

壊れないスクリプトを維持する工夫

Apple は API の機能追加や仕様変更を定期的に行います。最新バージョンへの対応情報を追うためには、公式リリースノートを確認する習慣をつけます。エンドポイントの急な廃止でCIが止まる事故を防ぐため、リクエストとレスポンスの構造を固定しすぎない設計にしておきます。

APIキーの漏洩対策も不可欠です。秘密鍵ファイルを誤って公開リポジトリにコミットしないよう、`.gitignore` への追加を徹底します。GitHub Actions や外部CIで動かす場合は、秘密鍵の中身を Base64 文字列に変換して環境変数(Secrets)に格納し、実行時にデコードして読み込ませます。

自動化を広げすぎないことも大事です。最初から全ての操作をAPI化しようとすると、スクリプトの作成自体に時間が取られます。まずは「TestFlight配布時の処理待ちとテスター紐付け」だけをスクリプト化し、効果を実感できたら「メタデータ更新」へと段階的に対象を広げる進め方が安全です。

よくある質問

個人のApple Developer ProgramアカウントでもAPIキーは作れますか?

作成できます。個人名義のアカウントでも組織アカウントでも、App Store Connect の「ユーザーとアクセス」タブからAPIキーの発行が可能です(提出前にApp Store Connectを確認してください)。

APIキーに有効期限はありますか?

APIキーやトークンの有効期限などの仕様については、提出前にApp Store Connectを確認してください。

スクリーンショットのアップロードもAPIで行えますか?

行えます。アップロード用のリザーブ要求を投げ、返ってきたアップロード先URLにバイナリを分割送信する手順が必要です。自作すると処理が複雑になるため、Fastlaneの `deliver` などの既存ツールを使うと短時間で実装できます。

APIの呼び出し回数に制限はありますか?

リクエスト数制限などの仕様については、提出前にApp Store Connectを確認してください。

スクショ、まだ手で作っていますか?

アプリの画面を入れるだけで、App Store に出せる5枚が自動でできます。

無料でつくってみる