WEB API ワークショップ
Chaisatien Prach
下郡愛
Open Services Platform Department
Web Service Platform Group
Rakuten, Inc.
自己紹介
楽天Web Service(API)のエンジニアです

下郡愛

Chaisatien Prach

2006年入社
スマホ向けAPI担当

2010年入社
市場、検索API担当
ゴール

1週間で
APIを使って
サービスを作り
発表する
3
12/6 スケジュール
16:50 - 課題説明
API技術概要
楽天ウェブサービスAPI紹介
楽天ウェブサービスAPI利用事例紹介
17:00 - Heroku環境構築
楽天ウェブサービスSDK紹介
17:30 - チーム分け
17:35 - アイディアソン
開発タイム
18:20 終了
12/13 スケジュール
16:50 - 開発タイム
16:10 - 発表準備
17:40 - 成果発表会
18:10 - 審査結果発表、集合写真撮影
18:20 終了
ポイント

講義の評価は
成果発表会でします

6
評価基準
1

アイディア
新規性、独自性、優れた着眼点であるか

2

完成度

デザイン、システム処理
1週間でどれだけアプリ開発を進めることができたか

7
発表内容(5分間)

1.
2.
3.
4.
5.

チーム名
アプリケーション名
サービス概要
独自のアイディア
アプリデモ
API技術概要
API とは

• Application Programming Interface

• ソフトウェアが互いにやりとりするた
めの、インターフェイス (決まり事)
• API という言葉の意味は広い
• どのように機能やデータを呼び出す
か。
• Java API, Windows API

10
Web API とは

• Web の仕組みを利用したAPIの1つ。
• HTTP を通して、機能を呼び出したり、
情報を取得する。
Web API Server

API Client
GET /item HTTP/1.1
….
HTTP/1.1 200 OK
…

11
楽天ウェブサービスAPI

• 楽天ウェブサービスAPI = 楽天のサービ
スの持つ情報 (楽天市場, 楽天トラベル,
楽天オークション..) の情報を Web の仕
組みを利用してアクセスできる仕組み

12
マッシュアップ

Twitter
楽天
ウェブサービス
新たな価値

Yahoo!
Developer
Network

アプリケーション

Facebook
開発者達の
知恵
13
楽天ウェブサービスAPI の情報取得方法

サーバサイド
• サーバ側で複雑な処理を行える
• APIのデータ保存が必要な際に、改ざんさ
れることは少ない

クライアントサイド
• クライアント側で処理が行われるため、
サーバ側の負荷がかからない
• 表示結果は完全にユーザ側(ブラウザ) に依
存する

14
サーバサイドでの情報取得

Webサーバなど

サービス利用者

第三者開発者

楽天
ウェブサービス

楽天
(プラットフォー
ム)

15
サーバサイドでの情報取得

Heroku 上の
ウェブアプリ

サービス利用者

第三者開発者

楽天
ウェブサービス

楽天
(プラットフォー
ム)

16
データ形式

JSON
• XMLよりデータ容量が軽い

XML
• マークアップ言語
• 古くから、様々な場面で使われて
いる

17
データ形式 (JSON)

{
“fieldName”: [
{ “name”: “foo”, “price”: 200 },
{ “name”: “bar”, “price”: 150 }
]
}

18
データ形式 (JSON)

19
データ形式 (JSON)
Ruby でのデータ取得方法
https://gist.github.com/kawahara/6548109

20
クライアントサイドでの情報取得

JavaScript
からリクエ
スト

楽天
ウェブサービス

データ

HTML
+ JavaScript

Webサーバなど

21
楽天ウェブサービスAPI
楽天ウェブサービスAPI
楽天市場API

楽天GORA API

楽天オークションAPI

楽天トラベルAPI

楽天ブックスAPI

楽天レシピAPI

23
楽天ウェブサービスAPI
KOBO API

24
テストフォームで使ってみよう

http://webservice.rakuten.co.jp/

25
楽天ウェブサービスAPI活用事例
Stay Now! (位置情報 X 楽天トラベルAPI)

http://stay-now.com/

27
EIJIRO’s キッチン (キャラクター X 楽天レシピAPI)

http://rakuten-recipe.heroku.com

28
Singapore Startup Challenge

Photo: Tomoaki INABA

29
JFASH (楽天市場アイテム検索API)

http://www.jfash.com/home

30
Heroku環境構築
http://rakuten-ws.herokuapp.com/
チーム分け
• Gitアカウント持っている方は手を挙げてくださ
い
• 開発経験がある方も手を挙げてください
開発タイム
授業時間外のAPIへの質問はこちらまで
http://rakuten-webservice.tumblr.com/

http://twitter.com/RakutenAPI

http://www.facebook.com/RakutenWebservice

34
成果発表会
評価基準
1

アイディア
新規性、独自性、優れた着眼点であるか

2

完成度

デザイン、システム処理
1週間でどれだけアプリ開発を進めることができたか

36
発表内容(5分間)

1.
2.
3.
4.
5.

チーム名
アプリケーション名
サービス概要
独自のアイディア
アプリデモ
発表順

1. XX
2. XX
3. XX
審査員紹介
• 楽天株式会社 技術理事 吉岡弘隆
• 楽天株式会社 ウェブサービスプラットフォー
ムグループ マネージャー 渡辺哲
結果発表、総評

楽天WEB APIワークショップ@東工大