---
title: "Update draft post"
method: PATCH
path: "/lists/{listId}/posts/{postId}"
tags: ["Posts"]
---

# Update draft post

`PATCH /lists/{listId}/posts/{postId}`

## Request

- Base URL: `https://api.tinysend.com/v1`
- URL: `https://api.tinysend.com/v1/lists/{listId}/posts/{postId}`
- Auth: HTTP bearer

## Path parameters

- `listId` string, required
- `postId` string, required

## Request body

- object
  - `subject` string
  - `body_html` string
  - `body_text` string
  - `markdown` string: the body in markdown; when given, body_text keeps it and body_html is rendered from it (as the app writes a post)

## Response `200`

Updated post

- PostDetail
  - `id` string, required
  - `subject` string, required
  - `status` string, required
  - `source` string
  - `needs_approval` boolean
  - `scheduled_at` string, nullable
  - `body_html` string, nullable, required
  - `body_text` string, nullable, required
  - `issues_summary` object, nullable: Quality automation results (links, spelling, grammar)
  - `checked_at` string, nullable
  - `created_at` string, required
  - `sent_at` string, nullable, required
  - `stats` object
    - `recipients` integer, required
    - `delivered` integer, required
    - `opened` integer, required
    - `clicked` integer, required
    - `bounced` integer, required

---

[API](https://skmtc.dev/tinysend/apis/tinysend-api.md) · [All operations](https://skmtc.dev/tinysend/apis/tinysend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tinysend/apis/tinysend-api/revisions/2dc68ac83332?raw)
