post.created
Fired when a new post is created
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.created).
stringdataobject
Event-specific payload for this webhook.
objectdata.postobject
The created post.
objectdata.post.idstring
Post ID.
stringdata.post.titlestring
Post title.
stringdata.post.statusstring
Post status.
stringdata.post.channelsarray
Channels the post is scheduled for.
arraydata.post.campaign?object | null
Campaign if assigned. Contains id, name, startDate, and endDate.
object | nulldata.post.urlstring
Ordinal post URL.
stringdata.post.workspaceobject
Workspace the post belongs to. Contains id, slug, and name.
objectdata.post.createdByobject
User who created the post. Contains id, firstName, lastName, and email.
objectdata.post.createdAtstring
ISO 8601 timestamp when the post was created.
stringdata.post.labelsarray
Labels attached to the post. Each contains id, name, color, and backgroundColor.
arraydata.post.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).
object | nulldata.post.x?object | null
X/Twitter content when the post includes Twitter. Contains profile (id, name, detail) and tweets (array of { copy, assets }).
object | nullcreatedAtstring
ISO 8601 timestamp when the webhook event was created.
string{
"type": "post.created",
"data": {
"post": {
"id": "550e8400-e29b-41d4-a716-446655440001",
"title": "New Draft",
"status": "draft",
"channels": ["LinkedIn"],
"campaign": null,
"url": "https://app.tryordinal.com/acme/posts/550e8400-e29b-41d4-a716-446655440001",
"labels": [
{
"id": "550e8400-e29b-41d4-a716-446655440400",
"name": "Marketing",
"color": "#9333ea",
"backgroundColor": "#f3e8ff"
}
],
"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"
},
"createdAt": "2025-02-26T12:00:00.000Z",
"linkedIn": {
"profile": {
"id": "550e8400-e29b-41d4-a716-446655440002",
"name": "Acme Inc",
"detail": "acme-inc"
},
"copy": "Excited to share our latest product update!",
"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": null
}
},
"createdAt": "2025-02-26T12:00:00.000Z"
}