Create Message
webex.create_message
ActionChat & messagingconnection required
Calls the Cisco Webex API with the connection's credentials.
Post a message to a Webex space or as a 1:1 direct message.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- Bearer token
- Providers
- Cisco Webex
- Secret shape
- the Webex access token, or {"access_token": "…"}
- Resolved by
- config.connection_id, else node.connection_id
Configuration
12 fields, 1 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 |
|---|---|---|---|---|---|
room_id Id of the space to post in. Leave blank to send a 1:1 message instead. | string | No | — | — | Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0 |
to_person_email Email of the person to send a 1:1 message to. Webex creates the direct room if there is not one yet. | string | No | — | email format | — |
to_person_id Id of the person to send a 1:1 message to, instead of their email. | string | No | — | — | — |
text The message as plain text. Also the fallback for clients that cannot render Markdown. Supports {{ }}. | string | No | — | — | The nightly deploy finished. |
markdown The message as Markdown. Mention someone with <@personEmail:someone@example.com>. Supports {{ }}. | string | No | — | — | — |
files One publicly reachable file URL to attach, as a JSON array. Webex takes exactly one URL and downloads it itself. | array | No | — | 1–1 characters; array of string | — |
attachments Adaptive Cards to attach, as a JSON array of Webex attachment objects. Only one card per message is supported. | array | No | — | array of object | — |
parent_id Id of a message to reply to, which starts or continues its thread. | string | No | — | — | — |
file_content A file to upload with the message — wire an upstream node's file_content here. Sent as a multipart request instead of a URL. | string | No | — | — | — |
filename Name Webex should show the uploaded file under, e.g. report.pdf. | string | Yes | — | only with file_content | — |
content_encoding How file_content is encoded. Leave at base64 for a file from another node. | string | Conditional | base64 | one of "base64", "text"; only with file_content | — |
content_type MIME type of the uploaded file, e.g. image/png. Defaults to application/octet-stream. | string | Conditional | — | only with file_content | — |
- At least one of room_id, to_person_email, to_person_id must be set.
- At least one of text, markdown, files, file_content, attachments must be set.
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"content_encoding": "base64",
"room_id": "Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0",
"text": "The nightly deploy finished."
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
id The message id — pass it to webex.get_message or delete_message. | string | — |
room_id Id of the space the message is in. | string | — |
room_type 'group' for a space, 'direct' for a 1:1 room. | string | — |
parent_id Id of the parent message when this is a threaded reply. | string | — |
person_id Id of the person or bot that posted it. | string | — |
person_email Email of the person or bot that posted it. | string | — |
text The message as plain text. | string | — |
markdown The message as Markdown, when it was sent that way. | string | — |
html The HTML Webex rendered from the Markdown. | string | — |
files URLs of the attachments; downloading one needs the same access token. | array | — |
created When the message was posted (ISO-8601). | string | — |
updated When it was last edited, if it has been. | string | — |
{
"created": "",
"files": [],
"html": "",
"id": "",
"markdown": "",
"parent_id": "",
"person_email": "",
"person_id": "",
"room_id": "",
"room_type": "",
"text": "",
"updated": ""
}Notes
- The connection's token is the actor: a bot token only sees the spaces the bot has been added to, and a personal or integration token acts as that user.
- A message goes to exactly one destination: room_id, to_person_email or to_person_id.
- An uploaded file is capped at 100 MB by Webex and by the workflow's inline binary limit, whichever is smaller; a file URL has no such cap.
- Webex answers 429 Too Many Requests with a Retry-After header giving the seconds to wait; the step fails with that status in the message.
See Create Message run in a workflow.
In a technical demo we add the Cisco Webex connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.