> ## Documentation Index
> Fetch the complete documentation index at: https://ordinal.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# post.publish_failed

> Fired when a post fails to publish

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

**type** `string` *required*

The event type (e.g. `post.publish_failed`).

**data** `object` *required*

Event-specific payload for this webhook.

**Data object parameters**

**post** `object` *required*

The post that failed to publish.

**Post object parameters**

**id** `string` *required*

Post ID.

**title** `string` *required*

Post title.

**channel** `string` *required*

Channel where publish failed.

**error** `string` *required*

Error message describing the failure.

**campaign** `object | null`

Campaign if assigned. Contains `id`, `name`, `startDate`, and `endDate`.

**url** `string` *required*

Ordinal post URL.

**profile** `object` *required*

Profile that attempted to publish. Contains `id`, `name`, and `detail`.

**scheduledPublishAt** `string` *required*

ISO 8601 timestamp when publish was attempted.

**workspace** `object` *required*

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

**createdBy** `object` *required*

User who created the post. Contains `id`, `firstName`, `lastName`, and `email`.

**failedAt** `string` *required*

ISO 8601 timestamp when the publish failed.

**createdAt** `string` *required*

ISO 8601 timestamp when the webhook event was created.

```json Example theme={null}
{
  "type": "post.publish_failed",
  "data": {
    "post": {
      "id": "550e8400-e29b-41d4-a716-446655440001",
      "title": "Q4 Product Launch Announcement",
      "channel": "LinkedIn",
      "error": "Token expired",
      "campaign": null,
      "url": "https://app.tryordinal.com/acme/posts/550e8400-e29b-41d4-a716-446655440001",
      "profile": {
        "id": "550e8400-e29b-41d4-a716-446655440002",
        "name": "Acme Inc",
        "detail": "acme-inc"
      },
      "scheduledPublishAt": "2025-03-01T14:00:00.000Z",
      "workspace": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "slug": "acme",
        "name": "Acme Inc"
      },
      "createdBy": {
        "id": "550e8400-e29b-41d4-a716-446655440010",
        "firstName": "Jane",
        "lastName": "Doe",
        "email": "jane@example.com"
      },
      "failedAt": "2025-03-01T14:00:05.000Z"
    }
  },
  "createdAt": "2025-03-01T14:00:05.000Z"
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.