まずは動画で確認
必要なもの
https://で始まる、JSON の POST を受け付けるアドレス。ほとんどの自動化ツールで発行できます(例を参照)。- UAT Studio ワークスペースの管理者権限。
Webhook を接続する
フローのアドレスを取得する
まず、お使いのツールで受信側を作成し、そのアドレスをコピーします。何かを作る前にメッセージの中身を見てみたい場合は、webhook.site を開いてください。一時的なアドレスが発行され、送られてきた内容がすべて表示されます。テストデータでのみ使ってください。
UAT Studio で Webhook を追加する
ワークスペースを開いて Connections をクリックし、Add a connection で Webhook を選び、Add をクリックします。続いて次の項目を入力します。
- Webhook address:手順 1 のアドレス。
- Send automatically:
- Only when I click Send on an issue(既定):どの課題を送信するかは管理者が決めます。
- Every new issue and every status change, by itself:すべてがすぐに送信されます。
Save settings をクリックします。Send automatically の選択は、変更した時点で保存されます。

シークレットを追加する(任意、推奨)
メッセージが本当に UAT Studio から送られたものだとフローが判断できるよう、長いランダムなシークレット(8 文字以上、できれば 32 文字以上)を作成し、Secret (optional) に貼り付けて Store token をクリックします。以後、すべてのメッセージに次のヘッダーが付きます。
Authorization: Bearer <シークレット>
正しいヘッダーのないメッセージは、フロー側で拒否するようにしてください。シークレットは暗号化して保存され、読み出すことはできません。置き換えるには新しいものを貼り付けます。
接続をテストする
Test connection をクリックします。UAT Studio は次の内容を送信します。
{ "event": "test", "message": "Test message from UAT Studio" }
200 から 299 までの応答はすべて成功とみなされ、The webhook answered 200 と表示されます。フローがテストイベントをエラーなしで受け付けるか、スキップするようにしてください。
送信のタイミング
| Event | タイミング |
|---|---|
issue.sent | 管理者が課題で Send to Webhook をクリックしたとき。接続が On の間は常に利用できます。 |
issue.created | テスターが新しい課題を報告したとき。Send automatically ですべての新しい課題を送信する設定の場合のみ。 |
issue.status_changed | 課題のステータスが変わったとき(例:Ready for retest や Closed へ)。Send automatically の場合のみ。from と to を含みます。 |
test | Test connection をクリックしたとき。 |
重複として別の課題に統合された課題では、新たな issue.created は送信されません。
送信される内容
Content-Type: application/json の POST です。課題のイベントはすべて同じ形式です。
{
"event": "issue.status_changed",
"project": { "id": "6b1f…", "name": "CRM UAT" },
"issue": {
"id": "a41c…",
"key": "ISS-012",
"title": "Save button greyed out",
"description": "After changing the phone number, Save stays grey.",
"severity": "High",
"priority": "High",
"status": "Ready for retest",
"assignee": "Dev team",
"ticket": "PORTAL-41",
"ticket_url": "https://acme.atlassian.net/browse/PORTAL-41"
},
"test_case": { "num": 4, "title": "Edit a contact", "step": 3 },
"reported_by": "Tess Tester",
"from": "In progress",
"to": "Ready for retest",
"url": "https://app.uat.studio/p/6b1f…/issues"
}
| 項目 | 意味 |
|---|---|
event | issue.sent、issue.created、issue.status_changed、test のいずれか。 |
project | UAT のプロジェクト:ID と名前。 |
issue.key | UAT Studio での番号(例:ISS-012)。後続のメッセージで同じ課題を識別するには issue.id を使います。 |
issue.severity | Critical、High、Medium、Low のいずれか。issue.priority:High、Medium、Low のいずれか。 |
issue.status | UAT Studio でのステータス。New、In progress、Ready for retest、Closed、Rejected のいずれか。 |
issue.ticket | リンクされた Jira または Azure DevOps のチケット。ない場合は null。 |
test_case | 課題が見つかったテストとステップ番号。テスト外の課題では null。issue.sent では、ステップの action と expected(期待結果)も含みます。 |
reported_by | 課題を見つけたテスターの名前。 |
from, to | issue.status_changed の場合のみ:変更前と変更後のステータス。 |
url | UAT Studio のプロジェクトの課題一覧。開くにはサインインが必要です。 |
フィールドは null になることがあり、今後フィールドが追加される可能性もあるため、フローでは未知の項目を無視するようにしてください。スクリーンショットとファイルは送信されず、UAT Studio 内に残ります。
受信側を作成する
Power Automate
- トリガー When an HTTP request is received を使った Instant cloud flow を、Anyone 向けに作成します。
- Request Body JSON Schema で Use sample payload to generate schema をクリックし、上の例を貼り付けます。
eventに対する Condition(例:testと等しくない)を追加し、その後に必要なアクションを追加します。Planner のタスク、Excel の行、メール、SharePoint のアイテムなどです。- フローを保存します。トリガーに HTTP URL が表示されます。これが Webhook アドレスです。
注意:HTTP トリガーは Power Automate のプレミアムコネクタです。Teams チャネルへの投稿には不要なので、Microsoft Teams 接続をお使いください。
Zapier
トリガー Webhooks by Zapier › Catch Hook で Zap を作成し、アドレスをコピーします。UAT Studio で Test connection をクリックしてから課題を 1 件送信し、Zapier にフィールドを認識させます。その後、Slack へのメッセージなど必要なアクションを追加します。
Make
Webhooks › Custom webhook でシナリオを開始し、アドレスをコピーします。UAT Studio から課題を送信する前に Redetermine data structure をクリックします。
自社のサービス
JSON の POST を受け付け、Authorization ヘッダーをシークレットと照合し、すぐに 200 を返して、時間のかかる処理はその後で行います。失敗してもメッセージは再送されないため、受信した内容はログに記録してください。
うまくいかないとき
| 表示される内容 | 対処方法 |
|---|---|
| Webhook が 401 または 403 を返した | フローがメッセージを拒否しています。両側のシークレットを確認するか、フローが誰からでも呼び出せる設定になっているかを確認してください。 |
| Webhook が 404 を返した | アドレスが間違っているか、フローが削除または無効化されています。アドレスをもう一度コピーしてください。 |
| Webhook が 400 または 500 を返した | フローがメッセージを受け付けていません。多くの場合、test イベントや null のフィールドを処理できていません。フローの実行履歴を確認してください。 |
| 新しい課題が何も届かない | Send automatically がすべての新しい課題を送信する設定になっているか、接続が On になっているかを確認してください。そのうえで課題を 1 件手動で送信し、フローの応答を確認してください。 |
| Send to Webhook ボタンがない | このボタンは管理者にだけ、しかも接続が On の場合にだけ表示されます。 |
| 接続がプランに含まれていない | 接続は Team、Business、Partner、Enterprise に含まれ、Project ではアドオンとして利用できます。管理者が Plan & billing からアップグレードできます。 |
それでも解決しない場合は、表示されたメッセージを添えて [email protected] までメールでご連絡ください。シークレットそのものは絶対に送らないでください。
UAT Studio から送信されるもの
- メッセージは HTTPS でのみ送信されます。
- 含まれるのは課題のテキスト、テスト、テスターの名前だけで、ファイルやスクリーンショットは含まれません。これらの情報を預けてよいと組織が認めたサービスにだけ送信してください。
- シークレットは暗号化(AES-256)して保存され、鍵はデータベースとは別に保管されます。誰も読み出すことはできません。
- 接続を Off にするか削除すれば、以後は何も送信されません。
