Plugins
Plugins let OpenEdge connect external business systems to the console and bot workflows. A plugin exposes actions, accepts user input, returns cards, and can receive interaction events.
Use Cases
- Search orders from an internal API.
- Fetch customer records from a CRM.
- Trigger a workflow from a bot card.
- Expose weather, news, or custom data actions to the console.
Protocol
List Actions
http
GET /actionsResponse:
json
{
"actions": [
{
"id": "search_orders",
"label": "Search Orders",
"type": "form",
"inputs": [
{ "name": "query", "label": "Order ID", "type": "text" }
]
}
]
}Execute Action
http
POST /executeRequest:
json
{
"action_id": "search_orders",
"params": { "query": "123" },
"user_id": "user_1"
}Response:
json
{
"type": "list",
"items": [
{
"id": "ord_123",
"title": "Order #123",
"subtitle": "$50.00 - Pending",
"card": {
"title": "Order #123 Details",
"body": [
{ "type": "text", "content": "Status: Pending" }
],
"actions": [
{ "type": "button", "label": "Refund", "id": "refund_123" }
]
}
}
]
}Handle Interaction
http
POST /Request:
json
{
"action_id": "refund_123",
"user_id": "telegram_user_id",
"interaction_id": "interaction_..."
}Security
Plugin requests should be authenticated. Verify any gateway signature header provided by your deployment and avoid exposing plugin actions that mutate data without authorization checks.
For integrations that require third-party credentials, prefer Connected Accounts instead of hardcoding secrets in plugin configuration.
Registering a Plugin
- Deploy your plugin as an HTTPS endpoint.
- Open the OpenEdge Console.
- Register the plugin URL.
- Test the action list.
- Execute an action from the console or bot workflow.