Skip to main content
GET
Get a single governance signal by ID

Authorizations

Authorization
string
header
required

Supabase JWT token in Authorization: Bearer header

Path Parameters

signal_id
string
required

Governance signal ID (gs-{12-hex}).

Pattern: ^gs-[0-9a-f]{12}$

Response

Governance signal.

A governance signal row — operator-actionable observation per ADR-048.

id
string
required
Pattern: ^gs-[0-9a-f]{12}$
scope
enum<string>
required

Scope at which the signal is produced and routed (ADR-048 §1).

Available options:
platform,
org,
team,
agent
scope_id
string
required
source
enum<string>
required

Source detector for the signal. Closed enum per ADR-048 §1. network.threat_level.changed added in migration 234.

Available options:
sideband.drift,
sideband.coherence,
sideband.fault_line,
sideband.fleet,
network.threat_level.changed
pattern_type
string
required

Free-form per source.

severity
enum<string>
required
Available options:
info,
warn,
high,
critical
detected_at
string<date-time>
required
detected_by
string
required
org_id
string
required
agent_ids
string[]
required
detail
object
required
source_ref
object
required
status
enum<string>
required
Available options:
open,
acknowledged,
resolved,
dismissed,
expired
notification_state
object
required

Per-channel dispatch state populated by the notification dispatcher.

created_at
string<date-time>
required
updated_at
string<date-time>
required
team_id
string<uuid> | null
acknowledged_by
string<uuid> | null
acknowledged_at
string<date-time> | null
acknowledged_actor_role
enum<string> | null

Audit-actor role per ADR-046.

Available options:
platform_admin,
org_owner,
org_admin,
team_admin,
member,
system
resolution_status
enum<string> | null
Available options:
action_taken,
wont_fix,
duplicate,
false_positive,
self_resolved
action_taken
string | null
resolved_by
string<uuid> | null
resolved_at
string<date-time> | null
expires_at
string<date-time> | null
webhook_delivery_id
string<uuid> | null