プロダクトAPI群



プロダクトAPIは、アプリ内課金で利用する有料・無料の商品(プロダクト)を管理するAPI群です。

  • プロダクトグループ
    •  複数のプロダクトが属するフォルダのような概念です。プロダクトは複数のプロダクトグループに属することが可能です。
    •  すべてのプロダクトはプロダクトグループに属しています。何も指定しない場合、デフォルトのグループに属します。

  • プロダクト(一覧)
    •  ダウンロード提供する商品データ、及びそのメタデータを検索できます。

  • プロダクト(一件)
    •  ダウンロードする商品データを1件だけ取得します。レスポンスの仕様は検索と同一です。

  • 売り上げランキング
    •  毎朝5時に集計した売り上げランキングをAPIで取得可能です。


-プロダクトグループ(ID無指定でデフォルトグループの取得)



プロダクトグループの一覧および、そのグループに紐づくプロダクトを取得します。プロダクトAPIにもプロダクトグループを指定するAPIはありますが、レスポンスの量が異なります。プロダクトグループAPIでは基本情報のみ返却しますので、通信及びJSONの読み込みを高速に行うことが可能です。

リクエストURL

https://dodaii.com/api/v2/productGroup/<TOKEN> (/<GROUP ID>)

 例)グループ指定有り(1)

 https://dodaii.com/api/v2/productGroup/decdc5444c24142895238ec9a0ce3778/1

 例)デフォルトグループ

 https://dodaii.com/api/v2/productGroup/decdc5444c24142895238ec9a0ce3778

リクエストメソッド

GET


リクエストパラメータ

項目 意味 必須 値の例
TOKEN アプリケーションを一意に特定するトークン 必須 6427d3ccb8f01fafca85c2303c057bbe
GROUP ID プロダクトグループID 任意 1


レスポンスパラメータ

項目名 意味 値の例
applicationId グループがひも付くApplicationのIDです。dodaiiの内部IDになります。 50
id グループID 5
    localization プロダクトグループの各言語ごとに登録した情報(配列)です。 {"displayedName":"","locale":"en_AU"},(以下略)
displayName 言語ごとに管理パネルで登録した表示名です。 DISPLAY_NAME(Japanese)
locale 該当の省略言語情報です。 ja
memo メモ テスト
name プロダクトグループ名 無料アイテムグループ名
productList プロダクトグループに紐づいたプロダクトの情報一覧(配列) {"createdAt":1282881029000,"deleteFlag":false,"disabled":false,
"freeItemFlag":true,"id":62,"identifier":"freefreefree",
"modifiedAt":1283421950000,"name":"無料プロダクト"}(以下略)
createdAt プロダクトが作成された日付(ミリ秒) 1282881029000
deleteFlag 削除フラグ false
freeItemFlag 無料フラグ false
id プロダクトのID 132
identifier プロダクトのAppStoreで使用するIDです "Test Item"
modifiedAt プロダクトが更新された日付(ミリ秒) 1282881029000
name プロダクト名 テスト無料プロダクト

サンプルレスポンス

[
    {
        "applicationId": 151,
        "id": 1,
        "localization": [
            {
                "displayedName": "言語:Australian English",
                "locale": "en_AU"
            },
       ・・・ 略 ・・・            {
                "displayedName": "言語:Japanese",
                "locale": "ja"
            },

       ・・・ 略 ・・・

            {
                "displayedName": "言語:Swedish",
                "locale": "se"
            }
        ],
        "memo": "テストデータ確認用のデータ",
        "name": "テストグループ",
        "productList": [
            {
                "createdAt": 1288189227000,
                "deleteFlag": false,
                "disabled": false,
                "freeItemFlag": false,
                "id": 595,
                "identifier": "testtsetProduct20101027",
                "modifiedAt": 1297909107000,
                "name": "テストプロダクト001"
            }
        ]
    }
]


エラーケース

  • 返却すべきランキング数が0件の場合
  • Tokenに紐づくアプリケーションが存在しないとき
  • その他不正な検索条件が加味されていた場合
  • 共通エラーもご確認ください
  • ご不明な点は「APIドキュメントのプロダクトグループについて」とsupport[a]dodaii.com までお問い合わせください。


-プロダクト(一覧)


プロダクトAPIは、様々な条件でプロダクト情報を取得するために利用します。一覧APIを利用し、さまざまな条件で取得可能です

  • プロダクトの全件取得
  • 特定のプロダクトグループに属するプロダクト一覧※
  • 取得結果のフィルタリング(言語情報)
  • メタデータを利用したlike検索
  • パラメータを指定した並べ替え
