update_dm_conversation
posts:writeuses credits
Update a tracked X DM conversation (ids from list_dm_conversations). addMessage logs one message as { from, text }: 'them' for what the person sent (paste their exact words), 'me' once the user has sent a message on X, which starts the follow-up clock. draft: true then drafts the next message in the user's voice (spends AI credits). draftText edits the draft, notes the context, and status 'closed' archives the conversation ('open' reopens it).
Nothing is ever sent from here: the user sends on X via sendOnXUrl.
Input
conversationIdstring (uuid)requiredaddMessageobjectFields
fromstringrequiredone of
them,metextstringrequiredmin length 1 · max length 4000
notesstringmax length 1000
draftTextstringmax length 1000
statusstringone of
open,closeddraftbooleanguidancestringmin length 1 · max length 500
Permission
Needs the posts:write scope: create drafts. It changes your workspace, so clients may ask you to confirm each call.
Example call
Your assistant sends this for you. It is shown so you can see the shape of a call, with placeholder values for the required fields.
{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "update_dm_conversation", "arguments": { "conversationId": "3f8e2c1a-0000-4000-8000-000000000000" } }}Same action over the REST API
The tool runs PATCH /v1/orgs/{orgId}/dms/{conversationId} as the signed-in user, with the same validation, approval rules and limits. See it in the X DMs API reference.