Produktabfrage
Verwenden Sie diese Methode in der Microsoft Store-Sammlungs-API, um alle Produkte abzurufen, die ein Kunde für Apps besitzt, die Ihrer Azure AD-Client-ID zugeordnet sind. Sie können ihre Abfrage auf ein bestimmtes Produkt beschränken oder andere Filter verwenden.
Diese Methode wurde entwickelt, um von Ihrem Dienst als Reaktion auf eine Nachricht von Ihrer App aufgerufen zu werden. Ihr Dienst sollte nicht regelmäßig für alle Benutzer einen Zeitplan abfragen.
Die Microsoft.StoreServices-Bibliothek stellt die Funktionalität dieser Methode über die StoreServicesClient.CollectionsQueryAsync-API bereit.
Voraussetzungen
Um diese Methode zu verwenden, benötigen Sie Folgendes:
- Ein Azure AD-Zugriffstoken mit dem Zielgruppen-URI-Wert
https://onestore.microsoft.com
. - Ein Microsoft Store-ID-Schlüssel, der die Identität des Benutzers darstellt, dessen Produkte Sie abrufen möchten.
Weitere Informationen finden Sie unter Verwalten von Produktberechtigungen aus einem Dienst.
Anfordern
Anforderungssyntax
Methode | Anforderungs-URI |
---|---|
POST | https://collections.mp.microsoft.com/v6.0/collections/query |
Anforderungsheader
Header | Typ | Beschreibung |
---|---|---|
Autorisierung | Zeichenfolge | Erforderlich. Das Azure AD-Zugriffstoken im Formular Bearer<-Token>. |
Host | Zeichenfolge | Muss auf den Wert collections.mp.microsoft.com festgelegt werden. |
Inhaltslänge | Zahl | Die Länge des Anforderungstexts. |
Content-Type | Zeichenfolge | Gibt den Anforderungs- und Antworttyp an. Derzeit ist der einzige unterstützte Wert "application/json". |
Anforderungstext
Parameter | Typ | Beschreibung | Erforderlich |
---|---|---|---|
Nutznießer | UserIdentity auflisten<> | Eine Liste der UserIdentity-Objekte, die die Benutzer darstellen, die für Produkte abgefragt werden. Weitere Informationen finden Sie in der folgenden Tabelle. | Ja |
continuationToken | Zeichenfolge | Wenn mehrere Produktgruppen vorhanden sind, gibt der Antworttext ein Fortsetzungstoken zurück, wenn der Seitengrenzwert erreicht ist. Stellen Sie dieses Fortsetzungstoken hier in nachfolgenden Aufrufen bereit, um verbleibende Produkte abzurufen. | No |
maxPageSize | Zahl | Die maximale Anzahl von Produkten, die in einer Antwort zurückgegeben werden sollen. Der Standardwert und der Maximalwert sind 100. | No |
modifiedAfter | datetime | Wenn angegeben, gibt der Dienst nur Produkte zurück, die nach diesem Datum geändert wurden. | No |
parentProductId | Zeichenfolge | Wenn angegeben, gibt der Dienst nur Add-Ons zurück, die der angegebenen App entsprechen. | No |
productSkuIds | ProductSkuId auflisten<> | Wenn angegeben, gibt der Dienst nur Produkte zurück, die für die bereitgestellten Produkt-/SKU-Paare gelten. Weitere Informationen finden Sie in der folgenden Tabelle. | No |
productTypes | Listenzeichenfolge<> | Gibt an, welche Produkttypen in den Abfrageergebnissen zurückgegeben werden sollen. Unterstützte Produkttypen sind Application, Durable, Game und UnmanagedConsumable. | Ja |
validityType | Zeichenfolge | Bei Festlegung auf "Alle" werden alle Produkte für einen Benutzer zurückgegeben, einschließlich abgelaufener Elemente. Wenn dieser Wert auf "Gültig" festgelegt ist, werden nur Produkte zurückgegeben, die zu diesem Zeitpunkt gültig sind (d. a. sie haben den aktiven Status, das Startdatum < jetzt und das Enddatum ist > jetzt vorhanden). | No |
Das UserIdentity-Objekt enthält die folgenden Parameter.
Parameter | Typ | Beschreibung | Erforderlich |
---|---|---|---|
identityType | Zeichenfolge | Geben Sie den Zeichenfolgenwert b2b an. | Ja |
identityValue | Zeichenfolge | Der Microsoft Store-ID-Schlüssel , der die Identität des Benutzers darstellt, für den Sie Produkte abfragen möchten. | Ja |
localTicketReference | Zeichenfolge | Der angeforderte Bezeichner für die zurückgegebenen Produkte. Zurückgegebene Elemente im Antworttext weisen ein übereinstimmende localTicketReference auf. Es wird empfohlen, denselben Wert wie der UserId-Anspruch im Microsoft Store-ID-Schlüssel zu verwenden. | Ja |
Das ProductSkuId -Objekt enthält die folgenden Parameter.
Parameter | Typ | Beschreibung | Erforderlich |
---|---|---|---|
productId | Zeichenfolge | Die Store-ID für ein Produkt im Microsoft Store-Katalog. Eine Beispiel-Store-ID für ein Produkt ist 9NBLGGH42CFD. | Ja |
skuId | Zeichenfolge | Die Store-ID für die SKU eines Produkts im Microsoft Store-Katalog. Eine Beispielspeicher-ID für eine SKU ist 0010. | Ja |
Anforderungsbeispiel
POST https://collections.mp.microsoft.com/v6.0/collections/query HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1Q…….
Host: collections.mp.microsoft.com
Content-Length: 2531
Content-Type: application/json
{
"maxPageSize": 100,
"beneficiaries": [
{
"localTicketReference": "1055521810674918",
"identityValue": "eyJ0eXAiOiJ……",
"identityType": "b2b"
}
],
"modifiedAfter": "\/Date(-62135568000000)\/",
"productSkuIds": [
{
"productId": "9NBLGGH5WVP6",
"skuId": "0010"
}
],
"productTypes": [
"UnmanagedConsumable"
],
"validityType": "All"
}
Antwort
Antworttext
Parameter | Typ | Beschreibung | Erforderlich |
---|---|---|---|
continuationToken | Zeichenfolge | Wenn mehrere Produktgruppen vorhanden sind, wird dieses Token zurückgegeben, wenn der Seitengrenzwert erreicht ist. Sie können dieses Fortsetzungstoken in nachfolgenden Aufrufen angeben, um verbleibende Produkte abzurufen. | No |
Elemente | CollectionItemContractV6 | Ein Array von Produkten für den angegebenen Benutzer. Weitere Informationen finden Sie in der folgenden Tabelle. | No |
Das CollectionItemContractV6 -Objekt enthält die folgenden Parameter.
Parameter | Typ | Beschreibung | Erforderlich |
---|---|---|---|
erworbenes Datum | datetime | Das Datum, an dem der Benutzer das Element erworben hat. | Ja |
campaignId | Zeichenfolge | Die Kampagnen-ID, die zum Kaufzeit für diesen Artikel bereitgestellt wurde. | No |
devOfferId | Zeichenfolge | Die Angebots-ID aus einem In-App-Kauf. | No |
endDate | datetime | Das Enddatum des Elements. | Ja |
fulfillmentData | Listenzeichenfolge<> | N/V | No |
inAppOfferToken | Zeichenfolge | Die vom Entwickler angegebene Produkt-ID-Zeichenfolge, die dem Element im Partner Center zugewiesen ist. Eine Beispielprodukt-ID ist "product123". | No |
itemId | Zeichenfolge | Eine ID, die dieses Sammlungselement aus anderen Elementen identifiziert, die der Benutzer besitzt. Diese ID ist pro Produkt eindeutig. | Ja |
localTicketReference | Zeichenfolge | Die ID der zuvor bereitgestellten localTicketReference im Anforderungstext. | Ja |
ModifiedDate | datetime | Das Datum, an dem dieses Element zuletzt geändert wurde. | Ja |
orderId | Zeichenfolge | Wenn vorhanden, die Bestell-ID, von der dieses Element abgerufen wurde. | No |
orderLineItemId | Zeichenfolge | Ist dies der Fall, so ist die Position der jeweiligen Bestellung, für die dieser Artikel abgerufen wurde. | No |
ownershipType | Zeichenfolge | Die Zeichenfolge OwnedByBeneficiary. | Ja |
productId | Zeichenfolge | Die Store-ID für das Produkt im Microsoft Store-Katalog. Eine Beispiel-Store-ID für ein Produkt ist 9NBLGGH42CFD. | Ja |
productType | Zeichenfolge | Einer der folgenden Produkttypen: Application, Durable und UnmanagedConsumable. | Ja |
purchasedCountry | Zeichenfolge | N/V | No |
Käufer | IdentityContractV6 | Wenn vorhanden, stellt dies die Identität des Käufers des Artikels dar. Details zu diesem Objekt finden Sie unten. | No |
Menge | Zahl | Die Menge des Artikels. Derzeit ist dies immer 1. | No |
skuId | Zeichenfolge | Die Store-ID für die SKU des Produkts im Microsoft Store-Katalog. Eine Beispielspeicher-ID für eine SKU ist 0010. | Ja |
skuType | Zeichenfolge | Typ der SKU. Mögliche Werte sind "Trial", "Full" und "Rental". | Ja |
startDate | datetime | Das Datum, an dem das Element gültig ist. | Ja |
Status | Zeichenfolge | Der Status des Elements. Mögliche Werte sind "Active", "Expired", "Revoked" und "Banned". | Ja |
Tags | Listenzeichenfolge<> | N/V | Ja |
transactionId | guid | Die Transaktions-ID als Ergebnis des Kaufs dieses Artikels. Kann verwendet werden, um ein Element als erfüllt zu melden. | Ja |
Das IdentityContractV6 -Objekt enthält die folgenden Parameter.
Parameter | Typ | Beschreibung | Erforderlich |
---|---|---|---|
identityType | Zeichenfolge | Enthält den Wert pub. | Ja |
identityValue | Zeichenfolge | Der Zeichenfolgenwert der publisherUserId aus dem angegebenen Microsoft Store-ID-Schlüssel. | Ja |
Beispielantwort
HTTP/1.1 200 OK
Content-Length: 7241
Content-Type: application/json
MS-CorrelationId: 699681ce-662c-4841-920a-f2269b2b4e6c
MS-RequestId: a9988cf9-652b-4791-beba-b0e732121a12
MS-CV: xu2HW6SrSkyfHyFh.0.1
MS-ServerId: 020022359
Date: Tue, 22 Sep 2015 20:28:18 GMT
{
"items" : [
{
"acquiredDate" : "2015-09-22T19:22:51.2068724+00:00",
"devOfferId" : "f9587c53-540a-498b-a281-8a349491ed47",
"endDate" : "9999-12-31T23:59:59.9999999+00:00",
"fulfillmentData" : [],
"inAppOfferToken" : "consumable2",
"itemId" : "4b8fbb13127a41f299270ea668681c1d",
"localTicketReference" : "1055521810674918",
"modifiedDate" : "2015-09-22T19:22:51.2513155+00:00",
"orderId" : "4ba5960d-4ec6-4a81-ac20-aafce02ddf31",
"ownershipType" : "OwnedByBeneficiary",
"productId" : "9NBLGGH5WVP6",
"productType" : "UnmanagedConsumable",
"purchaser" : {
"identityType" : "pub",
"identityValue" : "user123"
},
"skuId" : "0010",
"skuType" : "Full",
"startDate" : "2015-09-22T19:22:51.2068724+00:00",
"status" : "Active",
"tags" : [],
"transactionId" : "4ba5960d-4ec6-4a81-ac20-aafce02ddf31"
}
]
}