---
title: "Edit published post"
method: POST
path: "/v1/posts/{postId}/edit"
tags: ["Posts"]
---

# Edit published post

`POST /v1/posts/{postId}/edit`

Edit the text of an already-published post. Supported on X (Twitter), Discord,
Facebook, and Reddit. Each platform enforces its own rules:

**X (Twitter)**
- Connected X account must have an active X Premium subscription
- Must be within 1 hour of original publish time
- Maximum 5 edits per tweet (enforced by X)
- Threads cannot be edited, only single tweets
- X assigns a NEW post ID on edit, returned as `id`

**Discord**
- No time limit and no premium requirement
- The message ID is unchanged after the edit

**Facebook**
- Graph only permits editing a post that the same app created, so this works on
  posts published through Zernio and is rejected for posts created in Meta
  Business Suite / Composer or by another tool
- Media cannot be swapped, only the message text
- Reactions, comments, and shares are preserved. The post ID is unchanged

**Reddit**
- Self-posts only. A link post has no editable body and is rejected before the write
- Body only. Reddit exposes no API to edit a post title, ever
- The post ID is unchanged

Media edits are not supported on any platform. The post record in Zernio is updated
with the new content and an edit-history entry.

## Path parameters

- `postId` string, required

## Request body

- object
  - `platform` 'twitter' | 'discord' | 'facebook' | 'reddit', required — The platform to edit the post on.
  - `content` string, required — The new post text content

## Response `200`

Post edited successfully

- object
  - `success` boolean
  - `id` string — The platform post ID after the edit. X assigns a new ID; Discord, Facebook, and Reddit return the original ID unchanged.
  - `url` string, uri — URL of the edited post
  - `message` string

## Other responses

- `400` — Invalid request: platform not supported, post not published, edit window expired, not X Premium, or missing content. Also returned when the platform rejects the edit with a 4xx, which covers a Reddit link post (no editable body) and a Facebook post that was not created by this app.
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Resource not found
- `500` — Platform API edit failed for a reason the platform did not classify.

---

[API](https://skmtc.net/zernio/apis/zernio-api.md) · [All operations](https://skmtc.net/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zernio/zernio-api/versions/51932b099b2f/schema)
