구독 추가 기능 취득 가져오기
Microsoft Store 분석 API에서 이 방법을 사용하여 지정된 날짜 범위 및 기타 선택적 필터를 사용하는 동안 앱의 추가 기능 구독에 대한 집계 취득 데이터를 가져옵니다.
필수 조건
이 메서드를 사용하려면 먼저 다음 방법대로 해야 합니다.
- 아직 완료하지 않은 경우 Microsoft Store 분석 API에 대한 모든 필수 조건을 완료합니다.
- 이 메서드에 대한 요청 헤더에 사용할 Azure AD 액세스 토큰을 가져오세요. 액세스 토큰을 가져온 후 만료되기까지 60분이 걸립니다. 토큰이 만료된 후 새 토큰을 가져올 수 있습니다.
Request
요청 구문
메서드 | 요청 URI |
---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/analytics/subscriptions |
요청 헤더
헤더 | 형식 | 설명 |
---|---|---|
권한 부여 | string | 필수. Bearer<토큰> 형식의 Azure AD 액세스 토큰. |
요청 매개 변수
매개 변수 | 형식 | 설명 | 필수 |
---|---|---|---|
applicationId | 문자열 | 구독 추가 기능 취득 데이터를 검색하려는 앱의 Store ID입니다. | 예 |
subscriptionProductId | 문자열 | 취득 데이터를 검색하려는 구독 추가 기능의 Store ID입니다. 이 값을 지정하지 않으면 이 방법은 지정된 앱에 대한 모든 구독 추가 기능의 취득 데이터를 반환합니다. | 아니요 |
startDate | date | 검색할 구독 추가 기능 취득 데이터 날짜 범위의 시작 날짜입니다. 기본값은 현재 날짜입니다. | 아니요 |
endDate | date | 검색할 구독 추가 기능 취득 데이터 날짜 범위의 종료 날짜입니다. 기본값은 현재 날짜입니다. | 아니요 |
top | int | 요청에서 반환할 데이터 행의 수. 지정되지 않은 경우 최댓값 및 기본값은 100입니다. 쿼리에 행이 더 있는 경우, 다음 데이터 페이지를 요청하는 데 사용할 수 있는 다음 링크가 응답 본문에 포함됩니다. | 아니요 |
skip | int | 쿼리에서 건너뛸 행 수. 이 매개 변수를 사용하여 큰 데이터 집합을 페이징합니다. 예를 들어 top=100 및 skip=0은 데이터의 첫 100행을 검색하고 top=100 및 skip=100은 데이터의 그 다음 100행을 검색하는 식으로 이어집니다. | 아니요 |
필터 | 문자열 | 응답 본문을 필터링하는 하나 이상의 문장. 각 문은 eq 또는 ne 연산자를 사용할 수 있으며, 문은 and 또는 or을 사용하여 결합될 수 있습니다. 다음의 문자열을 필터 문에서 지정할 수 있습니다(응답 본문의 값에 해당함).
다음은 필터 매개 변수의 예시입니다. filter=date eq '2017-07-08'. |
아니요 |
aggregationLevel | 문자열 | 집계 데이터를 검색할 시간 범위를 지정합니다. 일 문자열, 주 문자열 또는 월 문자열 중 하나일 수 있습니다. 지정하지 않으면 기본값이 일이 됩니다. | 아니요 |
orderby | 문자열 | 각 구독 추가 기능 취득에 대한 결과 데이터 값을 정렬하는 문입니다. 구문은 orderby=field [order],field [order],...입니다. 필드 매개 변수는 다음 문자열 중 하나일 수 있습니다.
order 매개 변수는 옵션이며 각 필드를 asc 또는 desc로 오름차순 또는 내림차순으로 지정할 수 있습니다. 기본값은 asc입니다. 다음은 orderby 문자열의 예시입니다. orderby=date,market |
아니요 |
groupby | 문자열 | 지정된 필드에만 데이터 집계를 적용하는 문. 다음과 같은 필드를 지정할 수 있습니다.
groupby 매개 변수는 aggregationLevel 매개 변수와 함께 사용할 수 있습니다. 예시: groupby=market&aggregationLevel=week |
아니요 |
요청 예시
다음의 예시는 구독 추가 기능 취득 데이터를 가져오는 방법을 보여 줍니다. applicationId 값을 앱에 적합한 Store ID로 바꿉니다.
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>
응답
응답 본문
값 | 형식 | 설명 |
---|---|---|
값 | 배열 | 집계 구독 추가 기능 취득 데이터가 포함된 개체의 배열입니다. 각 개체의 데이터에 대한 자세한 정보는 아래의 구독 취득 값 섹션을 참조하세요. |
@nextLink | 문자열 | 추가적인 데이터 페이지가 있는 경우, 다음 데이터 페이지를 요청하는 데 사용할 수 있는 URI가 이 문자열에 포함됩니다. 예를 들어 요청의 top 매개 변수가 100으로 설정되어 있지만 쿼리에 대한 구매 추가 기능 취득 데이터의 행이 100개보다 많은 경우 이 값이 반환됩니다. |
TotalCount | int | 쿼리에 대한 데이터 결과의 총 행 수. |
구독 취득 값
값 배열의 요소에는 다음의 값이 포함됩니다.
값 | 형식 | 설명 |
---|---|---|
date | 문자열 | 획득 데이터의 날짜 범위 중 첫 날짜입니다. 요청에서 하루를 지정한 경우, 이 값은 해당 날짜입니다. 요청에서 주, 월 또는 다른 날짜 범위를 지정한 경우 이 값은 해당 날짜 범위의 첫 번째 날짜입니다. |
subscriptionProductId | 문자열 | 취득 데이터를 검색하는 구독 추가 기능의 Store ID입니다. |
subscriptionProductName | 문자열 | 구독 추가 기능의 표시 이름입니다. |
applicationId | 문자열 | 구독 추가 기능 취득 데이터를 검색하는 앱의 Store ID입니다. |
applicationName | 문자열 | 앱의 표시 이름. |
skuId | 문자열 | 취득 데이터를 검색하는 구독 추가 기능의 SKU ID입니다. |
deviceType | 문자열 | 취득을 완료한 디바이스 유형을 나타내는 다음의 문자열 중 하나입니다.
|
시장 | 문자열 | 취득이 발생한 시장의 ISO 3166 국가 번호입니다. |
currencyCode | 문자열 | 세전 총 판매액에 대한 ISO 4217 형식의 통화 코드입니다. |
grossSalesBeforeTax | 정수 | currencyCode 값으로 지정된 현지 통화의 총 판매액입니다. |
totalActiveCount | 정수 | 지정된 기간 동안의 총 활성 구독 수입니다. 이는 goodStandingActiveCount, pendingGraceActiveCount, graceActiveCount 및 lockedActiveCount 값의 합계와 같습니다. |
totalChurnCount | 정수 | 지정된 기간 동안 비활성화된 총 구독 수입니다. 이는 billingChurnCount, nonRenewalChurnCount, refundChurnCount, chargebackChurnCount, earlyChurnCount 및 otherChurnCount 값의 합계와 같습니다. |
newCount | 정수 | 지정된 기간 동안 평가판을 포함한 새 구독을 취득한 횟수입니다. |
renewCount | 정수 | 지정된 기간 동안 사용자가 시작한 갱신 및 자동 갱신을 포함하여 구독을 갱신한 횟수입니다. |
goodStandingActiveCount | 정수 | 지정된 기간 동안 활성 상태이고 만료 날짜가 쿼리의 >= the endDate 값인 구독 수입니다. |
pendingGraceActiveCount | 정수 | 지정된 기간 동안 활성 상태였지만 청구하지 못했고, 구독 만료 날짜가 쿼리의 >= the endDate 값인 구독 수입니다. |
graceActiveCount | 정수 | 지정된 기간 동안 활성 상태였지만 청구하지 못했고, 다음과 같은 경우의 구독 수입니다.
|
lockedActiveCount | 정수 | 지정된 기간 동안 독촉 중(즉, 구독 만료 날짜가 얼마 남지 않아 Microsoft에서 구독을 자동 갱신하기 위한 금액을 취득하려 시도하는 중)이었으며, 다음과 같은 경우의 구독 수입니다.
|
billingChurnCount | 정수 | 청구 요금을 처리하지 못해 지정된 기간 동안 비활성화되었고 구독이 이전에 독촉 중이었던 구독 수입니다. |
nonRenewalChurnCount | 정수 | 갱신되지 않아 지정된 기간 동안 비활성화되었된 구독 수 입니다. |
refundChurnCount | 정수 | 환불되어 지정된 기간 동안 비활성화되었된 구독 수 입니다. |
chargebackChurnCount | 정수 | 지불 거절되어 지정된 기간 동안 비활성화되었된 구독 수 입니다. |
earlyChurnCount | 정수 | 양호한 상태에서 지정된 기간 동안 비활성화되었된 구독 수 입니다. |
otherChurnCount | 정수 | 기타 이유로 지정된 기간 동안 비활성화되었된 구독 수 입니다. |
요청 및 응답 예제
다음 코드 조각은 해당 요청에 대한 몇 가지 예제 요청 및 JSON 응답 본문을 보여 줍니다.
샘플 요청
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/subscriptions?applicationId=9NBLGGGZ5QDR
HTTP/1.1
Authorization: Bearer <your access token>
샘플 응답
{
"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
}
샘플 요청
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>
샘플 응답
{
"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
}
관련 항목