post.approval.approved
Fired when an approver grants approval for a post
All webhook payloads follow a consistent top-level structure with event-specific data nested within the data object.
typestring
The event type (e.g. post.approval.approved).
stringdataobject
Event-specific payload for this webhook.
objectdata.approvalobject
The approval that was granted.
objectdata.approval.idstring
Approval ID.
stringdata.approval.isBlockingboolean
Whether this approval blocked publishing until granted.
booleandata.approval.message?string
Optional message attached to the approval request.
stringdata.approval.dueDate?string
ISO 8601 due date for the approval, if set.
stringdata.approval.createdAtstring
ISO 8601 timestamp when the approval was created.
stringdata.approval.statusstring
Always Approved for this event.
stringdata.approval.approvedAtstring
ISO 8601 timestamp when the approver granted approval.
stringdata.approval.approvedByobject
User who approved. Contains id, firstName, lastName, and email.
objectdata.approval.requestedByobject
User who originally requested approval. Contains id, firstName, lastName, and email.
objectdata.approval.postobject
Post that was approved. Contains id, title, and url.
objectdata.approval.campaign?object
Campaign the post belongs to, if any. Contains id, name, startDate, and endDate.
objectdata.approval.workspaceobject
Workspace the post belongs to. Contains id, slug, and name.
objectcreatedAtstring
ISO 8601 timestamp when the webhook event was created.
string{
"type": "post.approval.approved",
"data": {
"approval": {
"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": "Approved",
"approvedAt": "2025-02-26T15:30:00.000Z",
"approvedBy": {
"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"
},
"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"
}
}
},
"createdAt": "2025-02-26T15:30:00.000Z"
}