Skip to content

Receive a webhook event

POST

EthicsPortal sends a signed POST request to your HTTPS endpoint when a report is created or changes, or when a deadline is close or has passed. The destination must be public. Verify HMAC-SHA256(timestamp + “.” + raw request body), timestamp freshness and event ID. At-least-once delivery; no ordering guarantee.

X-EthicsPortal-Event-Id
required
string
X-EthicsPortal-Signature
required
string

t=<Unix seconds>,v1=<hex HMAC-SHA256>

Media typeapplication/json
One of:
Report lifecycle event
object
id
required
string
type
required
string
Allowed values: report.created report.acknowledged report.feedback_given report.closed report.reopened report.assignment_changed
created_at
required
string format: date-time
data
required
object
id
required
string
organization_id
required
string
status
required
string
Allowed values: received acknowledged feedback_given closed
assigned
required
boolean
created_at
required
string format: date-time
acknowledged_at
required
string | null format: date-time
feedback_given_at
required
string | null format: date-time
closed_at
required
string | null format: date-time
acknowledgment_due_at
required
string format: date-time
feedback_due_at
required
string format: date-time
acknowledgment_overdue
required
boolean
feedback_overdue
required
boolean

Receipt accepted. Process asynchronously and deduplicate by event ID.

Non-2xx responses are retried; redirects are never followed.