変数・Storage・テーブルの違いと使い分け

このページでわかること

workrunには「変数」「Storage」「テーブル」という、値を保存・再利用するための機能があります。ここでは、3つの機能の違いと、APIキーなどの認証情報を管理する際の保存先を説明します。
各機能の具体的な操作方法は、末尾の関連ヘルプページをご確認ください。

変数・Storage・テーブルの違い

変数:複数のワークフローで使う共通設定値

Webhook URLや共通の通知先など、通常は固定して利用し、必要に応じて管理画面から変更する値に適しています。
  • 保存するデータの例: Webhook URL、APIのベースURL、共通の通知先
  • 管理方法: 管理画面で変数名と値を登録し、値を編集する
  • フローでの利用: 登録した変数を参照する

Storage:フローの処理に応じて保存・更新する値

前回処理日時や処理件数など、ワークフローの処理に応じて値を保存・更新する場合に適しています。
  • 保存するデータの例: 前回処理日時、処理件数のカウンター、処理状態
  • 管理方法: Storageピースでキーと値を保存・取得・削除する
  • 保存範囲: RUN(1回の実行内)、FLOW(同じフローの実行間)、COLLECTION(同じプロジェクト内の複数フロー)
StorageのCOLLECTIONスコープでも複数フローで値を共有できます。ただし、管理画面で設定値を管理する変数とは異なり、Storageピースで値を保存・取得して利用します。

テーブル:複数項目を持つデータの一覧管理

行と列を使ってデータをまとめて管理する場合に適しています。
  • 保存するデータの例: 顧客情報、申請情報、外部サービスとのID・コード変換マスタ
  • 管理方法: テーブルの管理画面でデータを編集し、Tablesピースでレコードを操作する
  • フローでの利用: 条件に応じたレコードの取得・追加・更新などに利用する

迷ったときの選び方

  • 複数フローで同じWebhook URLを使いたい: 変数
  • 前回の実行日時を次回実行へ引き継ぎたい: Storage(FLOWスコープ)
  • フローで更新する処理状態を複数フローで共有したい: Storage(COLLECTIONスコープ)
  • 業種名と連携先IDの対応表を管理したい: テーブル
共通で利用する値かどうかだけでなく、値を管理画面から変更するか、フローの処理によって更新するか、行と列で管理するかを基準に選んでください。

APIキーなどの認証情報を保存する場合

APIキーやアクセストークンなどの認証情報は、通常の設定値とは区別して管理してください。

1. 対応する接続アプリで管理する(推奨)

利用したいサービスに対応する接続アプリがあり、その認証方式を利用できる場合は、原則として接続アプリで認証情報を管理してください。

2. 接続アプリで管理できない場合は変数を利用する

対応する接続アプリで認証情報を管理できない場合は、変数機能を利用して保存できます。
変数の値は暗号化して保存され、workrunの変数管理画面では登録後の値を表示しません。フロー実行時には必要な値が復号され、ピースから利用されます。
⚠️
変数が暗号化されていても、利用方法によってはピースの出力やエラーログなどに認証情報が含まれる可能性があります。認証情報を出力・表示しないよう、フローの設定と実行結果をご確認ください。

3. 認証情報の保存先として推奨しない方法

  • StorageにAPIキーなどを保存する
  • テーブルにAPIキーなどを保存する
  • ワークフローの入力欄にAPIキーなどの実際の値を直接記載する
これらは、認証情報の管理方法として推奨していません。通常データの保存と、認証情報の管理は分けて考えてください。

関連ヘルプページ