SlideShare ist ein Scribd-Unternehmen logo
1 von 40
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
審査員紹介
• 楽天株式会社 技術理事 吉岡弘隆
• 楽天株式会社 ウェブサービスプラットフォー
ムグループ マネージャー 渡辺哲
結果発表、総評

Weitere ähnliche Inhalte

Andere mochten auch

ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in JapanROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
Rakuten Group, Inc.
 
Devsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニングDevsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニング
Rakuten Group, Inc.
 
スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門
Kenyu Miura
 

Andere mochten auch (20)

インターネットガバナンス徒然2010-2
インターネットガバナンス徒然2010-2インターネットガバナンス徒然2010-2
インターネットガバナンス徒然2010-2
 
Hadoop Conference Japan 2009 #1
Hadoop Conference Japan 2009 #1Hadoop Conference Japan 2009 #1
Hadoop Conference Japan 2009 #1
 
第4回楽天研究開発シンポジウム.開会挨拶
第4回楽天研究開発シンポジウム.開会挨拶第4回楽天研究開発シンポジウム.開会挨拶
第4回楽天研究開発シンポジウム.開会挨拶
 
[Rakuten TechConf2014] [Sendai] Sense of SENS
[Rakuten TechConf2014] [Sendai] Sense of SENS[Rakuten TechConf2014] [Sendai] Sense of SENS
[Rakuten TechConf2014] [Sendai] Sense of SENS
 
ROMA on JRuby at JRubyKaigi 2010
ROMA on JRuby at JRubyKaigi 2010ROMA on JRuby at JRubyKaigi 2010
ROMA on JRuby at JRubyKaigi 2010
 
[RakutenTechConf2013] [C-0] 日本にいたまま英語ペラペラ化!来年は海外カンファレンスでしゃべろう!
[RakutenTechConf2013] [C-0] 日本にいたまま英語ペラペラ化!来年は海外カンファレンスでしゃべろう![RakutenTechConf2013] [C-0] 日本にいたまま英語ペラペラ化!来年は海外カンファレンスでしゃべろう!
[RakutenTechConf2013] [C-0] 日本にいたまま英語ペラペラ化!来年は海外カンファレンスでしゃべろう!
 
プレゼン勉強会 「イイタイコト 革命」Study session on presentation "What you want to say" Revol...
プレゼン勉強会 「イイタイコト 革命」Study session on presentation "What you want to say" Revol...プレゼン勉強会 「イイタイコト 革命」Study session on presentation "What you want to say" Revol...
プレゼン勉強会 「イイタイコト 革命」Study session on presentation "What you want to say" Revol...
 
ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in JapanROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
 
ネットワーク分散型フレームワークConView
ネットワーク分散型フレームワークConViewネットワーク分散型フレームワークConView
ネットワーク分散型フレームワークConView
 
楽天テクノロジーカンファレン2009 基調講演
楽天テクノロジーカンファレン2009 基調講演楽天テクノロジーカンファレン2009 基調講演
楽天テクノロジーカンファレン2009 基調講演
 
Devsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニングDevsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニング
 
Afthon rakuten api_introduce_20130406
Afthon rakuten api_introduce_20130406Afthon rakuten api_introduce_20130406
Afthon rakuten api_introduce_20130406
 
スクラムマスター1年生⇒2年生
スクラムマスター1年生⇒2年生スクラムマスター1年生⇒2年生
スクラムマスター1年生⇒2年生
 
第22回 #TFSUG ちぇんわ祭り - ALM Essentials
第22回 #TFSUG ちぇんわ祭り - ALM Essentials第22回 #TFSUG ちぇんわ祭り - ALM Essentials
第22回 #TFSUG ちぇんわ祭り - ALM Essentials
 
楽天プロジェクトX:基幹DB移設 編
楽天プロジェクトX:基幹DB移設 編楽天プロジェクトX:基幹DB移設 編
楽天プロジェクトX:基幹DB移設 編
 
ROMA のアーキテクチャと社内事例
ROMA のアーキテクチャと社内事例ROMA のアーキテクチャと社内事例
ROMA のアーキテクチャと社内事例
 
楽天エンジニアライフ
楽天エンジニアライフ楽天エンジニアライフ
楽天エンジニアライフ
 
iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流
 
俺の「機能横断的チーム」に近づくためのあれこれ
俺の「機能横断的チーム」に近づくためのあれこれ 俺の「機能横断的チーム」に近づくためのあれこれ
俺の「機能横断的チーム」に近づくためのあれこれ
 
スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門
 

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

#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
Kazuya Sugimoto
 

Ähnlich wie 楽天WEB APIワークショップ@東工大 (20)

20220303_SAP AppGyverとSAP CAPで簡単なアプリを作ってみた~市民開発者とプロ開発者で作業を分担してみた~
20220303_SAP AppGyverとSAP CAPで簡単なアプリを作ってみた~市民開発者とプロ開発者で作業を分担してみた~20220303_SAP AppGyverとSAP CAPで簡単なアプリを作ってみた~市民開発者とプロ開発者で作業を分担してみた~
20220303_SAP AppGyverとSAP CAPで簡単なアプリを作ってみた~市民開発者とプロ開発者で作業を分担してみた~
 
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
 
SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」
SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」
SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」
 
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
 
SharePoint 開発でできること 2019年9月版
SharePoint 開発でできること 2019年9月版SharePoint 開発でできること 2019年9月版
SharePoint 開発でできること 2019年9月版
 
楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa
 
このPHP QAツールがすごい!2019
このPHP QAツールがすごい!2019 このPHP QAツールがすごい!2019
このPHP QAツールがすごい!2019
 
Web開発の 今までとこれから
Web開発の 今までとこれからWeb開発の 今までとこれから
Web開発の 今までとこれから
 
20170420 infoteria apiセミナーupload
20170420 infoteria apiセミナーupload20170420 infoteria apiセミナーupload
20170420 infoteria apiセミナーupload
 
ABAPも進化が止まらない! ABAP RESTful Programming Model
ABAPも進化が止まらない! ABAP RESTful Programming ModelABAPも進化が止まらない! ABAP RESTful Programming Model
ABAPも進化が止まらない! ABAP RESTful Programming Model
 
ブラウザのPerformance APIの話
ブラウザのPerformance APIの話ブラウザのPerformance APIの話
ブラウザのPerformance APIの話
 
AngularJSとバックエンドサービスAppPotで作る業務システムハンズオン
AngularJSとバックエンドサービスAppPotで作る業務システムハンズオンAngularJSとバックエンドサービスAppPotで作る業務システムハンズオン
AngularJSとバックエンドサービスAppPotで作る業務システムハンズオン
 
APIに関するセッション資料
APIに関するセッション資料APIに関するセッション資料
APIに関するセッション資料
 
Api as a product
Api as a productApi as a product
Api as a product
 
APIbank(メディア)からみた国産APIの現実と未来にむけて
APIbank(メディア)からみた国産APIの現実と未来にむけてAPIbank(メディア)からみた国産APIの現実と未来にむけて
APIbank(メディア)からみた国産APIの現実と未来にむけて
 
【MA11】APIビジネスモデルと成功要因(日経ビックデータ発表資料0212)
【MA11】APIビジネスモデルと成功要因(日経ビックデータ発表資料0212)【MA11】APIビジネスモデルと成功要因(日経ビックデータ発表資料0212)
【MA11】APIビジネスモデルと成功要因(日経ビックデータ発表資料0212)
 
多対多のクラウド利用を支えるデータ標準化技術
多対多のクラウド利用を支えるデータ標準化技術 多対多のクラウド利用を支えるデータ標準化技術
多対多のクラウド利用を支えるデータ標準化技術
 
PHP開発者がScalaに入門して苦しんだ話
PHP開発者がScalaに入門して苦しんだ話PHP開発者がScalaに入門して苦しんだ話
PHP開発者がScalaに入門して苦しんだ話
 
マイクロサービスのためのフレームワークGoaのご紹介
マイクロサービスのためのフレームワークGoaのご紹介マイクロサービスのためのフレームワークGoaのご紹介
マイクロサービスのためのフレームワークGoaのご紹介
 
Intelligent Enterprise 実現に向けた拡張開発の必要性 ~ SAP Cloud Platform Extension Factory ~
Intelligent Enterprise 実現に向けた拡張開発の必要性  ~ SAP Cloud Platform Extension Factory ~Intelligent Enterprise 実現に向けた拡張開発の必要性  ~ SAP Cloud Platform Extension Factory ~
Intelligent Enterprise 実現に向けた拡張開発の必要性 ~ SAP Cloud Platform Extension Factory ~
 

Kürzlich hochgeladen

Kürzlich hochgeladen (10)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 

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