Skip to content
Ordinal
Esc
↑↓navigate↵open⌘Jpreview

post.approval.requested

Fired when someone requests approval from users for a post

All webhook payloads follow a consistent top-level structure with event-specific data nested within the data object.

PropType
typestring

The event type (e.g. post.approval.requested).

Typestring
dataobject

Event-specific payload for this webhook.

Typeobject
data.approvalobject

Approval request context for the post.

Typeobject
data.approval.postobject

Post being approved. Contains id, title, and url.

Typeobject
data.approval.campaign?object

Campaign the post belongs to, if any. Contains id, name, startDate, and endDate.

Typeobject
data.approval.workspaceobject

Workspace the post belongs to. Contains id, slug, and name.

Typeobject
data.approval.createdApprovalsarray

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.

Typearray
data.approval.existingApprovalsarray

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.

Typearray
createdAtstring

ISO 8601 timestamp when the webhook event was created.

Typestring
{
  "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"
}

Last updated on September 27, 2026

Was this page helpful?