0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【メモ】HTTPリクエストだけでGoogle ToDoリストにタスクを追加する

Posted at

この記事では、AIアプリケーション開発プラットフォームDifyの「HTTPリクエスト」ノードを使い、プログラミングコードを一切書かずにGoogle ToDoリスト (Google Tasks) にタスクを追加する方法を解説します。

この方法では、2つのHTTPリクエストノードを連携させます。最初のノードで認証に必要な「アクセストークン」を取得し、2つ目のノードでそのトークンを使ってタスクを追加する、という流れです。

パート1: 認証情報の取得(初回のみの準備)

このパートは、APIを利用するための「鍵」を取得する作業です。一度だけ行えば、その後は繰り返し利用できます。

ステップ1: Google Cloudでの認証情報作成

Google Cloudプロジェクトの準備:

Google Cloud Consoleにアクセスし、プロジェクトを新規作成するか、既存のものを選択します。

Google Tasks APIの有効化:

メニューから「APIとサービス」>「ライブラリ」を選択します。

「Google Tasks API」を検索し、「有効にする」をクリックします。

OAuth同意画面の設定:

「APIとサービス」>「OAuth同意画面」に移動します。

User Typeで「外部」を選び、アプリ名、メールアドレスなどを入力します。

「スコープ」の画面は何もせず次に進みます。

「テストユーザー」の画面で「+ ADD USERS」をクリックし、ご自身のGoogleアカウントのメールアドレス(ログインに使うもの)を追加して保存します。

クライアントIDとシークレットの発行:

「APIとサービス」>「認証情報」に移動します。

「+ 認証情報を作成」>「OAuthクライアントID」を選択します。

アプリケーションの種類で「ウェブアプリケーション」を選択します。

「承認済みのリダイレクト URI」に https://developers.google.com/oauthplayground を追加します。

「作成」をクリックすると、クライアントIDとクライアントシークレットが表示されます。これらを必ずコピーして安全な場所に保管してください。

ステップ2: リフレッシュトークンの取得

次に、有効期限のない「リフレッシュトークン」を取得します。

OAuth Playgroundの設定:

Google OAuth Playground にアクセスします。

右上の歯車アイコン⚙️をクリックし、「Use your own OAuth credentials」にチェックを入れ、ステップ1で取得したクライアントIDとクライアントシークレットを貼り付けます。

APIの承認:

左側の「Step 1」の入力欄に、以下のスコープを貼り付けます。

https://www.googleapis.com/auth/tasks
「Authorize APIs」ボタンをクリックし、表示される画面でご自身のGoogleアカウントを選択し、アクセスを許可します。

トークンの交換:

「Step 2」の画面に移動したら、「Exchange authorization code for tokens」ボタンをクリックします。

右側に表示される情報の中から、refresh_token の値をコピーします。これが最も重要な鍵です。

タスクを追加するノードの作成
次に、ステップ1で取得したアクセストークンを使って、実際にタスクを追加するノードを作成します。

ワークフローで、get_token ノードの後にもう一つ**「HTTPリクエスト」**ノードを追加し、add_taskなどと名付けます。

ノードを以下のように設定します。

HTTPメソッド: POST

API URL: https://tasks.googleapis.com/tasks/v1/lists/{{tasklist_id}}/tasks

{{tasklist_id}} の部分は、後でワークフロー実行時に入力する変数です。

💡 tasklist_idの調べ方: ブラウザでGoogle ToDoリストを開き、タスクを追加したいリストを選択した際のURL末尾にある英数字の羅列がIDです。

Headers:

Authorization: Bearer {{get_token.access_token}}

{{get_token.access_token}} の部分は、ステップ1のノード (get_token) の出力 (access_token) を参照しています。

Content-Type: application/json

Body: json を選択し、以下の内容を貼り付けます。

JSON

{
"title": "{{task_title}}"
}
{{task_title}} の部分も、ワークフロー実行時に入力する変数です。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?