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\nShoutout to @[Jane Smith](urn:li:person:XYZ789abc) for leading this effort.\n\nWe've added even more features:\n• Feature D\n• Feature E\n\n#ProductLaunch #Innovation"
  },
  "x": {
    "tweets": [
      {
        "copy": "Updated content for our product launch! 🚀\n\nWe've added even more features 🧵"
      },
      {
        "copy": "• Feature D\n• Feature E\n\n#ProductLaunch #Innovation"
      }
    ]
  }
}
EOF
{
  "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",
    "Twitter"
  ],
  "status": "Finalized",
  "publishDate": "2026-01-16",
  "publishAt": "2026-01-16T15:00:00.000Z",
  "updatedAt": "2026-01-13T09:15:00.000Z",
  "linkedIn": {
    "copy": "Updated content for our product launch! 🚀\n\nShoutout to @[Jane Smith](urn:li:person:XYZ789abc) for leading this effort.\n\nWe've added even more features:\n• Feature D\n• Feature E\n\n#ProductLaunch #Innovation"
  },
  "x": {
    "tweets": [
      {
        "copy": "Updated content for our product launch! 🚀\n\nWe've added even more features 🧵"
      },
      {
        "copy": "• Feature D\n• Feature E\n\n#ProductLaunch #Innovation"
      }
    ]
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.tryordinal.com/llms.txt

Use this file to discover all available pages before exploring further.

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
x
object

X (Twitter) channel configuration for creating or updating posts

instagram
object

Instagram channel configuration for creating or updating posts. The shape of the object depends on the type field.

Response

Post updated successfully

id
string<uuid>
url
string<uri>
title
string
channels
string[]
status
enum<string>
Available options:
Tentative,
ToDo,
InProgress,
ForReview,
Blocked,
Finalized,
Scheduled,
Posted
publishDate
string

Scheduled publish date (YYYY-MM-DD) in workspace timezone

publishAt
string<date-time> | null

Scheduled publish datetime UTC. Only set when a specific time is specified.

createdAt
string<date-time>
updatedAt
string<date-time>
archivedAt
string<date-time> | null

When the post was archived. Null if the post is not archived.

labels
object[]

Labels assigned to this post

linkedIn
object
x
object

X (Twitter) content. Present when the post targets the Twitter channel.

instagram
object

Instagram content. Present when the post targets the Instagram channel. The shape depends on the type field.