Skip to main content
PATCH
/
posts
/
{id}
Update post
curl --request PATCH \
  --url https://app.tryordinal.com/api/v1/posts/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data @- <<EOF
{
  "title": "Updated: Q4 Product Launch Announcement",
  "publishAt": "2026-01-16T15:00:00.000Z",
  "status": "Finalized",
  "linkedIn": {
    "copy": "Updated content for our product launch! šŸš€\n\nWe've added even more features:\n• Feature D\n• Feature E\n\n#ProductLaunch #Innovation"
  }
}
EOF
{
  "post": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "url": "https://app.tryordinal.com/acme/posts/550e8400-e29b-41d4-a716-446655440000",
    "title": "Updated: Q4 Product Launch Announcement",
    "channels": [
      "LinkedIn"
    ],
    "status": "Finalized",
    "publishDate": "2026-01-16",
    "publishAt": "2026-01-16T15:00:00.000Z",
    "createdAt": "2026-01-05T10:30:00.000Z",
    "updatedAt": "2026-01-13T09:15:00.000Z",
    "linkedIn": {
      "copy": "Updated content for our product launch! šŸš€\n\nWe've added even more features:\n• Feature D\n• Feature E\n\n#ProductLaunch #Innovation"
    }
  }
}

Authorizations

Authorization
string
header
required

API key authentication. Generate an API key from your workspace settings.

Path Parameters

id
string<uuid>
required

Post ID (UUID)

Body

application/json

All fields are optional. Only include the fields you want to update.

title
string
publishAt
string<date-time>
status
enum<string>
Available options:
Tentative,
ToDo,
InProgress,
ForReview,
Blocked,
Finalized,
Scheduled,
Posted
labelIds
string<uuid>[]
campaignId
string<uuid> | null
notes
string | null
linkedIn
object

Response

Post updated successfully

post
object