[오픈 API] 앱 다운로드 순위를 가져오자 1부 (AppApnnie Api)

여러분들이 만드신 앱 들의 다운로드 수는 어떻게 관리하고 계신가요?

ios는 아이튠스커넥터, andorid는 콘솔 페이지에서 각각 정보를 얻고 계실꺼예요.
앱애니 라는 전세계에서 가장많이 사용하는 앱통계 사이트를 이용하여, 다운로드 수를 가져올수 있습니다.

이번 주제는 총 3부로 나눠보았습니다.
  1. [오픈 API] 앱 다운로드 순위를 가져오자 1부 (AppApnnie Api)
  2. [오픈 API] 앱 다운로드 순위를 가져오자 2부 (모바일 앱 설계)
  3. [오픈 API] 앱 다운로드 순위를 가져오자 3부 (모바일 앱 구현)


앱애니(https://www.appannie.com/kr)는 모바일 앱의 다운로드, 수익, 등급, 사용량, 검색어 등에 대한 소비자 및 경쟁 정보를 생성하여 앱 마케팅 지출 최적화, 파트너 및 투자 전략 및 제품 로드맵 우선순위 결정에 대한 의사 결정을 지원하는 사이트 입니다.
출처 : 위키피디아

앱 애니에서 지원하는 API는 다음과 같습니다.
우리는 여기서 App Sales 에서 앱 다운로드 수를 가져오는 API를 호출해야 합니다.

  1. Account Connection Sales
  2. App Sales
  3. App Ranks
  4. App Reviews
  5. App Ratings
  6. App Features
  7. App Details
  8. Platform List
  9. Country List
  10. Category List
  11. Currency
  12. Account Connections List
  13. Account Connection App List
  14. App IAP List
  15. Shared Apps List
우선 AppAnnie  Api를 사용하기 위해서는 아래의 절차가 필요합니다.

1. 회원가입
2. 애플, 안드로이드 스토어 계정 연동
3. API 발급
4. API 문서를 통해 API요청

회원가입 후 계정연결 페이지로 가서, 각 스토어를 연결합니다.

계정연결
그후 좌측 메뉴에서 API 키를 눌러 APIM를 발급을 받습니다.

API 키 발급
이제 준비는 끝났습니다. 아래의 링크로 접속합니다.
https://support.appannie.com/hc/en-us/categories/202773667-API

AppAnnie API

스크롤을 내려보면 App Analytics API 항목이 있습니다, 여기서  5. Product Sales 를 선택합니다.



Product Sales API를 통해 다운로드 수를 가져올수 있습니다.
RESTFUL 기반의 호출방식으로 아래의 API 요청하면, 다운로드 수를 가져올수 있습니다.

/v1.2/accounts/{account_id}/products/{product_id}/sales?break_down{break_down}&start_date={start_date}&end_date={end_date}
&currency={currency}&countries={countries}&page_index={page_index}

{account_id} = 계정 ID
{product_id} = 앱 ID
{state_date} =  검색할 시작 날짜  / 2017-08=01
{end_date} =  검색할 종료 날짜  / 2017-08-30
{currency} =  화폐단위 (기본 : USD) /  원단위로 검색 -> KRD
{countries} =  국가 (기본 : ALL) /  한국스토어를 검색해야하니 kr




다른 파라미터들은 직접 입력이 가능하지만, account_id 와 product_id 먼저 요청을 해서 값을 가져와야합니다.
account_id / /v1.2/accounts?page_index={page_index}
product_id  / /v1.2/accounts/{account_id}/products?page_index={page_index}



account_id 와 product_id 값을 먼저 가져온 후 Sales API를 호출하면, 다운로드 수를 가져올수 있습니다.

그럼 이제 실제로 요청을 하기 위해 JSON 프로그램으르 이용해보겠습니다.
저는 맥을 이용하므로, 맥의 App Store에서 Visual JSON을 다운받았습니다.




각종 값들을 넣고, Header에 Authorization값을 넣습니다.
Authorization은 Appannie API키에 Bearer 문자열을 넣어 입력합니다.

https://api.appannie.com/v1.2/accounts/:accountId/products/:productId/sales?start_date=2017-04-01&end_date=2017-08-31
&currency=USD&countries=kr&page_index=0

Visual JSON
Visual JSON 프로그램이 없어도, 다른 프로그램을 통해서 요청을 할수 있습니다.
다음 시간에는 ios에서 AppAnnie API를 호출해 보도록 하겠습니다.

=============================================================================

{
    "sales_list": [
        {
            "date": "all",
            "country": "all",
            "units": {
                "product": {
                    "promotions": 0,
                    "downloads": 262,
                    "updates": 1072,
                    "refunds": 0
                },
                "iap": {
                    "promotions": 0,
                    "sales": 0,
                    "refunds": 0
                }
            },
            "revenue": {
                "product": {
                    "promotions": "0.00",
                    "downloads": "0.00",
                    "updates": "0.00",
                    "refunds": "0.00"
                },
                "iap": {
                    "promotions": "0.00",
                    "sales": "0.00",
                    "refunds": "0.00"
                },
                "ad": "0.00"
            }
        }
    ],
    "next_page": null,
    "code": 200,
    "prev_page": null,
    "vertical": "apps",
    "page_num": 1,
    "iap_sales_list": [],
    "currency": "USD",
    "page_index": 0,
    "market": "ios"
}
==============================================================================


댓글

  1. 안녕하세요. 글 잘 보았습니다. 궁금한 게 있는데.
    이거를 이용하면 제가 등록한 앱의 통계만 볼 수 있는 건가요? 아님 다른 앱들도 볼 수 있을까요?

    그리고 앱애니 계정과 구글 계정 연동시에 구글 계정 확인을 누르면, 핸드폰에서 로그인 요청이 시도되었다고 하면서. 화면에 표시된 숫자 중 맞는 숫자를 누르라고 합니다. 하지만 화면에는 아무런 숫자가 없고 아무 숫자나 입력하면 맞지 않는다고 오류가 나네요.

    혹시 어떻게 해결할 수 있는지 아실까요?

    답글삭제
  2. 회원가입은 했는데 계정연동을 어떻게 하는지 혹시 아시나요?

    답글삭제

댓글 쓰기

주간 인기글

[정보] 인스타그램은 당신의 소리를 '듣고' 있을 수도 있습니다

[Angular] 모델, 값이 바뀌었는데 화면 template 이 업데이트 되지 않을 때 조치 팁

[AWS] Lambda + API GateWay를 이용해 간단한 RESTful API 만들기 #1

[AWS] Lambda + API GateWay를 이용해 간단한 RESTful API 만들기 #2

안드로이드에서 당겨서 새로고침(SwipeRefreshLayout) 쉽게 구현하기