ImpasというAPIサービスを作った

個人でささやかにWebサービスを運営されている方向けにImpasというAPIサービスを作りました。

このサービスは「twitter上でのツイート数、facebook上でのいいね数、はてなブックマークでのブックマーク数で簡単にランキングを生成する」ことができるAPIサービスです。
以下、概要図。

About of Impas

Webアプリケーション開発者はImpasのAPIを使ってImpasにランキング対象にしたい(各種ソーシャルパラメータを計測したいURL)を登録することで定期的にImpasがURLをクロールしてパラメータを取得して記録します。その記録を利用してImpasはランキングを生成するので、再びWebアプリケーション開発者はAPIを通じてランキングを取得することができます。
RubyクライアントをGem(impas-client)で用意していますので、以下の様な形で利用することができます。

URLの登録例

# クライアントの設定
require 'impas-client'
client = Impas::Client.new()

# URLを集計対象へ追加
IMPAS_GRP_KEY = ******
client.add_url(                   
  IMPAS_GRP_KEY,
  "http://www.youtube.com/watch?v=2HQkugdXyHY"
)

# ランキング取得
fbRank = client.ranking IMPAS_GRP_KEY, "fb"
twRank = client.ranking IMPAS_GRP_KEY, "twitter"
hatenaRank = client.ranking IMPAS_GRP_KEY, "hatena"

あるいは、以下の様に直接POSTやGETリクエストでURLの登録やランキング情報の取得もできます。以下ははてなブックマークのトップ10ランキングを取得する場合。

http://impas-hideack.sqale.jp/api/ranking/IMPAS_GRP_KEY/hatena/10

ランキングはJSONで取得されます。

{
    "result": "ok",
    "explain": "",
    "description": {
        "ranking": [
            {
                "callcount": 16,
                "fb": 0,
                "hatena": 809,
                "tw": 17643,
                "url": "http://www.youtube.com/watch?v=MGt25mv4-2Q"
            },
            {
                "callcount": 12,
                "fb": 0,
                "hatena": 368,
                "tw": 10591,
                "url": "http://www.youtube.com/watch?v=cfpX8lkaSdk"
            },

ドキュメント等々不足している感はありますが、もし興味がある方が居られたら是非ご利用くださいませ。

ロゴ

REMPチームでお馴染み(?)の@があっという間にロゴ画像を作ってくれましたが、何故か大王イカなのかは昨今の話題からお察しください。*1
あと、サービス名の"Impas"はドラゴンクエストの魔法のインパスから拝借しました。

Impas

*1:あっという間に作ってくれたのですが、それでこのクオリティというのがすごい…