data object.
The event type (e.g.
post.approval.requested).Event-specific payload for this webhook.
Show Data object parameters
Show Data object parameters
Approval request context for the post.
Show Approval object parameters
Show Approval object parameters
Post being approved. Contains
id, title, and url.Campaign the post belongs to, if any. Contains
id, name, startDate, and endDate.Workspace the post belongs to. Contains
id, slug, and name.New approval requests created by this action. Each item has
id, isBlocking, message, dueDate, createdAt, status (Requested), user (approver), and requestedBy (who asked for approval). User objects contain id, firstName, lastName, and email. Dates are ISO 8601 strings where present.Approvals already on the post before this request. Each item is either a requested approval (
status Requested) or an approved one (status Approved). Approved items include approvedAt and approvedBy.ISO 8601 timestamp when the webhook event was created.
{
"type": "post.approval.requested",
"data": {
"approval": {
"post": {
"id": "550e8400-e29b-41d4-a716-446655440001",
"title": "Q4 Product Launch Announcement",
"url": "https://app.tryordinal.com/acme/posts/550e8400-e29b-41d4-a716-446655440001"
},
"campaign": {
"id": "550e8400-e29b-41d4-a716-446655440003",
"name": "Launch 2025",
"startDate": "2025-01-01",
"endDate": "2025-12-31"
},
"workspace": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"slug": "acme",
"name": "Acme Inc"
},
"createdApprovals": [
{
"id": "550e8400-e29b-41d4-a716-446655440700",
"isBlocking": true,
"message": "Please review before we publish.",
"dueDate": "2025-02-28T17:00:00.000Z",
"createdAt": "2025-02-26T14:00:00.000Z",
"status": "Requested",
"user": {
"id": "550e8400-e29b-41d4-a716-446655440020",
"firstName": "Alex",
"lastName": "Rivera",
"email": "alex@example.com"
},
"requestedBy": {
"id": "550e8400-e29b-41d4-a716-446655440010",
"firstName": "Jane",
"lastName": "Doe",
"email": "jane@example.com"
}
}
],
"existingApprovals": []
}
},
"createdAt": "2025-02-26T14:00:00.000Z"
}