バリューコマースのAPIをcurlから叩いてみる

ちょっと前にAPIの存在を教えてもらっていたことを思い出したのでメモ。

APIエンドポイント

以下に対してリクエストを送信する。

http://webservice.valuecommerce.ne.jp/productdb/

Tokenが必要なので、バリューコマースにログインして取得する。
web%e3%82%b5%e3%83%bc%e3%83%93%e3%82%b9%e5%af%be%e5%bf%9c%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%a0_%e3%81%a8_%e6%96%b0%e8%a6%8f%e6%8a%95%e7%a8%bf%e3%82%92%e8%bf%bd%e5%8a%a0__wp-kyoto_

細かい仕様はわからないですが、振込口座の設定とかもちゃんとやっておかないとTokenが使えないっぽいです。INVALID_TOKENって怒られ続けてたので。

検索する

#検索はtokenとkeywordが必須
$ curl "http://webservice.valuecommerce.ne.jp/productdb/search?token=YOUR_TOKEN&keyword=Hotel"

#日本語はUTF-8でエンコードする
$ curl "http://webservice.valuecommerce.ne.jp/productdb/search?token=YOUR_TOKEN&keyword=%E8%87%AA%E8%BB%A2%E8%BB%8A&rank=monthly&rank_from=1&rank_to=5"

#月間ランキングなどを指定することも可能
$ curl "http://webservice.valuecommerce.ne.jp/productdb/search?token=YOUR_TOKEN&keyword=%E8%87%AA%E8%BB%A2%E8%BB%8A&rank=monthly&rank_from=1&rank_to=5"

#jsonが欲しい場合はformat=jsonを指定
$ curl "http://webservice.valuecommerce.ne.jp/productdb/search?token=YOUR_TOKEN&keyword=Hotel&format=json"

レスポンスの一部

APIはデフォルトだとXMLを返してきます。

<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:vc="http://valuecommerce.com/pdb/rss/">
    <channel>
        <title>ValueCommerce Product Database Search Results</title>
        <link>http://www.valuecommerce.com</link>
        <description>Processing time: 18 ms</description>
        <language>ja</language>
        <copyright>Copyright 2016, ValueCommerce Co. Ltd.</copyright>
        <vc:keyword>Hotel</vc:keyword>        <vc:adult>n</vc:adult>                                                                                                                                                                        <vc:resultPerPage>20</vc:resultPerPage>
        <vc:sortBy>score</vc:sortBy>
        <vc:sortOrder>desc</vc:sortOrder>
        <vc:page>1</vc:page>
        <vc:resultcount>252</vc:resultcount>
        <vc:pagecount>13</vc:pagecount>
        <vc:mediaType>Web</vc:mediaType>
        <vc:status>OK</vc:status>
                <item><title>HOTEL AZ 宮崎田野店 (宮崎県)</title>
            <link>//ck.jp.ap.valuecommerce.com/servlet/referral?vs=3301382&vp=884305024&va=2294907&vc_url=http%3A%2F%2Fwww.jalan.net%2FJwsRedirect.do%3Fkey%3Dphe112ad009e6c%26rd_key%3DMzg0NjE4LCwsLDEsMSwsLCwsLCwwMSwwMA%3D%3D</link>
            <description>駐車場・朝食無料★安心のHOTEL AZチェーン★</description>
            <guid>http://www.jalan.net/JwsRedirect.do?key=phe112ad009e6c&rd_key=Mzg0NjE4LCwsLDEsMSwsLCwsLCwwMSwwMA==</guid>
            <vc:pvImg><![CDATA[<img src="//ad.jp.ap.valuecommerce.com/servlet/gifbanner?vs=3301382&vp=884305024" height="1" width="1" border="0">]]></vc:pvImg>
            <vc:merchantName>じゃらんnet</vc:merchantName>
            <vc:ecCode>02u6h</vc:ecCode>
            <vc:janCode></vc:janCode>
            <vc:markCode></vc:markCode>
            <vc:productCode>384618</vc:productCode>
            <vc:modelCode></vc:modelCode>
            <vc:subStoreId>pdb2130725</vc:subStoreId>
            <vc:subStoreName>じゃらんnet</vc:subStoreName>
            <vc:adult>n</vc:adult>
            <vc:startdate>20160912</vc:startdate>
            <vc:category>trip,domestic,hotel</vc:category>
            <vc:image class="small" url="" height="" width="" />
            <vc:image class="large" url="" height="" width="" />
            <vc:image class="free" url="http://www.jalan.net/jalan/images/pictM/Y8/Y384618/Y384618001.jpg" height="157" width="210" />
            <vc:price></vc:price>
            <vc:commissionValue>800</vc:commissionValue>
            <vc:commissionPercent>0.00</vc:commissionPercent>
            <vc:commissionFixed>800</vc:commissionFixed>
            <vc:latitude>31.830787484938</vc:latitude>
            <vc:longitude>131.30942158809</vc:longitude>
            <vc:product_category></vc:product_category>
            <vc:brand_name></vc:brand_name>
            <vc:brand_url></vc:brand_url>
            <vc:stock></vc:stock>
            <vc:postage></vc:postage>
            <vc:point></vc:point>
            <vc:size></vc:size>
            <vc:color></vc:color>
            <vc:gender></vc:gender>
            <vc:shipping_arrangement></vc:shipping_arrangement>
            <vc:sale_price></vc:sale_price>
            <vc:sale_start_date></vc:sale_start_date>
            <vc:sale_end_date></vc:sale_end_date>
            <vc:product_update_day></vc:product_update_day>
                    </item>

とりあえず今回はここまで。
せっかくなので、そのうちWordPressでなんか検索してみたりするようなことも試してみようかなと思います。

マニュアルなど

ウェブサービス(API)の紹介 | ASPのバリューコマース アフィリエイト

Follow me!