---
title: "POST /v1/webhook/situation"
method: POST
path: "/v1/webhook/situation"
---

# POST /v1/webhook/situation

`POST /v1/webhook/situation`

Handle situation-monitor webhook trigger (situation.created)

## Request body

- union
  - object
  - SituationMonitorPayload
    - `situation` SituationDetail
      - `asset_class` string
      - `cluster_id` string
      - `confidence` number
      - `confidence_tier` string
      - `event_at` string
      - `event_subtype` string
      - `event_type` string
      - `id` string
      - `impact` integer
      - `observed_at` string
      - `schedule_kind` string
      - `scope` string
      - `sentiment_label` string
      - `sentiment_score` number
      - `summary` string — Summary is the classifier's one-sentence headline for the event — the catalyst, actor, and key numbers. This is the actual news text.
    - `sources` SituationSource[] — Source articles/posts behind the situation (situation_sources rows). Optional — absent on older worker builds that don't send it.
      - `observed_at` string
      - `source_id` string
      - `url` string
    - `tickers` SituationTicker[] — Outer envelope fields (worker `WebhookPayload` shape).
      - `asset_class` string
      - `symbol` string

## Response `200`

OK

- IntegrationResult
  - `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)

## Other responses

- `400` — Bad Request
- `401` — Unauthorized

---

[API](https://skmtc.dev/b3os/apis/b3os-workflow-api.md) · [All operations](https://skmtc.dev/b3os/apis/b3os-workflow-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/b3os/b3os-workflow-api/revisions/a8c7af3c66a1/schema)
