2016-05-09

bit.lyとGoogle URL ShortenerのAPI叩いてみた

今更ながらURL短縮サービスのbit.lyGoogle URL ShortenerのAPIを叩いてみましたーということで備忘録

bit.lyのURL短縮のAPIを叩く

認証に関してはOAuth2.0のAuthorization Code Grant、Resource Owner Credentials Grantsが利用可能でBasic認証にも対応してます。第三者に利用させないのであれば確認用のaccess_tokenを発行して試すことも可能。

Basic認証だとこんな感じ

$ curl -i -X POST \
-H "Authorization:Basic {base64encode(username:password)}" \
'https://api-ssl.bitly.com/oauth/access_token'

レスポンスはtext/plain形式で返されます。

ここで取得したアクセストークンを使って、bit.lyのAPIを叩くことができます。URL短縮のAPIは以下の通り。

$ curl -i -X GET \
'https://api-ssl.bitly.com/v3/shorten?access_token={access_token}&longUrl=http%3A%2F%2Ffreedom-man.com%2Fblog%2F'

レスポンスはこんな感じ↓

{
  "status_code": 200,
  "status_txt": "OK",
  "data": {
    "long_url": "http://freedom-man.com/blog/",
    "url": "http://bit.ly/1OcGpUh",
    "hash": "1OcGpUh",
    "global_hash": "1lIyJkY",
    "new_hash": 0
  }
}

Google URL ShortenerのAPIを叩く

OAuth2.0で取得したアクセストークンを利用する方法とAPIキーを使う方法があります。今回はAPIキーを利用する方法で試してみます。

事前にやることは以下の2つです

APIキーの発行はこんな感じで↓

google_create_apikey1

google_create_apikey2

google_create_apikey3

取得したAPIキーを使って以下のようにしてAPIを叩きます。

$ curl -i -X POST \
   -H "Content-Type:application/json" \
   -d \
'{"longUrl": "http://freedom-man.com/blog"}' \
 'https://www.googleapis.com/urlshortener/v1/url?key={API_KEY}'

レスポンスはこんな感じ↓

{
  "kind": "urlshortener#url",
  "id": "http://goo.gl/A3Rm0Y",
  "longUrl": "http://freedom-man.com/blog"
}

参考URL

このエントリーをはてなブックマークに追加