More Related Content
Similar to Twitter API最新事情 - API Meetup Tokyo #1 #apijp
Similar to Twitter API最新事情 - API Meetup Tokyo #1 #apijp (14)
More from Yusuke Yamamoto
More from Yusuke Yamamoto (20)
Twitter API最新事情 - API Meetup Tokyo #1 #apijp
- 2. • 山本 裕介(@yusuke)!
• 株式会社サムライズム 代表取締役!
• 過去の職場:
自己紹介
2000年∼ 新日鉄情報通信システム!
2002年∼ BEA Systems!
2006年∼ FAST Search & Transfer!
2008年∼ RedHat!
2011年∼ Twitter, Inc.
- 3. • 山本 裕介(@yusuke)!
• 株式会社サムライズム 代表取締役!
• 過去の職場:
自己紹介
2000年∼ 新日鉄情報通信システム!
2002年∼ BEA Systems!
2006年∼ FAST Search & Transfer!
2008年∼ RedHat!
2011年∼ Twitter, Inc.
SOAPに悩まされるSOAPに悩まされるSOAPに悩まされる
- 8. • 山本 裕介(@yusuke)!
• 株式会社サムライズム 代表取締役!
• 過去の職場:
自己紹介
2000年∼ 新日鉄情報通信システム!
2002年∼ BEA Systems!
2006年∼ FAST Search & Transfer!
2008年∼ RedHat!
2011年∼ Twitter, Inc.
- 25. REST API
• プル型
‣ タイムラインの取得
‣ ユーザーのフォロー
‣ ツイート
‣ ダイレクトメッセージの送受信
等々100近くのエンドポイント
- 26. REST API
• REST: REpresentational State Transfer
• HTTPでAPI呼び出し
GET /1.1/statuses/public_timeline.json HTTP/1.1
Host: api.twitter.com
!
!
HTTP/1.1 200 OK
Date: Tue, 08 Feb 2011 07:52:51 GMT
Server: hi
Status: 200 OK
Content-Type: application/json; charset=utf-8
Vary: Accept-Encoding
Connection: close
!
[{"source": "<a href="http://foursquare.com" rel="nofollow">foursquare</a>",
"text": "I'm at IKEA 新三郷店 (新三郷ららシティ2-2-2, 三郷市) [pic]: http://4sq.com/
eOHZdS", ...
"user": {
"description": "Javaエンジニア山本裕介。rn映画、アーチェリー、Java 好きrn#twitter4j
#samurai", "name": "山本 裕介", ...}
},
...]
リクエスト
レスポンスヘッダ
レスポンスボディ
- 27. Twitter のREST API
• 全部で100近くのエンドポイント
• 15の「リソース」に分類されている
• リソース毎にパスが異なる(RESTful)
Timelineリソース
https://api.twitter.com/1.1/statuses/***.json
Userリソース
https://api.twitter.com/1.1/users/***.json
Direct messageリソース
https://api.twitter.com/1.1/direct_messages/
***.json
等
- 49. Site Stream
• エンドポイント(POST)
‣ https://sitestream.twitter.com/1.1/site.json
• パラメータ
‣ follow: 受信するユーザーIDをカンマ区切りで指定、100人まで
!
!
• レスポンス
‣ statusオブジェクトのjson等
follow=1234,5678,91023,45324....
- 51. コントロールストリーム
• Site Stream接続時にコントロール用エンドポ
イントが返る
!
!
• RESTでコントロール用エンドポイントを操作
https://dev.twitter.com/docs/streaming-api/control-streams
{"control": {
“control_uri":"/1.1/site/c/
1_1_54e345d655ee3e8d"
}}
https://sitestream.twitter.com/1.1/site/c/1_1_54e345d655ee3e8d”
- 60. 情報源
• dev.twitter.com - Discussions
!
!
• @TwitterDevJP
!
!
• The Twitter Japan Developer Blog
https://dev.twitter.com/discussions
https://twitter.com/TwitterDevJP
https://blog.twitter.com/ja/developer
- 77. #apijp
Twitter API設計の歴史
• 2006年 Twitter / Twitter APIリリース
• 2009年3月 OAuth対応
• 2009年5月 Streaming APIリリース
• 2009年9月 Twitter Web AJAX化 / 検索APIリリース
• 2012年9月 Twitter API 1.1リリース
• 2013年6月 Twitter API 1.0 / Twitter Anywhere 廃止
• 2014年1月 全面SSL化
- 78. Twitter API設計の歴史
• 2006年 Twitter / Twitter APIリリース
• 2009年3月 OAuth対応
• 2009年5月 Streaming APIリリース
• 2009年9月 Twitter Web AJAX化 / 検索APIリリース
• 2012年9月 Twitter API 1.1リリース
• 2013年6月 Twitter API 1.0 / Twitter Anywhere 廃止
• 2014年1月 全面SSL化
セキュリティ
スケーラビリティ
新機能追従
セキュリティ