Skip to content

Webex

The Webex provider integrates with Webex messaging. It supports:

  • Direct messages
  • Space (room) messages
  • Adaptive Cards
  • File attachments
  • @mentions
  • Webex account
  • Webex Developer access
  1. 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
  2. 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.

  3. Run Setup

    Terminal window
    gtc setup --answers answers.json ./my-bundle
  4. Start or restart the runtime

    Terminal window
    gtc start ./my-bundle

    Webex webhook setup discovers the bot person id from /people/me, generates a 20-character webhook secret, and reconciles the current target URL.

The provider registers and reconciles three Webex webhooks for the current tenant/team target:

WebhookPurpose
messages.created with mentionedPeople=<bot person id>Room messages where the bot is mentioned
messages.created without a filterDirect 1:1 messages to the bot
attachmentActions.createdAdaptive Card submit actions

Stale Greentic-owned Webex webhooks that point to old target URLs are deleted during reconciliation. Unrelated Webex webhooks are left alone.

OptionRequiredDescription
webex_bot_tokenYesBot access token from Webex Developer Portal
public_base_urlRuntime/setup contextPublic URL used to build webhook targets
WEBEX_WEBHOOK_SECRETGenerated secretGenerated by setup and stored in the tenant secrets store

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.

DirectionProtocol and portPurpose
IncomingHTTPS 443 from Webex to Greenticmessages.created webhooks for direct messages and room mentions, plus attachmentActions.created webhooks for Adaptive Card actions
OutgoingHTTPS 443 from Greentic to webexapis.comBot 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.

- id: reply
type: reply
config:
message: "Hello! How can I help?"
- id: formatted
type: reply
config:
message: |
**Bold** *Italic*
- List item
[Link](https://example.com)

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!"
- id: send_file
type: reply
config:
message: "Here's your document"
files:
- url: "https://example.com/doc.pdf"