※プロダクトグループAPIとの違いは、言語も含んだプロダクトの全情報をレスポンス返却する点です。プロダクトの数が多い場合、JSONの読み込みに負荷がかかりますのでご注意ください。


●リクエストURL


プロダクト一覧:※下記のパラメータで絞り込みおよびソートが可能です

https://dodaii.com/api/v2/product/<TOKEN>


特定のグループに紐づくプロダクト一覧(非推奨。ソートや検索条件指定はできません。プロダクトグループAPIとの違いはレスポンスデータの内容が詳細である点です。)

https://dodaii.com/api/v2/product/<TOKEN>/<GROUP ID>


●リクエストメソッド


GET


●リクエストURL仕様

項目 意味 必須 値の例
TOKEN アプリケーションを一意に特定するトークン 必須 6427d3ccb8f01fafca85c2303c057bbe
GROUP ID グループを一意に特定するID。
省略した場合は、グループを指定せず全てのプロダクト情報を取得する。
0を指定した場合は、グループに属していないプロダクトの情報を取得する。
任意 2


●リクエストクエリパラメータ仕様

※API URLにて/<GROUP ID>/を指定した場合は利用できません。

検索に関する仕様

項目 意味 必須 値の例
attnarrow(非推奨) 下記attributekwパラメータと連動してlike検索を行う。
「attnarrow」はATT1~ATT5までの指定パラメータ
任意 ATT1
attnarrowkw(非推奨) 上記attnarrowパラメータと連動してlike検索を行う。
「attnarrowkw」はlike検索のキーワード
任意 abcdefg123
productGroupId 特定のプロダクトグループに属するプロダクトのみ抽出します 任意 2
locale localeの指定。
この指定により、返却される言語を限定し、レスポンスのデータ量を削減することが可能です。
※Sortは省略されないためattributeとの併用の場合はlanguageIdを指定しなければなりません。
任意 ja
keyword 管理パネルの付属情報FreeColumn1~5、DISPLAYED_NAME、プロダクト名の全てのカラムを横断しキーワードで絞り込みます。
keywordの中に「スペース」がある場合AND検索を実施します。
 (※全角スペースでも半角として認識されます)
 (※ただし、2つ目のスペース移行に関しては無視します)
例)「ああ いい うう ええ おお」
「ああ」AND「いい」までは検索キーワードとして認識、以降はないものとして扱われスキップします。
任意 TestKeyword
andKey1~3 付属情報FreeColumn1~5(ATT1~5)の情報いずれかに対して、like検索を行います。対象となるカラムと、検索キーワードの組み合わせは3つまで組み合わせることができ、それぞれAND検索になります。
例)FreeColumn1に電子書籍のタイトル、FreeColumn2に著者名が入っている場合
andKey1=ATT1&andValue=SampleBook&andKey=ATT2&andValue=jessica
任意 ATT1
andValue1~3 任意 TestKeyword
languageId SortなどATT1~5を指定するとき用いる。値となる数値はプロダクト情報の言語情報の順番を表わす。
Australian English:0
Brazilian Portuguese:1
Canadian English:2
Canadian French:3 ・・・ Japanese:9
※localeを指定した後languageIdが無指定の場合,[Australian English]となる。
任意 9

ソート、ページングに関する仕様

項目 意味 必須 値の例
attribute 取得結果をソートする際の基準を決定します。ATT1~5を指定すると、管理パネルにおけるFree Column1~5の内容でソートを行います。 manual と指定すると、プロダクト登録画面にある「表示順」でソートを行います。何も指定しない場合、管理パネルで登録した順となります。
任意 ATT1
sort sortの順序。デフォルトはasc 任意 asc
lmt 取得できるリミット(デフォルトおよび0指定は50件) 任意 20
offst 取得を開始する位置(0始まり) 任意 0


●サンプルリクエスト


例)グループID 1 に属し、ATT1のデータを基準に降順に並べ替え。レスポンスは日本語情報のみにフィルタを行う

https://dodaii.com/api/v2/product/6427d3ccb8f01fafca85c2303c057bbe/?attribute=ATT1&sort=desc&productGroupId=1&locale=ja

例)すべてのカラムに対し、「55555」でlike検索を行う(処理に時間がかかる場合があります)

https://dodaii.com/api/v2/product/6427d3ccb8f01fafca85c2303c057bbe/?keyword=55555


