> ## 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.content.edited

> Fired when a post's content is edited (debounced per post, fires after 5 minutes). Includes latest content for all channels.

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.content.edited`).

**data** `object` *required*

Event-specific payload for this webhook.

**Data object parameters**

**post** `object` *required*

The edited post.

**Post object parameters**

**id** `string` *required*

Post ID.

**title** `string` *required*

Post title.

**channels** `array` *required*

Channels the post is scheduled for.

**campaign** `object | null`

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

**url** `string` *required*

Ordinal post URL.

**workspace** `object` *required*

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

**editedBy** `object` *required*

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

**editedAt** `string` *required*

ISO 8601 timestamp when the edit was recorded.

**labels** `array` *required*

Labels attached to the post. Each contains `id`, `name`, `color`, and `backgroundColor`.

**linkedIn** `object | null`

LinkedIn content when the post includes LinkedIn. Contains `profile` (id, name, detail), `copy`, and `assets` (id, name, url, mimetype, size, width, height, duration).

**x** `object | null`

X/Twitter content when the post includes Twitter. Contains `profile` (id, name, detail) and `tweets` (array of `{ copy, assets }`).

**createdAt** `string` *required*

ISO 8601 timestamp when the webhook event was created.

```json Example theme={null}
{
  "type": "post.content.edited",
  "data": {
    "post": {
      "id": "550e8400-e29b-41d4-a716-446655440001",
    "title": "Q4 Product Launch Announcement",
    "channels": ["LinkedIn", "Twitter"],
    "campaign": {
      "id": "550e8400-e29b-41d4-a716-446655440003",
      "name": "Launch 2025",
      "startDate": "2025-01-01",
      "endDate": "2025-12-31"
    },
    "url": "https://app.tryordinal.com/acme/posts/550e8400-e29b-41d4-a716-446655440001",
    "workspace": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "slug": "acme",
      "name": "Acme Inc"
    },
    "editedBy": {
      "id": "550e8400-e29b-41d4-a716-446655440010",
      "firstName": "Jane",
      "lastName": "Doe",
      "email": "jane@example.com"
    },
    "editedAt": "2025-02-26T15:30:00.000Z",
    "labels": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440400",
        "name": "Marketing",
        "color": "#9333ea",
        "backgroundColor": "#f3e8ff"
      }
    ],
    "linkedIn": {
      "profile": {
        "id": "550e8400-e29b-41d4-a716-446655440002",
        "name": "Acme Inc",
        "detail": "acme-inc"
      },
      "copy": "Updated LinkedIn content for the launch!",
      "assets": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440010",
          "name": "product-photo.jpg",
          "url": "https://cdn.tryordinal.com/assets/product-photo.jpg",
          "mimetype": "image/jpeg",
          "size": 245678,
          "width": 1920,
          "height": 1080,
          "duration": null
        }
      ]
    },
    "x": {
      "profile": {
        "id": "550e8400-e29b-41d4-a716-446655440004",
        "name": "Acme Inc",
        "detail": "@acme_inc"
      },
      "tweets": [
        {
          "copy": "Updated Twitter content for the launch!",
          "assets": []
        }
      ]
    }
    }
  },
  "createdAt": "2025-02-26T15:30:00.000Z"
}
```


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