Abrufen von Add-On-Käufen für Abonnements
Verwenden Sie diese Methode in der Microsoft Store-Analyse-API, um aggregierte Kaufdaten für Add-On-Abonnements für Ihre App während eines bestimmten Zeitraums und anderer optionaler Filter abzurufen.
Voraussetzungen
Um diese Methode zu verwenden, müssen Sie zuerst Folgendes tun:
- Falls noch nicht geschehen, erfüllen Sie alle Voraussetzungen für die Microsoft Store-Analyse-API.
- Rufen Sie ein Azure AD-Zugriffstoken ab, das im Anforderungsheader für diese Methode verwendet wird. Nachdem Sie ein Zugriffstoken erhalten haben, haben Sie 60 Minuten Zeit, es zu verwenden, bevor es abläuft. Nachdem das Token abgelaufen ist, können Sie eine neue abrufen.
Anfordern
Anforderungssyntax
Methode | Anforderungs-URI |
---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/analytics/subscriptions |
Anforderungsheader
Header | Typ | Beschreibung |
---|---|---|
Autorisierung | Zeichenfolge | Erforderlich. Das Azure AD-Zugriffstoken im Formular Bearer<-Token>. |
Anforderungsparameter
Parameter | Typ | Beschreibung | Erforderlich |
---|---|---|---|
applicationId | Zeichenfolge | Die Store-ID der App, für die Sie Abonnement-Add-On-Kaufdaten abrufen möchten. | Ja |
subscriptionProductId | Zeichenfolge | Die Store-ID des Abonnement-Add-Ons, für das Sie Kaufdaten abrufen möchten. Wenn Sie diesen Wert nicht angeben, gibt diese Methode Kaufdaten für alle Abonnement-Add-Ons für die angegebene App zurück. | No |
startDate | date | Das Startdatum im Datumsbereich von Abonnement-Add-On-Kaufdaten, die abgerufen werden sollen. Die Standardeinstellung ist das aktuelle Datum. | No |
endDate | date | Das Enddatum im Datumsbereich von Abonnement-Add-On-Kaufdaten, die abgerufen werden sollen. Die Standardeinstellung ist das aktuelle Datum. | Nein |
Oben | int | Die Anzahl der Datenzeilen, die in der Anforderung zurückgegeben werden sollen. Der Höchstwert und der Standardwert, falls nicht definiert, ist 100. Wenn in der Abfrage weitere Zeilen vorhanden sind, enthält der Antworttext einen nächsten Link, den Sie verwenden können, um die nächste Seite mit Daten anzufordern. | Nein |
skip | int | Die Anzahl der Zeilen, die in der Abfrage übersprungen werden sollen. Verwenden Sie diesen Parameter, um große Datasets zu durchlaufen. Beispielsweise ruft "top=100" und "skip=0" die ersten 100 Datenzeilen ab, "top=100" und "skip=100" die nächsten 100 Datenzeilen usw. | No |
filter | Zeichenfolge | Eine oder mehrere Anweisungen, die den Antworttext filtern. Jede Anweisung kann die Operatoren eq oder ne verwenden, und Anweisungen können mit und oder oder kombiniert werden. Sie können die folgenden Zeichenfolgen in den Filteranweisungen angeben (dies entsprechen Werten im Antworttext):
Hier ist ein Beispiel-Filter-Parameter: filter=date eq '2017-07-08'. |
No |
aggregationLevel | Zeichenfolge | Gibt den Zeitraum an, für den aggregierte Daten abgerufen werden sollen. Dies kann eine der folgenden Zeichenfolgen sein: Tag, Woche oder Monat. Wenn keine Angabe erfolgt, lautet der Standardwert Tag. | No |
orderby | Zeichenfolge | Eine Anweisung, die die Ergebnisdatenwerte für jeden Abonnement-Add-On-Kauf anordnet. Die Syntax ist orderby=Feld [order], Feld [order],.... Der Feld-Parameter kann eine der folgenden Zeichenfolgen sein:
Der Order-Parameter ist optional und kann asc oder desc sein, um die aufsteigende oder absteigende Reihenfolge für jedes Feld anzugeben. Die Standardeinstellung ist asc. Hier ist ein Beispiel für eine orderby-Zeichenfolge: orderby=date,market |
Nein |
groupby | Zeichenfolge | Eine Anweisung, die Datenaggregation nur auf die angegebenen Felder anwendet. Sie können folgende Felder angeben:
Der groupby-Parameter kann mit dem aggregationLevel-Parameter verwendet werden. Zum Beispiel: groupby=market&aggregationLevel=week |
No |
Anforderungsbeispiel
Die folgenden Beispiele zeigen, wie Sie Abonnement-Add-On-Kaufdaten abrufen. Ersetzen Sie den applicationId-Wert durch die entsprechende Store-ID für Ihre App.
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/subscriptions?applicationId=9NBLGGGZ5QDR&startDate=2017-07-07&endDate=2017-07-08 HTTP/1.1
Authorization: Bearer <your access token>
Antwort
Antworttext
Wert | Typ | BESCHREIBUNG |
---|---|---|
Wert | array | Ein Array von Objekten, die aggregierte Abonnement-Add-On-Kaufdaten enthalten. Weitere Informationen zu den Daten in den einzelnen Objekten finden Sie im Abschnitt Abonnementakquisitionswerte weiter unten. |
@nextLink | Zeichenfolge | Wenn zusätzliche Datenseiten vorhanden sind, enthält diese Zeichenfolge einen URI, den Sie verwenden können, um die nächste Seite mit Daten anzufordern. Dieser Wert wird beispielsweise zurückgegeben, wenn der oberste Parameter der Anforderung auf 100 festgelegt ist, es jedoch mehr als 100 Zeilen mit Abonnement-Add-On-Kaufdaten für die Abfrage gibt. |
TotalCount | int | Die Gesamtanzahl der Zeilen im Datenergebnis für die Abfrage. |
Abonnementakquisitionswerte
Elemente im Value-Array enthalten die folgenden Werte.
Wert | Typ | Beschreibung |
---|---|---|
Datum | Zeichenfolge | Das erste Datum im Datumsbereich für die Kaufdaten. Wenn die Anforderung einen einzelnen Tag angegeben hat, ist dieser Wert dieses Datum. Wenn die Anforderung eine Woche, einen Monat oder einen anderen Datumsbereich angegeben hat, ist dieser Wert das erste Datum in diesem Datumsbereich. |
subscriptionProductId | Zeichenfolge | Die Store-ID des Abonnement-Add-Ons, für das Sie Kaufdaten abrufen. |
subscriptionProductName | Zeichenfolge | Der Anzeigename des Abonnement-Add-ons. |
applicationId | Zeichenfolge | Die Store-ID der App, für die Sie Abonnement-Add-On-Kaufdaten abrufen. |
applicationName | Zeichenfolge | Der Anzeigename der App. |
skuId | Zeichenfolge | Die ID der SKU des Abonnement-Add-Ons, für die Sie Kaufdaten abrufen. |
deviceType | Zeichenfolge | Eine der folgenden Zeichenfolgen, die den Gerätetyp angibt, der den Kauf abgeschlossen hat:
|
Markt | Zeichenfolge | Der ISO 3166-Ländercode des Marktes, auf dem der Kauf erfolgte. |
currencyCode | Zeichenfolge | Der Währungscode im ISO 4217-Format für Bruttoumsatz vor Steuern. |
grossSalesBeforeTax | integer | Der Bruttoumsatz in der lokalen Währung, die durch den Wert currencyCode angegeben wird. |
totalActiveCount | integer | Die Anzahl der aktiven Abonnements insgesamt während des angegebenen Zeitraums. Dies entspricht der Summe der Werte goodStandingActiveCount, pendingGraceActiveCount, graceActiveCount und lockedActiveCount . |
totalChurnCount | integer | Die Gesamtzahl der Abonnements, die während des angegebenen Zeitraums deaktiviert wurden. Dies entspricht der Summe der BillingChurnCount-, nonRenewalChurnCount-, refundChurnCount-, chargebackChurnCount-, earlyChurnCount- und otherChurnCount-Werte. |
newCount | integer | Die Anzahl der neuen Abonnementkäufe während des angegebenen Zeitraums, einschließlich Testversionen. |
renewCount | integer | Die Anzahl der Abonnementverlängerungen während des angegebenen Zeitraums, einschließlich vom Benutzer initiierter Verlängerungen und automatischer Verlängerungen. |
goodStandingActiveCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums aktiv waren und bei denen das Ablaufdatum >= der endDate-Wert für die Abfrage ist. |
pendingGraceActiveCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums aktiv waren, aber einen Abrechnungsfehler hatten und wo das Ablaufdatum des Abonnements >= der EndDate-Wert für die Abfrage ist. |
graceActiveCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums aktiv waren, aber einen Abrechnungsfehler hatten und wo:
|
lockedActiveCount | integer | Die Anzahl der Abonnements, die sich in der Dunning befinden (d. h. das Abonnement läuft bald ab und Microsoft versucht, Guthaben zu erwerben, um das Abonnement automatisch zu verlängern) während des angegebenen Zeitraums und wo:
|
billingChurnCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums deaktiviert wurden, weil eine Abrechnungsgebühr nicht verarbeitet wurde und wo sich die Abonnements zuvor im Dunning befanden. |
nonRenewalChurnCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums deaktiviert wurden, da sie nicht verlängert wurden. |
refundChurnCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums deaktiviert wurden, da sie erstattet wurden. |
chargebackChurnCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums aufgrund einer Rückbuchung deaktiviert wurden. |
earlyChurnCount | integer | Die Anzahl der Abonnements, die während des angegebenen Zeitraums deaktiviert wurden, während sie in gutem Zustand waren. |
otherChurnCount | integer | Die Anzahl der Abonnements, die aus anderen Gründen während des angegebenen Zeitraums deaktiviert wurden. |
Beispiel für Anforderung und Antwort
Die folgenden Codeausschnitte zeigen beispielweise Anforderungs- und JSON-Antworttext für diese Anforderung.
Beispiel-Anfrage
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/subscriptions?applicationId=9NBLGGGZ5QDR
HTTP/1.1
Authorization: Bearer <your access token>
Beispiel für eine Antwort
{
"Value": [
{
"date": "2022-04-18",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Windows and Doors",
"grossSalesBeforeTax": 3460656.260391250,
"totalActiveCount": 20211321,
"totalChurnCount": 5605,
"newCount": 3810366,
"renewCount": 12102044,
"goodStandingActiveCount": 17893664,
"pendingGraceActiveCount": 2255792,
"graceActiveCount": 61833,
"lockedActiveCount": 32,
"billingChurnCount": 4,
"nonRenewalChurnCount": 0,
"refundChurnCount": 0,
"chargebackChurnCount": 0,
"earlyChurnCount": 2717,
"otherChurnCount": 2884
},
{
"date": "2022-04-18",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Unknown",
"grossSalesBeforeTax": 2342.580615228,
"totalActiveCount": 50550,
"totalChurnCount": 7,
"newCount": 8312,
"renewCount": 31446,
"goodStandingActiveCount": 44047,
"pendingGraceActiveCount": 6503,
"graceActiveCount": 0,
"lockedActiveCount": 0,
"billingChurnCount": 0,
"nonRenewalChurnCount": 0,
"refundChurnCount": 0,
"chargebackChurnCount": 0,
"earlyChurnCount": 5,
"otherChurnCount": 2
}
],
"TotalCount": 2
}
Beispiel-Anfrage
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/subscriptions?applicationId=9NBLGGGZ5QDR&startDate=12/19/2021&endDate=04/20/2022&top=10&skip=0&orderby=date&groupby=date,subscriptionProductName,applicationName,skuId,market,deviceType&aggregationLevel=week
HTTP/1.1
Authorization: Bearer <your access token>
Beispiel für eine Antwort
{
"Value": [
{
"date": "2022-04-18",
"subscriptionProductName": "realms.subscription.monthly.10player.01",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Windows and Doors",
"skuId": "0100",
"market": "IT",
"deviceType": "Console-Xbox One",
"grossSalesBeforeTax": 0.0,
"totalActiveCount": 0,
"totalChurnCount": 0,
"newCount": 2,
"renewCount": 0,
"goodStandingActiveCount": 0,
"pendingGraceActiveCount": 0,
"graceActiveCount": 0,
"lockedActiveCount": 0,
"billingChurnCount": 0,
"nonRenewalChurnCount": 0,
"refundChurnCount": 0,
"chargebackChurnCount": 0,
"earlyChurnCount": 0,
"otherChurnCount": 0
},
{
"date": "2022-04-18",
"subscriptionProductName": "realms.subscription.monthly.10player.01",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Windows and Doors",
"skuId": "0100",
"market": "NO",
"deviceType": "Unknown",
"grossSalesBeforeTax": 0.0,
"totalActiveCount": 0,
"totalChurnCount": 0,
"newCount": 0,
"renewCount": 13,
"goodStandingActiveCount": 0,
"pendingGraceActiveCount": 0,
"graceActiveCount": 0,
"lockedActiveCount": 0,
"billingChurnCount": 0,
"nonRenewalChurnCount": 0,
"refundChurnCount": 0,
"chargebackChurnCount": 0,
"earlyChurnCount": 0,
"otherChurnCount": 0
},
{
"date": "2022-04-18",
"subscriptionProductName": "realms.subscription.monthly.10player.02",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Windows and Doors",
"skuId": "0100",
"market": "CA",
"deviceType": "Unknown",
"grossSalesBeforeTax": 0.0,
"totalActiveCount": 152,
"totalChurnCount": 0,
"newCount": 0,
"renewCount": 270,
"goodStandingActiveCount": 133,
"pendingGraceActiveCount": 19,
"graceActiveCount": 0,
"lockedActiveCount": 0,
"billingChurnCount": 0,
"nonRenewalChurnCount": 0,
"refundChurnCount": 0,
"chargebackChurnCount": 0,
"earlyChurnCount": 0,
"otherChurnCount": 0
}
],
"TotalCount": 3
}
Zugehörige Themen