【Jinba Flow】カレンダー同期ツールの使い方

【Jinba Flow】カレンダー同期ツールの使い方

Jinba Flow を使っていると、公開されているテンプレートを自分の環境で動かしたいけど、どうすればいいんだろう?と思ったことはありませんか?

この記事では、公開済みテンプレートを Fork(複製)して自分の Jinba Flow 環境で動かす方法を、実際のワークフローを例にわかりやすく紹介します。

今回のサンプルは、

「複数の Google カレンダーを自動で同期するフロー」

をテンプレートとして公開したものです。unknown nodeそのテンプレを、自分の環境に持ってきて使う流れを見ていきましょう。

Jinba Flow のテンプレとは?

Jinba Flow では、作成したワークフローをテンプレート化して公開できます。unknown node公開されたテンプレートは、他のユーザーが Fork(フォーク)して自分の環境にコピーして使うことができます。

Fork とは、テンプレートを自分の環境に複製することを指します。unknown node複製後は、そのテンプレートを自由に編集・実行できます。unknown nodeもちろん、元のテンプレには一切影響しません。

STEP 0:事前準備

テンプレートをForkして動かす前に、以下の3点を準備しておきましょう。

  • 同期したい Google カレンダーの「お互い編集できる権限」
  •  Jinba Flow に Google Calendar の OAuth(シークレット)を登録済み
unknown node

▼ まずは「同期対象のカレンダー」を整理しよう

今回の同期ツールは 複数カレンダーを対等に扱う前提で動きます。unknown nodeそのため、まずは紙やメモに次のような形で整理しておくのがおすすめです。

  • 個人用のカレンダー
  • 仕事用のカレンダー
  • その他、同期したいカレンダー(必要な場合)

アカウントカレンダー例unknown nodeunknown node のカレンダーunknown nodeunknown node のカレンダー

この同期対象となるカレンダーすべてに、後の手順で権限付与を行います。

unknown node▼ カレンダーを共有し、編集権限を付与する

ここから、Google カレンダー側で操作していきます。

以下は、例として「個人アカウント → 仕事アカウント」に編集権限を付ける場合の手順です。unknown node(逆方向も同じ手順で実施します)

① Google カレンダーを開き、対象カレンダーの設定画面に進む

  1. Google カレンダーを開く
  2. 左側「マイカレンダー」一覧にある、同期対象のカレンダーにカーソルを合わせる
  3. 「︙」 → [設定と共有] をクリック

unknown node② 「特定のユーザーと共有」から相手のアカウントを追加

設定画面を下にスクロールすると

特定のユーザーと共有

があります。unknown nodeここで

  • 仕事用アカウントのメールアドレスunknown nodeを追加し、権限を必ず

「予定の変更権限(変更および共有の管理)」

に設定します。

③ 必ず “両方向(相互) に権限付与する

今回の同期は双方向です。

そのため、以下のように すべての組み合わせで編集権限が必要 です:

  • 個人 → 仕事
  • 仕事 → 個人

どれか一つでも抜けていると、

  • 一方的なコピー
  • 削除されない片方の予定
  • 編集が反映されないunknown nodeといった不具合が起きます。

▼ Jinba Flow に Google カレンダーの OAuth を登録

複数の Google カレンダーを同期するツールを使う場合、unknown nodeGoogle カレンダーの OAuth(認証情報)を Jinba に登録しておくことが必須 です。

これを設定しておかないと、

  • 予定の取得ができない
  • イベントの作成/更新ができない
  • フローの実行時に認証エラーが出るunknown nodeといった問題が起きてしまいます。
unknown node

▼ Jinba Flow の “シークレット” を開く

  1. Jinba Flow の左側メニューから シークレット をクリック
  2. “新しいシークレット” →Google Calendarを選ぶunknown nodeシークレットの名前は、メールアドレスの違いが分かるように設定してあげるのがおすすめです。
unknown node

▼ OAuth の認証画面へ → Google アカウントでログイン

「接続する」ボタンを押すと、unknown nodeGoogle の認証画面が開きます。