例)FreeColumn1対し「yamada」、FreeColumn2に対し「TRUE」でlike検索を行う

https://dodaii.com/api/v2/product/decdc5444c24142895238ec9a0ce3778?andKey1=ATT1&andValue1=yamada&andKey2=ATT2&andValue2=TRUE

    ※検索対象はdodaii WebPanelのプロダクトにあるFree Column 1~5(「ATT1」~「ATT5」)にあたります。


●レスポンス仕様

項目名 意味 値の例
applicationId グループがひも付くApplicationのIDです。dodaiiの内部IDになります。 50
applicationProduction グループがひも付くApplicationの販売状況です。 false
id プロダクトの固有IDです。 15
identifier プロダクトのAppStoreで使用するIDです "jp.co.feynman.sampleapp.sampleproduct"
localization 各言語ごとに登録した情報(配列)です [{"attachments":[ {"fileId":118,"fileName":"1",
"id":1,"md5":"a0397369e076cecbbc82dee12cab740f", 以下略
modifiedAt プロダクトが更新された日付(ミリ秒)。 1297909107000
name プロダクト名。 テストプロダクト

■localization配列内のオブジェクトは以下の通りです
-----------------------------------------------------------------

項目名 意味 値の例
attachments 関連情報添付ファイル(配列)です
■attachments配列内のオブジェクトは以下の通りです
項目名 意味 値の例
fileId ファイルのファイルIDです 1515
fileName ファイルの名前です。 FileName001
id プロダクトID 45
md5 ファイルのハッシュ値 ca45cd7a66f789adcf5769809
size ファイルのサイズ 56321
url ファイルのURL http://static.dodaii.com/<app token>/<product id>/<file id>
contents 課金コンテンツです。
■contents配列内のオブジェクトは以下の通りです
fileId ファイルのファイルIDです 1515
fileName ファイルの名前です。 FileName001
id プロダクトID 45
md5 ファイルのハッシュ値 ca45cd7a66f789adcf5769809
size ファイルのサイズ 56321
url ファイルのURL 不使用            
displayedName 言語ごとに管理パネルで登録した表示名です DISPLAY_NAME(Japanese)
freeColumn1~5 汎用的に使用できる情報です Free Comment
locale 該当の省略言語情報です ja

●サンプルレスポンス

[
   {"applicationId":151,
        "applicationProduction":false,
        "attachments":null,
        "freeItemFlag":false,
        "id":595,
        "identifier":"testtsetProduct20101027",
"localization":[
{"attachments":[],"contents":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"en_AU"},

//( ・ ・ ・  その他情報を登録していない言語情報 略  ・ ・ ・ )

{"attachments":[],"contents":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"it"},
{"attachments":[
{"fileId":2109,"fileName":"付属情報 1\t","id":1,"md5":"94df93ca93ef0315e36c84ef140d4dc9",
                                "modifiedAt":null,"size":147882,"url":"http://static.dodaii.com/decdc5444c24142895238ec9a0ce3778/595/2109"},
{"fileId":2110,"fileName":"付属情報 2","id":2,"md5":"94df93ca93ef0315e36c84ef140d4dc9",
                                "modifiedAt":null,"size":147882,"url":"http://static.dodaii.com/decdc5444c24142895238ec9a0ce3778/595/2110"}
                    ],
                    "contents":[
{"fileId":2561,"fileName":"contentFile.dat","id":1,"md5":"null\r\n","modifiedAt":null,"size":7556061,"url":""},
{"fileId":2107,"fileName":"test_test.zip","id":2,"md5":"42faa4885f0270f4c34ba007fadc8c9e","modifiedAt":null,"size":2946878,"url":""},
{"fileId":2108,"fileName":"070521spacewarp02.jpg","id":3,"md5":"a02cabe7adbabd6e6524c65241816dc4","modifiedAt":null,"size":166374,"url":""}
                    ],
                    "displayedName":"contentFile.dat",
                    "freeColumn1":"ああああああああ",
                    "freeColumn2":"いいいいいいいいい",
                    "freeColumn3":"うううううう",
                    "freeColumn4":"えええええええええ",
                    "freeColumn5":"おおおおおおおおおおお",
                    "locale":"ja"
                },

//( ・ ・ ・  その他情報を登録していない言語情報 略  ・ ・ ・ )

{"attachments":[],"contents":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"se"}
],
"modifiedAt":1297909107000,
"name":"テストプロダクト"
}, // プロダクト1件目終わり
    {"applicationId":151,
        "applicationProduction":false,
        "attachments":null,
        "freeItemFlag":true,
        "id":597,
        "identifier":"testtsetProduct20101027_222222222",
"localization":[
{"attachments":[],"contents":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"en_AU"},
{"attachments":[],"contents":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"en_CA"},
{"attachments":[],"contents":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"fr_CA"},
{"attachments":[],"contents":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"nl"},
( ・・・ 以下プロダクトの数だけ繰り返し ・・・)
]


●エラーケース

  • 返却すべきプロダクト数が0件の場合 
  • Tokenに紐づくアプリケーションが存在しないとき
  • その他不正な検索条件が加味されていた場合
  • ご不明な点は「APIドキュメントのプロダクトについて」とsupport[a]dodaii.com までお問い合わせください。

-プロダクト(一件)


プロダクトAPIにProductのIDを指定すると、1件だけ情報を取得することができます。プロダクトグループAPIから詳細画面に遷移する場合は、戻るなどでViewオブジェクトのメモリが解放されて再読込が必要な場合にご利用ください。

●リクエストURL


プロダクト一覧:※下記のパラメータで絞り込みおよびソートが可能です

https://dodaii.com/api/v2/product/<TOKEN>/<GROUP ID>/<PRODUCT ID>

●リクエスト仕様


項目 意味 必須 値の例
TOKEN アプリケーションを一意に特定するトークン 必須 6427d3ccb8f01fafca85c2303c057bbe
GROUP ID グループを一意に特定するID。
省略した場合は、グループを指定せず全てのプロダクト情報を取得する。
0を指定した場合は、グループに属していないプロダクトの情報を取得する。
任意 2
PRODUCT ID プロダクトを一意に指定するID 任意 2

尚、レスポンス仕様は一覧と同じです。

●エラーケース

  • 返却すべきプロダクトが存在しない場合
  • プロダクトとグループの組み合わせが一致しない場合 
  • Tokenに紐づくアプリケーションが存在しないとき
  • その他不正な検索条件が加味されていた場合
  • ご不明な点は「APIドキュメントのプロダクトについて」とsupport[a]dodaii.com までお問い合わせください。

-売上ランキング


販売中のranking_listをアプリケーションごとに取得します。

●リクエストURL

本番用:

https://dodaii.com/api/v2/transaction/rankingList/<TOKEN>

開発用:

https://dodaii.com/api/v2/transaction/rankingList/sandbox/<TOKEN>

無料アイテムDL数:

https://dodaii.com/api/v2/transaction/rankingList/free/<TOKEN>

※無料アイテムに開発中と本番用の区別はありません。

●リクエストパラメータ

項目 意味 必須 値の例
TOKEN アプリケーションを一意に特定するトークン 必須 6427d3ccb8f01fafca85c2603c057bbe
lmt 取得できるリミット(デフォルトおよび0指定は50件) 任意 1
offst 取得できるランキングの基準(デフォルトは0) 任意 10

●レスポンス仕様

項目名 意味 値の例
applicationId グループがひも付くApplicationのIDです。dodaiiの内部IDになります。 50
createdAt トランザクションが発行された日付(ミリ秒) 1285550808000
isSandBox 開発中のデータに基づくランキングかどうか false
quantity 個数 1
productId プロダクトを一意に特定するID 99
productName プロダクトの名前 testProduct123
localization 各言語ごとに登録した情報(配列)です 【省略】 詳しくは、上記プロダクトAPI(一覧)を御覧ください

●サンプルレスポンス

[{"applicationId":0000,
        "attachments":null,
        "createdAt":1285372192000,
        "id":40,
        "identifier":"com.dodaii.sampleapp.sampleitem",
        "isSandBox":false,

        "localization":[
                {"attachments":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"en_AU"},
                // 利用しない言語情報省略
                {"attachments":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"it"},
                {"attachments":[],"displayedName":"TestTest","freeColumn1":"TestTest","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"ja"},
                {"attachments":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"es_MX"},
                // 利用しない言語情報省略
                {"attachments":[],"displayedName":"","freeColumn1":"","freeColumn2":"","freeColumn3":"","freeColumn4":"","freeColumn5":"","locale":"se"}
        ],
        "productId":"99999",
        "productName":"TestTest",
        "quantity":"31"},
   {"applicationId":0000,
    // 以下2件目以降くりかえし
]


●エラーケース

  • 返却すべきランキング数が0件の場合
  • Tokenに紐づくアプリケーションが存在しないとき

Comments