Skip to main content
publisherQuery を使用すると、独自のサービスから、XBOX Game Pass サブスクリプション ステータスを含むユーザーの製品と使用権を照会できます。 サービスは、ユーザーごとの時間枠に基づく呼び出しレート制限を回避するため、ユーザーの購入を定期的にポーリングしないでください。 現在の制限は、同じユーザーに対して 5 分以内に 100 回のクエリ要求です。 レート制限をトリガーすると、次の要求が可能な時期に関する情報を含む 429 HTTP 応答が返されます。 結果には、サービスが代行して呼び出しているユーザー アカウントが直接所有または使用権を持つ製品のみが含まれます。 クライアントに表示される可能性のある共有使用権は返されません。「ゲームの製品共有モデル」を参照してください。 ユーザーの Game Pass サブスクリプション ステータスの照会に関する具体的な情報については、「サービスからの XBOX Game Pass サブスクリプション アクセスの検出」を参照してください。
publisherQuery はパートナー サービスからの呼び出しのみをサポートします。
クライアント アプリやゲームは、このサービスを直接呼び出すことはできません。

publisherQuery (Collections Query v9) の更新と改良

publisherQuery は最新の Collections クエリ API (v9) です。 b2bLicensePreview (v8) から移行する場合は、動作の違いについてこのセクションを確認してください。 publisherQuery には、b2bLicensePreview と比べて次の変更と改良点があります。
  • ユーザーの XBOX Game Pass サブスクリプション ステータスを照会する機能
  • 返す製品の事前定義された一覧が必要です。 これは推奨されるプラクティスですが、v8 b2bLicensePreview では必須ではありませんでした。 このベスト プラクティスに従っていないタイトルは、クエリ パラメーターに基づくコンテンツの範囲が大きすぎるために要求がタイムアウトするという、リリース後の問題が発生することがよくありました。 これにより、ゲームのサービスがクエリ要求内で望ましい ProductIds を指定するように更新されるまで、ユーザーがゲーム内クレジットを取得できませんでした。
  • 使用されない、または不要な値を削除するために、応答データ フィールドを合理化
  • 開発者からのフィードバックに基づいて要求パラメーターを合理化
要求本文から削除された項目:
  • Market - publisherQuery ではすべての要求がすべての地域に対するコンテキストを持ちます
  • ExpandSatisfyingItems - publisherQuery ではすべての結果が充足使用権を展開します
  • EntitlementsFilter - クエリの productIds の事前定義された一覧が必要なため使用されません
publisherQuery は LegacyProductIds (廃止された XBOX Developer Portal から生成され、XBOX Inventory サービスから ProductId として使用される ProductIds) をサポートしません。
XBOX Inventory からサービスを移行する場合は、StoreId (Collections からの ProductId 値) を、独自のサービス上の対応する LegacyProductId に内部的にマッピングする必要があります。 それ以外の場合は、StoreId と LegacyProductIds の両方を返す v8 b2bLicensePreview を確認できます。
詳細については、関連記事「ニーズに合った適切な Collections クエリ API を選択する」を参照してください。

前提条件

サービス間 API の前提条件」を確認してください。 この API は、Microsoft Entra ID と委任認証の X-token の両方の認証タイプをサポートします。 パートナー センターで製品構成が公開されていない場合、呼び出しは成功する可能性がありますが、結果は返されません。

要求

要求の構文

要求ヘッダー

要求本文

ProductSkuId オブジェクトには、次のパラメーターが含まれています。

要求の例

v9 publisherQuery API は、要求ごとに最大 100 個の productSkuIds をサポートします。productSkuIds に 100 個を超える productIds を指定すると、API は HTTP 400 エラーを返します。
既定の maxPageSize は 100 ですが、この例では残りのアイテムの要求方法を示すために低く設定されています。

応答

応答本文

PublisherQueryItemContractV9 オブジェクトには、次のパラメーターが含まれています。 TrialInformation オブジェクトには、次の表に示すパラメーターが含まれています。

製品タイプの値と意味

製品ステータスの値と意味

製品 acquisitionType 値と意味

satisfiedByProductIds フィールドを持つ充足使用権の結果を理解する

satisfiedByProductIds 配列が空の場合、ユーザーはアイテムに対する直接購入からの直接的な使用権を持ちます。 それ以外の場合、satisfiedByProductIds 配列に 1 つ以上の ProductIds が含まれる場合、それらの製品 (バンドル、サブスクリプションなど) からユーザーへアイテムの使用権が付与されています。 ユーザーがアイテムに対する直接的な使用権と充足使用権の両方を持ち、要求内の excludeDuplicatesTrue の場合、直接的な使用権が優先され、satisfiedByProductIds は空になります。

応答の例

継続トークンを使用して残りの結果を要求する

クエリに 1 回の応答で返せる以上の結果がある場合 (maxPageSize によって制御されます)、最初のクエリ応答には continuationToken が含まれます。 その後、前の要求本文のコピーに継続トークンを追加して、後続の要求でこの continuationToken を使用できます。 継続要求の例:
excludeDuplicates フラグを指定した場合でも、継続トークンを使用しているときは、ステータスが異なる使用権のエントリを取得する可能性があります。したがって、重複エントリの結果と、Active でないステータスがあるかどうかを確認してください。

関連項目

サービスから製品を管理する Microsoft Store API でサービスを認証する サービスから消費型製品を管理する
最終更新日 2026年8月24日