Repost
twitter.retweet_post
ActionChat & messagingconnection required
Calls the X (Twitter) API with the connection's credentials.
Repost (retweet) a post as the authenticated user.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- Bearer token
- Providers
- X (Twitter)
- Secret shape
- the X OAuth2 user-context access token, or {"access_token": "…"}
- Resolved by
- config.connection_id, else node.connection_id
Configuration
2 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 |
|---|---|---|---|---|---|
user_id Numeric id of the authenticated user — the 'id' twitter.get_me emits. X requires it in the path; it is not filled in for you. | string | Yes | — | — | 2244994945 |
tweet_id Numeric id of the post, e.g. the 'id' twitter.create_post emitted. Supports {{ }}. | string | Yes | — | — | 1460323737035677698 |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"tweet_id": "1460323737035677698",
"user_id": "2244994945"
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
retweeted True once the repost is in place (or undone). | boolean | — |
rest_id Id of the repost itself, on create. | string | — |
user_id The user that acted. | string | — |
tweet_id The post that was reposted. | string | — |
{
"rest_id": "",
"retweeted": false,
"tweet_id": "",
"user_id": ""
}Notes
- X API access is tiered and metered: most read endpoints need a paid plan, and since 6 February 2026 new developers get pay-per-use credits rather than a free tier. A 403 here usually means the plan, not the code.
- The connection's access token must already carry the scopes this node needs; X does not grant them per call, so a missing scope is a 401 on every run.
- Needs the OAuth2 scopes tweet.write, tweet.read, users.read.
See Repost run in a workflow.
In a technical demo we add the X (Twitter) connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.