質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Q&A

0回答

484閲覧

Google Calendar APIのfreebusy

yusuke9

総合スコア6

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

0グッド

1クリップ

投稿2019/01/11 05:46

編集2019/01/11 05:55

よろしくおねがいします。
記載が不足している部分があったらご指摘ください。

前提・実現したいこと

Google Calendar APIのfreebusyを利用して、
Google Calendarを参照し、予定の有無を確認したい。

発生している問題・エラーメッセージ

Responseのbodyにbusyが無い。

■responseのbody => {"kind"=>"calendar#freeBusy", "timeMin"=>"2019-01-11T02:00:00.000Z", "timeMax"=>"2019-01-11T11:00:00.000Z"} ↑ parseしてます。ステータスは200です。 Googleのリファレンスや、ググった感じだと、calendar-idを指定すると予定があってもなくても、 bodyにbusy-keyが入ってきてくれると思われます。。

該当のソースコード

request body ※railsのapi-clientを利用しています。

post( "https://www.googleapis.com/calendar/v3/freeBusy", {body: JSON.dump({timeMin: "2019-01-11T11:00:00+09:00", timeMax: "2019-01-11T20:00:00+09:00", timeZone: "Asia/Tokyo", groupExpansionMax: 5, calendarExpansionMax: 5, itmes: [{ id: 'xxxx.xxxx@gmail.com' },{ id: 'xxxx.xxxx@gmail.com' }]}), headers: {'Content-Type' => 'application/json'}}

試したこと

itemsの指定を外して試行
結果)itmesの指定を行ったときと同じresponseだった。itemsの指定がNGな可能性が高い?
※itemsのidはメールアドレスを指定しています。

freebusy以外のapiを試行
calendarやlistのgetや、insert、deleteは問題なく行える。。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

papinianus

2019/01/11 06:07 編集

カレンダのidはメール(グループは別)だと思いますが、とりあえずitemsの指定に疑いがあるのでしたら、こちら(https://developers.google.com/calendar/v3/reference/freebusy/query)を開いて右に出るエリアで実行してみてはいかがでしょうか? ↑で試すかぎり、確かにidを指定すればid.busyは予定がなくても空配列が返されてました。
yusuke9

2019/01/11 07:06

ありがとうございます。 ご教示いただいたとおり、試行してみました。 同じ様に指定した場合、busyは返ってきますね。。。 { "kind": "calendar#freeBusy", "timeMin": "2019-01-12T07:00:00.000Z", "timeMax": "2019-01-12T08:00:00.000Z", "calendars": { "aaaaaa@gmail.com": { "busy": [] } } } 指定に問題がないとするとapi-clientに問題がある可能性がありますね。。。
papinianus

2019/01/11 07:20 編集

そうですね。可能性として、値である配列が空なのでキー自体を消すっていうのは、世の中のプログラムとしては、ある動きだなとは思いました。ただ、このクライアントがそういうことをしそうな資料まで行き着けませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問