tab API を使うと tab の情報にプログラムからアクセスできます。
このAPIで例えば、
といったことができます。
もちろん、組み合わせ次第でもっといろいろなことが実現可能です。
tab を利用した魅力的なアプリケーションの作成にぜひトライしてみてください!
RESTful インタフェースで提供され、 JSON フォーマットで応答を返します。
http://tab.do/api/1/
配下に 各種API が用意されています。
http://tab.do/api/1/items/counts.json
/1/
の部分はAPIバージョンで、APIの互換性を表わしています
http://tab.do/api/1/items/:id.json
のように、リソースへのIDが含まれるURLも存在します
:id
の部分がプレースホルダになっており、実際のリクエスト時には適切なパラメータに置き換える必要がありますRESTful APIでは、リソースに対するアクションとしてHTTP標準メソッドを用います。
メソッド | アクション |
---|---|
GET | 存在するリソースを参照します |
POST | リソースを新規に作成します |
PUT | 存在するリソースを更新します |
DELETE | 存在するリソースを削除します |
以下の種類のパラメータが存在します。
型名 | 値の内容 |
---|---|
文字列 | 任意の文字列 |
数値 | 任意の数値 |
真偽値 | true または 1 で真、 false または 0 で偽 |
配列値 | key[]=val1&key[]=val2 の形式を指定すると、keyの値は [ val1, val2 ] になる |
経度 | [-180.0, 180.0) の範囲の数値。WGS84形式 |
緯度 | [-90.0, 90.0) の範囲の数値。WGS84形式 |
今のところ JSON 形式のみ利用可能です。
ステータスコード HTTP 200 OK が返されます。
例えば以下のようなレスポンスが返されます。
{
"counts": {
"total": 12650,
"per_hour": 14
}
}
リクエストがなんらかの理由で失敗した場合はエラー応答が返されます。
失敗理由に対応したステータスコードが返されます。
ステータスコード | 失敗理由 |
---|---|
404 Not Found | APIが存在しない、指定したリソースが存在しない |
403 Forbidden | 指定したリソースへのアクセスが禁止されている |
400 Bad Request | リクエスト方法が間違っている、リクエストパラメータが間違っている、リソースIDの指定が間違っている |
500 Internal Sever Error | サーバ側でなんらかの問題が発生した |
503 Service Unavailable | サーバが一時的に停止している。メンテナンス中など |
本文として以下のようなレスポンスが返されます。
{
"error": "this is an error message."
}
更新系の機能など、事前にユーザの認証が必要となる機能があります。 認証のフローについてはこちらをご参照ください。
なお、ユーザの認証を行なうためにはクライアント情報の発行が必要です。
以下は、tabで利用する用語の説明です。
歴史的な経緯から、一部サービス内の用語とAPI中の表記とが異なっている箇所があります
用語 | API中の表記 | 説明 |
---|---|---|
ユーザ | users | tabにアカウント登録しているユーザの情報 |
アイテム | items | tabに投稿されるコンテンツそのもの |
tab | streams | アイテムを複数まとめるための容れ物 |
コメント | comments | アイテムに対して投稿される情報 |
スポット | places | 緯度経度、名前と住所を持った場所情報 |
エリア | areas | 渋谷、東京、日本、といった一定範囲をカバーする領域 |
Apr 29, 2013
Jan 8, 2013
Aug 8, 2012
Aug 1, 2012
Jul 24, 2012
参照系(GETリクエスト)に限り、外部ドメインからのAjax Requestを受け付けるよう修正
Jun 23, 2012
初版 参照系APIのみ公開