Webex
Overview
Section titled “Overview”The Webex provider integrates with Webex messaging. It supports:
- Direct messages
- Space (room) messages
- Adaptive Cards
- File attachments
- @mentions
Prerequisites
Section titled “Prerequisites”- Webex account
- Webex Developer access
-
Create a Webex Bot
Go to developer.webex.com:
- Navigate to My Webex Apps → Create a Bot
- Fill in bot details
- Copy the Bot Access Token
-
Configure Provider
answers.json {"setup_answers": {"messaging-webex": {"webex_bot_token": "your-bot-access-token"}}}You do not need to provide a room id, person email, or webhook secret during setup.
-
Run Setup
Terminal window gtc setup --answers answers.json ./my-bundle -
Start or restart the runtime
Terminal window gtc start ./my-bundleWebex webhook setup discovers the bot person id from
/people/me, generates a 20-character webhook secret, and reconciles the current target URL.
Webhook Registration
Section titled “Webhook Registration”The provider registers and reconciles three Webex webhooks for the current tenant/team target:
| Webhook | Purpose |
|---|---|
messages.created with mentionedPeople=<bot person id> | Room messages where the bot is mentioned |
messages.created without a filter | Direct 1:1 messages to the bot |
attachmentActions.created | Adaptive Card submit actions |
Stale Greentic-owned Webex webhooks that point to old target URLs are deleted during reconciliation. Unrelated Webex webhooks are left alone.
Configuration Options
Section titled “Configuration Options”| Option | Required | Description |
|---|---|---|
webex_bot_token | Yes | Bot access token from Webex Developer Portal |
public_base_url | Runtime/setup context | Public URL used to build webhook targets |
WEBEX_WEBHOOK_SECRET | Generated secret | Generated by setup and stored in the tenant secrets store |
Network Access
Section titled “Network Access”Webex uses Greentic’s public HTTPS endpoint for incoming bot webhooks and the Webex REST API for outgoing sends. Expose the Greentic runtime through HTTPS on port 443; local development can use a tunnel that forwards the public URL to the local runtime port.
| Direction | Protocol and port | Purpose |
|---|---|---|
| Incoming | HTTPS 443 from Webex to Greentic | messages.created webhooks for direct messages and room mentions, plus attachmentActions.created webhooks for Adaptive Card actions |
| Outgoing | HTTPS 443 from Greentic to webexapis.com | Bot identity lookup, webhook reconciliation, message sends, and attachment action reads |
No Webex-specific TCP port needs to be opened on the Greentic host. The current webhook target must remain publicly reachable over HTTPS; startup removes stale Greentic-owned Webex webhooks that point to older URLs.
Features
Section titled “Features”Text Messages
Section titled “Text Messages”- id: reply type: reply config: message: "Hello! How can I help?"Markdown
Section titled “Markdown”- id: formatted type: reply config: message: | **Bold** *Italic* - List item [Link](https://example.com)Adaptive Cards
Section titled “Adaptive Cards”Webex Buttons and Cards use Adaptive Cards and currently document support for Adaptive Cards version 1.3 with Webex-specific limitations. Test cards in Webex, especially when using images, fallback behavior, or complex actions.
- id: card type: adaptive-card config: card: type: AdaptiveCard version: "1.3" body: - type: TextBlock text: "Welcome!"File Attachments
Section titled “File Attachments”- id: send_file type: reply config: message: "Here's your document" files: - url: "https://example.com/doc.pdf"