コンテンツにスキップ

トリガーを設定する

トリガーは、フローを開始するきっかけです。フローエディタの先頭にあるトリガーノードを選び、種類を設定します。

トリガーの種類(定期実行 / HTTPリクエスト / フォーム)

トリガーは次の3種類から選べます。

スケジュールに従ってフローを自動実行します。実行スケジュール(例: 毎日 23:00)とタイムゾーンを指定します。定期バッチ処理などに使います。

  • 実行スケジュールは cron 形式のテキストでも直接入力できますが、最小実行間隔は1分です。秒単位で実行される cron 式(例: * * * * * *)は保存時にエラーになります。
  • 「サーバー停止中に過ぎた実行」で、Synqlet のサーバーが止まっていた間に実行予定時刻が過ぎてしまった分の扱いを選べます。既定は「まとめて1回実行」(溜まった分をまとめて1回だけ実行)で、「全件補填」(溜まった分を1件ずつすべて実行)も選べます。あわせて「遡って補填する上限」で、どこまで昔の分まで実行するかを分単位で指定できます(空欄は無制限、0 なら遅れた分は実行しない)。→ スケジュールを確認する
  • 実行予定と実行結果は「フロー」→「スケジュール」タブで確認できます。→ スケジュールを確認する

HTTPリクエスト(Webフック受信)

Section titled “HTTPリクエスト(Webフック受信)”

外部システムからの HTTP リクエスト(Webフック)でフローを起動します。トリガーごとに専用の 受信URL が発行され、そのURLにリクエストが届くとフローが実行されます。

HTTPリクエストトリガー(Webフック受信URL)

  • 受信URLは …/api/flows/{flowId}/nodes/{nodeId}/{secret}/fire の形式です。URL に含まれるシークレットは外部に漏らさないよう注意してください。

  • 「Webフックのレスポンスをカスタマイズする」を有効にすると、リクエスト元へ返すレスポンスをスクリプトから制御できます(スクリプトを書く の synqlet:http-request-trigger を参照)。

  • スクリプトが受け取るパラメーターには、リクエストの searchParams / headers / jsonBody / binaryBody に加えて、リクエスト元のIPアドレス ip とポート番号 port が入ります。

    export default async function (parameter: Parameter) {
    console.log(parameter.request.ip); // 例: "203.0.113.1"
    console.log(parameter.request.port); // 例: 54321
    }
  • headers にはリクエスト元が送ったヘッダーだけが渡されます。次のヘッダーは扱えません(スクリプトには渡されないため、Webフックを送る側が独自の用途で使うこともできません)。

    扱えないヘッダー 理由
    cf- fly- x-forwarded- で始まるヘッダー
    via / cdn-loop / x-request-start
    Synqlet の前段(CDN・ホスティング)が付けるヘッダーです。リクエスト元の値に見えて実際は前段の値のもの(x-forwarded-port は常に 443 など)が混ざるため渡していません。リクエスト元のIPアドレスとポート番号は ip / port を使ってください
    x-synqlet- で始まるヘッダー Synqlet が内部的に使うために予約しています

    authorization や traceparent などリクエスト元が送ったヘッダーは、そのまま渡されます。

入力フォームを公開し、フォーム送信をきっかけにフローを実行します。

フォームトリガー

  • 「フォームの型」で入力項目を定義し、「フォーム画面へ」のリンクから公開フォームを開けます。
  • 送信ボタンのラベルなどを設定できます。