ここで、unknown node“今回同期したいGoogle Calendarのアカウント”unknown nodeでログインしてください。

unknown node

▼ 認証完了! Jinba がアクセストークンを保持する

認証が完了すると、 Jinba Flow のワークフロー内でunknown nodeGoogle カレンダーの読み取り・書き込みができるようになります。

unknown node

▼ ここまでが「同期ツールを作るための事前準備」

この時点で、以下がそろいました:

  • カレンダー同士に相互編集権限を付与(STEP1)
  • Jinba に Google Calendar OAuth が登録(STEP1.5)

ここまで終わると、unknown nodeようやく Jinba Flowで今回のテンプレートを使うための準備が完了しました。

▼ よくあるつまずき:カレンダーが「マイカレンダー」に表示されない

ケース①:共有招待メールを承認していない

Google カレンダーは、共有されても メールで承認しないと追加されません。

Gmail に届く以下のメールを確認してください:

「○○さんがあなたとカレンダーを共有しました」

メール内の [このカレンダーを追加] を押すと追加されます。

unknown node

 ケース②:「他のカレンダー」にあるがチェックが外れている

共有されたカレンダーは「他のカレンダー」に分類されることがあります。

  • 左メニューの「他のカレンダー」を展開
  • チェックを ON にする

ことで表示されます。

unknown node

 ケース③:権限が「閲覧のみ」になっている

閲覧オンリーでは同期は動作しません。unknown node必ず 「予定の変更権限」 に変更してください。

STEP 1:テンプレートを開く

ここまでは、設定部分の準備を行いました。unknown nodeここからは、実際のワークフローの調整を行います。

Jinba Flow のホーム画面には、公式や他ユーザーが公開したテンプレートが一覧で並んでいます。今回使うのは「Google カレンダー同期」テンプレです。

テンプレート名をクリックして詳細ページを開き、右上の フォークボタンを押します。unknown nodeこれで、自分のワークスペースにそのテンプレートがコピーされます。

STEP 2:Forkしたテンプレを確認

「このテンプレを使う」を押すと、自分の Jinba Flow 環境にテンプレートが複製されます。

unknown node

Fork後は、あなた専用のフローとして自由に編集・保存・実行が可能です。unknown node元のテンプレとは独立して動作します。

unknown node

STEP 3:シークレットを登録する

このテンプレは、Google カレンダーの API にアクセスするために OAuth 認証 を使っています。unknown nodeそのため、Jinba Flow に「Google Calendar のシークレット」を登録する必要があります。

unknown node

STEP 4:設定エリアを自分の環境に変更する

Forkしたテンプレート内には、以下のような「設定エリア」があります。unknown node(Pythonコードのコメントでまとまっています)

ここでは以下のように設定します。

  • CALENDAR_LIST:同期したいカレンダーのID(Gmailアドレス)を入れる
  • SYNC_DAYS:何日先まで同期するか(例:14なら2週間先まで)
  • BIDIRECTIONAL_DELETE:削除も双方向で反映するか(最初はFalseでもOK)

unknown node

STEP 5:ワークフローを実行してみよう

設定ができたら、右上の [実行する] ボタンを押してみましょう。unknown nodeJinba Flow がフローを順に実行し、Googleカレンダー間で予定を同期します。

unknown node

カレンダー A に予定を追加して実行

  • カレンダー A(個人用)に再度テスト用イベントを登録
  • フローを実行

実行後にカレンダー B を見ると──

A に入れた予定が、B にも自動でコピーされている

のが分かります。

ここでようやく、

  • Google カレンダーとの接続
  • 予定取得
  • 新規イベント作成

といった基本の流れが 「最後まで通る」 状態になったことが確認できました。

unknown node

削除したときに、ちゃんと両方のカレンダーから消えるか確認する

コピーがうまくいったところで、次は「削除の挙動」を検証します。片方のカレンダーで予定を削除したら、もう片方からもちゃんと削除させます。

  • コピー先(子)だけ消した場合
  • 元のカレンダー(親)だけ消した場合

