申請の作成と管理

Microsoft Store 申請 API を使うと、自分または自分の組織のパートナー センター アカウントに対して、アプリ、アドオン、パッケージ フライトの申請をプログラムで照会したり作成したりできます。 この API は、アカウントで多数のアプリやアドオンを管理していて、それらのアセットの申請プロセスを自動化して最適化する必要がある場合に役立ちます。 この API は、Azure Active Directory (Azure AD) を使って、アプリまたはサービスからの呼び出しを認証します。

この手順では、Microsoft Store 申請 API を使う場合のプロセスについて詳しく説明します。

  1. すべての前提条件を完了したことを確認します。
  2. Microsoft Store 申請 API のメソッドを呼び出す前に、Azure AD アクセス トークンを取得する必要があります。 トークンを取得した後、Microsoft Store 申請 API の呼び出しでこのトークンを使用できるのは、その有効期限が切れるまでの 60 分間です。 トークンの有効期限が切れた後は、新しいトークンを生成できます。
  3. Microsoft Store 申請 API を呼び出します

重要

この API を使用してアプリ、パッケージ フライト、アドオンの申請を作成する場合、申請をさらに変更するには、パートナー センターではなく、API のみを使用して行ってください。 最初に API を使って作成した申請を、パートナー センターを使って変更した場合、API を使ってその申請を変更またはコミットすることができなくなります。 場合によっては、申請がエラー状態のままになり、申請プロセスを進めることができなくなります。 この場合、申請を削除して新しい申請を作成する必要があります。

重要

この API を使って、ビジネス向け Microsoft Store や教育機関向け Microsoft Store でのボリューム購入の申請を公開したり、LOB アプリの申請を直接企業に発行したりすることはできません。 このようなシナリオでは、どちらの場合もパートナー センターで申請を発行する必要があります。

注意

この API は、アプリの必須更新プログラムや Store で管理されるコンシューマブルなアドオンを使うアプリまたはアドオンでは使用できません。 このような機能のいずれかを使用するアプリまたはアドオンで Microsoft Store 申請 API を使うと、API から 409 エラー コードが返されます。 この場合は、パートナー センターを使ってアプリまたはアドオンの申請を管理する必要があります。

手順 1. Microsoft Store 申請 API を使うための前提条件を満たす

Microsoft Store 申請 API を呼び出すコードの作成を開始する前に、次の前提条件が満たされていることを確認します。

  • 自分 (または自分の組織) に Azure AD ディレクトリがあり、自分がそのディレクトリに対するグローバル管理者のアクセス許可を持っている必要があります。 Microsoft 365 または Microsoft の他のビジネス サービスをすでに使用している場合、Azure AD ディレクトリをすでに所有しています。 それ以外の場合は、追加料金なしにパートナー センターで新しい Azure AD を作成できます。

  • Azure AD アプリケーションをパートナー センター アカウントと関連付け、テナント ID、クライアント ID、キーを取得する必要があります。 Azure AD アクセス トークンを取得するにはこれらの値が必要です。Microsoft Store 申請 API への呼び出しにこれらを使用します。

  • Microsoft Store 申請 API で使うアプリを準備します。

    • パートナー センターにアプリがまだ存在しない場合は、パートナー センターでアプリの名前を予約してアプリを作成する必要があります。 Microsoft Store 申請 API を使ってパートナー センターにアプリを作成することはできません。パートナー センターを使ってアプリを作成する必要があります。その後、API を使ってアプリにアクセスし、プログラムでアプリの申請を作成できます。 ただし、API を使うと、アプリの申請を作成する前に、アドオンとパッケージ フライトをプログラムで作成できます。

    • この API を使って特定のアプリの申請を作成する前に、年齢区分に関するアンケートへの回答など、最初にパートナー センターでアプリの申請を 1 つ作成する必要があります。 この操作の実行後、API を使ってこのアプリの新しい申請をプログラムで作成できるようになります。 アドオンの申請またはパッケージ フライトの申請を作成しなくても、このような申請に API を使うことができます。

    • アプリの申請を作成または更新するときにアプリ パッケージを追加する必要がある場合は、アプリ パッケージを準備します。

    • アプリの申請を作成または更新するときにストア登録情報用のスクリーンショットまたは画像を含める必要がある場合は、アプリのスクリーンショットと画像を準備します。

    • アドオンの申請を作成または更新するときにアイコンを含める必要がある場合は、アイコンを準備します。

Azure AD アプリケーションをパートナー センター アカウントと関連付ける方法

Microsoft Store 申請 API を使うには、事前に Azure AD アプリケーションをパートナー センター アカウントに関連付け、アプリケーションのテナント ID とクライアント ID を取得して、キーを生成しておく必要があります。 Azure AD アプリケーションは、Microsoft Store 申請 API の呼び出し元のアプリまたはサービスを表します。 API に渡す Azure AD アクセス トークンを取得するには、テナント ID、クライアント ID、キーが必要です。

Note

