Google Contacts(Gmailのアドレス帳) APIについて調べてみた。
アドレス帳をプログラムから動的に変更する事なんて需要あるのかよ…と思った通り、日本語の資料は、ほぼ無し。
リアルタイムで毎日顔写真を変更するとか?
しょうがなく英語のドキュメントを読みながら把握。
https://developers.google.com/google-apps/contacts/v3/
https://developers.google.com/google-apps/contacts/v3/reference
まぎらわしいのは、Gmail APIとは別なんだよね~。
Google I/O 2014の裏でひっそり公開されたGmail APIを触ってみる
Google系のAPIを使う時には、consoleからプロジェクトを生成して、そのなかで各APIの許可・認証の設定をする。
https://console.developers.google.com/project
最初のページは、Googleの認証画面に飛ばす(このWebアプリに、あなたのアドレス帳へアクセスさせていいですか?)
認証済になれば、アクセストークンを取得して好き勝手できる。ここでは一覧表示だけしている。(もちろん新規追加・更新・削除もできる。詳細はドキュメント参照)
問題は、ブラウザ上に表示されるアドレス帳データ全てにアクセス出来るわけではないという事!
テスト用連絡先を作ってみて、試しにAPI経由で出力してみると、わりとデータが抜けている…。
XML(atom)形式で出力されるのですが
なぜか、titleに苗字+名前が結合された状態だったり
フリガナが取得できなかったり
と、よく分からない感じで格納されている!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<entry> <id>http://www.google.com/m8/feeds/contacts/fddcddhdd%40gmail.com/base/69eb47e50c8bf658</id> <updated>2015-07-30T06:36:58.100Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/contact/2008#contact"/> <title type="text">テスト太郎</title> <content type="text">メモのテスト</content> <link rel="http://schemas.google.com/contacts/2008/rel#edit-photo" type="image/*" href="https://www.google.com/m8/feeds/photos/media/fddcddhdd%40gmail.com/69eb47e50c8bf658/aN3y84Mn3kvSxPaCmhXvHw"/> <link rel="http://schemas.google.com/contacts/2008/rel#photo" type="image/*" href="https://www.google.com/m8/feeds/photos/media/fddcddhdd%40gmail.com/69eb47e50c8bf658"/> <link rel="self" type="application/atom+xml" href="https://www.google.com/m8/feeds/contacts/fddcddhdd%40gmail.com/full/69eb47e50c8bf658"/> <link rel="edit" type="application/atom+xml" href="https://www.google.com/m8/feeds/contacts/fddcddhdd%40gmail.com/full/69eb47e50c8bf658/1438238218100001"/> <gd:organization rel="http://schemas.google.com/g/2005#other"> <gd:orgName>テスト株式会社</gd:orgName> <gd:orgTitle>係長</gd:orgTitle> </gd:organization> <gd:email rel="http://schemas.google.com/g/2005#work" address="test@test.co.jp" primary="true"/> <gd:phoneNumber rel="http://schemas.google.com/g/2005#other" uri="tel:+81-3-1234-5678">03-1234-5678</gd:phoneNumber> <gd:postalAddress rel="http://schemas.google.com/g/2005#work">東京都千代田区丸の内1-1-1</gd:postalAddress> </entry> |