の2パターンを実際に試してみました。

unknown node

コピー先のカレンダーだけ削除してみる

まずは、コピーされた側だけ削除したらどうなるか を確認します。

手順

  1. カレンダーAでテスト用の予定を1件作成
  2. フローを実行し、カレンダーBにコピーされていることを確認
  3. カレンダーB側の予定(コピーされた方)だけ手動で削除
  4. もう一度フローを実行

  • 実行前:Aに予定あり / Bにもコピー済み

結果

フロー実行後にカレンダーAを見ると──

A側の元の予定も自動的に削除されていました。

unknown node

元のカレンダーだけ削除してみる

次に、逆パターンも確認します。

「元の予定(親)だけ消したら、コピー側はどうなる?」

手順

  1. カレンダーAに予定を1件作成
  2. フローを実行し、カレンダーBにコピー

3.カレンダーA側の元の予定だけ削除

4.フローを再実行

unknown node結果unknown node再度フローを実行すると、unknown nodeカレンダーB側に残っていた予定も自動で削除されました。

unknown node

まとめ:削除は「どちら側で消しても、もう片方に伝わる」

この検証で分かったのは、

  • コピー先だけ消した場合 → 次の同期で元の予定も自動的に削除される
  • 元だけ消した場合 → 次の同期でコピーされた側も自動的に削除される

ということです。

つまり、いまのフローは

「どっちのカレンダーから消しても、もう片方にもちゃんと削除が伝わる」

という挙動になっています。

ここまで確認がとれると、unknown node実際の運用でもかなり安心して使える同期ツールになります。

STEP 6:スケジュール実行を設定(自動化)

動作確認ができたら、フローを自動で回す設定をします。

  1. 作成したツールの上部の[API&スケジュール] をクリック
  2. [スケジュールステータス] をプッシュ
  3. [スケージュール編集] から好きなタイミングを設定

💡ヒント:unknown node最低限必要な頻度にしましょう。分単位等で、高頻度に回すとクレジットを多く消費してしまいます。

unknown node

STEP 7:Forkしたテンプレをカスタマイズ

Forkしたテンプレートは自分専用のものなので、自由にアレンジ可能です。

たとえば:

  • 同期対象カレンダーを増減する
  • 双方向削除をOFFにして安全運用する
  • SYNC_DAYS を延ばして1年先まで同期する
  • Slack通知など別サービスと組み合わせる

Fork後は、どんどん自分の業務に合わせて最適化していきましょう。

unknown node

まとめ

Jinba Flow のテンプレートを使えば、誰かが作った便利なワークフローを自分の環境でそのまま再現できます。

  • ホーム画面で使いたいテンプレを fork
  • 設定エリアとシークレットを自分用に変更
  • 実行 → 動作確認
  • スケジュール設定で完全自動化

一度 Forkして設定すれば、あとは放っておくだけで自動で同期。unknown node複数アカウント運用のストレスが一気に減らすことができます。

unknown node

関連リンク

今回参考にした記事はこちらです:

  • unknown node
  • unknown node
  • unknown node

ワークフローはこちらからunknown nodeunknown node

ユーザー登録は無料で、登録後すぐにご利用いただけます。unknown node今回ご紹介したワークフローも、ユーザー登録完了後、すぐにお使いいただけます。

Jinba Flowはこちらから

  • unknown node

ユーザー登録は無料で、登録後すぐにご利用いただけます。unknown node今回ご紹介したワークフローも、ユーザー登録完了後、すぐにお使いいただけます。

お問い合わせはこちら

unknown node

企業での導入をご検討の方や、サービスの詳細説明をご希望の方、「このような業務の自動化は可能か?」といったご相談がございましたら、下記フォームよりお気軽にお問い合わせください。unknown nodeまた、機能追加などのご意見・ご要望もお待ちしております。unknown node

人馬一体のワークフロー構築を体験せよ

エンタープライズ組織を支えるAI基盤

無料で始める