この作業を行うのは一度だけです。 テナント ID、クライアント ID、キーがあれば、新しい Azure AD アクセス トークンを作成する必要がある度にそれらを再利用できます。

  1. パートナー センターで、組織のパートナー センター アカウントを組織の Azure AD ディレクトリに関連付けます

  2. 次に、パートナー センターの [アカウント設定] セクションの [ユーザー] ページから、パートナー センター アカウントの申請にアクセスするために使用するアプリまたはサービスを表す Azure AD アプリケーションを追加します。 このアプリケーションにマネージャー ロールを確実に割り当てます。 アプリケーションがまだ Azure AD ディレクトリに存在しない場合、パートナー センターで新しい Azure AD アプリケーションを作成できます。

  3. [ユーザー] ページに戻り、Azure AD アプリケーションの名前をクリックしてアプリケーション設定に移動し、テナント IDクライアント ID の値を書き留めます。

  4. [新しいキーを追加] をクリックします。 次の画面で、キーの値を書き留めます。 このページを離れると、この情報にアクセスすることはできなくなります。 詳細については、「Azure AD アプリケーションのキーを管理する」を参照してください。

手順 2:Azure AD アクセス トークンを取得する

Microsoft Store 申請 API のいずれかのメソッドを呼び出す前に、まず API の各メソッドの Authorization ヘッダーに渡す Azure AD アクセス トークンを取得する必要があります。 アクセス トークンを取得したら、期限が切れる 60 分が経過する前に使用します。 トークンの有効期限が切れた後は、トークンを更新してそれ以降の API 呼び出しで引き続き使用できます。

アクセス トークンを取得するには、「クライアント資格情報を使用したサービス間の呼び出し」の手順に従って、HTTP POST を https://login.microsoftonline.com/<tenant_id>/oauth2/token エンドポイントに送信します。 要求の例を次に示します。

POST https://login.microsoftonline.com/<tenant_id>/oauth2/token HTTP/1.1
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded; charset=utf-8

grant_type=client_credentials
&client_id=<your_client_id>
&client_secret=<your_client_secret>
&resource=https://manage.devcenter.microsoft.com

POST URI の tenant_id の値と client_id および client_secret のパラメーターには、前のセクションでパートナー センターから取得したアプリケーションのテナント ID、クライアント ID、キーを指定します。 resource パラメーターには、https://manage.devcenter.microsoft.com を指定します。

アクセス トークンの有効期限が切れた後、同じ HTTP 呼び出しをもう一度行うことで、新しいトークンをフェッチできます。

C#、Java、または Python コードを使ってアクセス トークンを取得する方法を示す例については、Microsoft Store 申請 API のコード例をご覧ください。

手順 3:Microsoft Store 申請 API を使用する

Azure AD アクセス トークンを取得したら、Microsoft Store 申請 API のメソッドを呼び出すことができます。 この API には、アプリ、アドオン、パッケージ フライトのシナリオにグループ化される多くのメソッドが含まれています。 申請を作成または更新するには、通常、Microsoft Store 申請 API の複数のメソッドを特定の順序で呼び出します。 各シナリオと各メソッドの構文について詳しくは、次の表の記事をご覧ください。

注意

アクセス トークンを取得した後、Microsoft Store 申請 API のメソッドを呼び出すことができるのは、その有効期限が切れるまでの 60 分間です。

シナリオ 説明
アプリ パートナー センター アカウントに登録されているすべてのアプリのデータを取得し、アプリの申請を作成します。 これらのメソッドについて詳しくは、次の記事をご覧ください。
アドオン アプリのアドオンを取得、作成、または削除した後、そのアドオンの申請を取得、作成、または削除します。 これらのメソッドについて詳しくは、次の記事をご覧ください。
パッケージ フライト アプリのパッケージ フライトを取得、作成、または削除した後、パッケージ フライトの申請を取得、作成、または削除します。 これらのメソッドについて詳しくは、次の記事をご覧ください。

コード例

次の記事では、さまざまなプログラミング言語で Microsoft Store 申請 API を使用する方法を示す詳しいコード例を紹介します。

StoreBroker PowerShell モジュール

Microsoft Store 申請 API を直接呼び出す代わりに、API の上にコマンド ライン インターフェイスを実装するオープンソースの PowerShell モジュールも用意されています。 このモジュールは、StoreBroker と呼ばれています。 このモジュールを使うと、Microsoft Store 申請 API を直接呼び出さずに、コマンド ラインからアプリ、フライト、アドオンの申請を管理できます。また、ソースを参照して、この API を呼び出す方法の例を確認することもできます。 StoreBroker モジュールは、多くのファースト パーティ アプリケーションをストアに申請する主要な方法として Microsoft 内で積極的に使っています。

詳しくは、GitHub の StoreBroker に関するページをご覧ください。

トラブルシューティング

問題 解決方法
PowerShell から Microsoft Store 申請 API を呼び出した後、ConvertFrom-Json コマンドレットを使って API の応答データを JSON 形式から PowerShell オブジェクトに変換し、ConvertTo-Json コマンドレットを使ってもう一度 JSON 形式に変換すると、応答データが破損します。 既定では、ConvertTo-Json コマンドレットの -Depth パラメーターは、2 レベルのオブジェクトに設定されます。これは、Microsoft Store 申請 API から返される JSON オブジェクトの大半にとって浅すぎます。 ConvertTo-Json コマンドレットを呼び出すときは、-Depth パラメーターを大きい値 (たとえば 20) に設定します。

追加のヘルプ

Microsoft Store 申請 API について質問がある場合や、この API を使った申請の管理に関してサポートが必要な場合は、次のリソースを使ってください。

  • Microsoft のフォーラムで質問します。
  • サポート ページにアクセスし、パートナー センターのサポート オプションのいずれかをリクエストしてください。 問題の種類とカテゴリを選択するよう求められた場合は、[App submission and certification] (アプリの申請と認定) と [Submitting an app] (アプリの申請) をそれぞれ選択します。