8
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

DataSpider RESTアダプタを使ってGoogleカレンダーの予定を取得する。

Posted at

#APIの有効化
Google CalendarのAPIを有効にする必要があります。

  1. Google APIsのライブラリからCalendar APIを選択します。

image

2.「有効にする」をクリックします。

image

#認証情報の作成

  1. 次に「認証情報」に進みます。

image

  1. 「ウェブサーバ(node.js、Tomcatなど)」を選択します。

image

  1. 「ユーザーデータ」もしくは「アプリケーションデータ」を用途に合わせて選択します。

image

  1. 「必要な認証情報」の設定します。名前に任意の値を設定します。

image

5.認証済みのリダイレクトURIに以下の値を設定し、クライアントIDの作成を行います。
http://<DataSpiderServer稼働OSのホスト名またはIPアドレス>:<ポート番号>/dataspider/oauth_2_0

(例)
image
image

6.「ユーザに表示するサービス名」を設定します。

image

7.Client IDが発行されますのでimageをします。

image

8.ダウンロードしたファイルから以下の値をDataSpider RESTアダプタ側に設定していきます。

client_id → クライアントID
client_secret → クライアントシークレット
redirect_uris → リダイレクトURI
auth_uri → 認可エンドポイント
token_uri → トークンエンドポイント

#DataSpider RESTアダプタの設定
1.上記の通りそれぞれ設定します

imageから

2.スコープを設定します。
OAuth 2.0 Scopes for Google APIsからCalendar API, v3の”Scope”をアダプタの”スコープ”に設定

image

image

3.追加パラメータを設定します。

image
4.imageをクリックしてトークンを発行します。
アカウント認証して進んでいくと、リプレッシュトークンが自動設定されます。
image

image

image
以上でOAuth2.0の設定は完了です。
最後に接続確認としてカレンダーから予定を取得します。

#接続確認
0.予定を取得するAPIのパラメータを確認します。
Google Calendar API:Events: list

HTTP request
GET https://www.googleapis.com/calendar/v3/calendars/calendarId/events

1.接続先
グローバルリソースのURLにGoogleのURLを設定します。

https://www.googleapis.com/calendar/v3/calendars/

2.パス
パスにはCalendarID/eventsを設定します。
CalendarIDはカレンダーを所有しているアカウントのメールアドレスでも大丈夫です。

以上で設定は完了ですので、実行してみます。
今回はファイルに出力してみたのですが、結果として以下のようなデータを取得することができました。

image

もちろん出力形式をJSON形式に変更することで後続の処理にも簡単に渡すことができます。

8
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?