POST /v1/webhook/situation
Handle situation-monitor webhook trigger (situation.created)

Request Body required

Situation event

application/json
One of:
Option 1
Option 2
situation object
cluster_id string
confidence_tier string
event_at string
event_type string
id string
impact integer
schedule_kind string
scope string
tickers object[]
Outer envelope fields (worker `WebhookPayload` shape).
Array of:
asset_class string
symbol string

Responses

200 OK
application/json
action string
"triggered", "resumed", "skipped"
eventId string
Webhook event ID for audit
reason string
If skipped, the reason
runIds string[]
Multiple if fan-out (platform) or single (generic)
Array of:
400 Bad Request
401 Unauthorized
curl -X POST 'https://api.example.com/v1/webhook/situation' \  -H 'Authorization: Bearer YOUR_API_TOKEN' \  -H 'Content-Type: application/json' \  -d '{}'
const response = await fetch('https://api.example.com/v1/webhook/situation', {  method: 'POST',  headers: {      "Authorization": "Bearer YOUR_API_TOKEN",      "Content-Type": "application/json"  },  body: JSON.stringify({})});const data = await response.json();console.log(data);
import requestsheaders = {    'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.post('https://api.example.com/v1/webhook/situation', headers=headers, json={})print(response.json())
package mainimport (	"fmt"	"io"	"net/http"	"strings")func main() {	body := strings.NewReader(`{}`)	req, _ := http.NewRequest("POST", "https://api.example.com/v1/webhook/situation", body)	req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")	req.Header.Set("Content-Type", "application/json")	resp, _ := http.DefaultClient.Do(req)	defer resp.Body.Close()	result, _ := io.ReadAll(resp.Body)	fmt.Println(string(result))}
200 Response
{  "action": "<string>",  "eventId": "<string>",  "reason": "<string>",  "runIds": [    "<string>"  ]}