Update Post
discourse.update_post
ActionBusiness appsconnection required
Calls the Discourse API with the connection's credentials.
Replace the Markdown body of an existing post.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- API key
- Providers
- Discourse
- Secret shape
- the API key, or {"api_key": "…"}
- Config it needs
- base_url, api_username
- Resolved by
- config.connection_id, else node.connection_id
Configuration
4 fields, 2 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
post_id The post's numeric Discourse id, as shown in the post's permalink. | string | Yes | — | — | 1234 |
raw The post's new Markdown body; it replaces the previous body outright. | string | Yes | — | — | Updated: the fix shipped in 2.4.1. |
edit_reason Short note shown in the post's edit history explaining the change. | string | No | — | — | Corrected the version number |
bypass_bump Leave the topic's position in the latest list alone. Discourse allows this only for staff or trust level 4 accounts. | boolean | No | false | — | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"bypass_bump": false,
"edit_reason": "Corrected the version number",
"post_id": "1234",
"raw": "Updated: the fix shipped in 2.4.1."
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
post The post record Discourse returned, in full. | object | — |
id The post's id. | number | — |
topic_id The topic the post belongs to. | number | — |
post_number The post's position inside its topic, starting at 1. | number | — |
post_url Path to the post on the forum, relative to the forum root. | string | — |
username The account the post was made by. | string | — |
{
"id": 0,
"post": {},
"post_number": 0,
"post_url": "",
"topic_id": 0,
"username": ""
}Related Discourse nodes
See Update Post run in a workflow.
In a technical demo we add the Discourse connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.