くりにっき

フルスタックキュアエンジニアです

AZusaar!!の楽天トラベルAPIを2013-10-24にアップデートしました

楽天トラベル系API バージョンアップと「api.rakuten.co.jp」で提供しているAPIに関するお知らせ - 楽天ウェブサービスブログ

AZusaar!! でも誰も気づいてないと思うけど楽天トラベルの 施設検索API を使ってるのでアップデートしました。

APIのエンドポイントだけ変わってると思ったら細かいところで変わってたのでメモ。

developerId がなくなって applicationIdになった

400エラーになるんだけど サンプル にあるようなエラーのJSONレスポンスが出なかったので原因が分かりづらかった

jsonpのコールバック関数名が callBack から callback (全部小文字)になった

お、お、おう・・・

JSONの構造が変わった

before (version: 2009-10-20)

{
  "Body":{
    "SimpleHotelSearch":{
      "hotel":[
        {
          "hotelBasicInfo":{
            "hotelNo":1661,
            "hotelName":"目黒雅叙園",
            // 略
          },
        },
        {
          "hotelBasicInfo":{
            // 略
          },
        },
      ],
    },
  },
}

after (version: 2013-10-24)

{
  "hotels":[
    {
      "hotel":[
        {
          "hotelBasicInfo":{
            "hotelNo":1661,
            "hotelName":"目黒雅叙園",
            // 略
        },
      ],
    },
    {
      "hotel":[
        {
            // 略
        },
      ],
    },
  ],

ほぼリファレンスどおりなんですがhotelの中が配列になってるとは思わなかった。*1

実際に2013-10-24 にアップデートしたコード

upgrade to rakuten travel API ver 2013-10-24 : resolve #10 · 6b31c0e · sue445/azusaar_js

*1:APIの仕様的に1つのhotelの中に複数要素が入るなんてありえないと思うんですがねぇw