LinkedInのAPI公開
ビジネス向けSNSで有名なLinkedInが、外部サイトとの連携のためのAPIを公開しています。
[LinkedIn Developer Network]
http://developer.linkedin.com/index.jspa
LinkedInといえば、OpenSocialの登場時点で賛同を表明しているSNSですので、標準仕様への意識も高いと期待してました。しかも、OpenSocial Enterpriseという点では、最近OpenSocial対応したJIRAと並んで、中心となっていくのかな、と思ってました。
SNSが扱うユーザ情報の取り扱いや表現形式は、すでにPortable Contactsがあります。OpenSocialのPerson & Friends API(RESTful Protocol)がこれに該当します。
[Portable Contacts]
http://www.portablecontacts.net/
今回LinkedInが公開したAPIの中に、ユーザ情報を取り扱うためのProfile APIがあります。また、取得したい項目をどう指定するかは、LinkedIn APIではField Selectorsというドキュメントにまとめられています。
[Profile API]
http://developer.linkedin.com/docs/DOC-1002
[Field Selectors]
http://developer.linkedin.com/docs/DOC-1014
これを見る限り、Portable Contactsとは違う仕様になっているようです。例えば、ユーザの指定方法が、”/people/{guid}/@self”が”/people/id={guid}”だったり、取得項目の指定に関しては、fieldsパラメータではなく、括弧を使った記述が求められます。URLに”(“や”)”が入るのを初めて見た気がします。
認証認可に関してはOAuthが適用されているようです。サポート範囲は、3-legged OAuthのみで、OAuthパラメータはリクエストヘッダにて指定のみ対応、というのが現状の内容です。
何でOpenSocialじゃないの?と疑問に思った人が他にもいて、LinkedInの中の人が返事をしています。
[Relationship between LinkedIn API and OpenSocial.]
http://developer.linkedin.com/message/1278
「確かにOpenSocialはLinkedInのUI上で動作するアプリケーションの構築に使用できるAPIではあるけど、Portable Contactsなどを含めたRESTful APIとかあるし、それだけじゃないんだけどなぁ」と思うんだけど、どうなんでしょうか。