{
"plugin": "savant-zendesk-plugin",
"version": "1.0.0",
"agent": {
"name": "savant-zendesk-plugin",
"description": "Bridges Zendesk ticket events into the Savant mesh.",
"port": 4100,
"agent_type": "zendesk-plugin"
},
"mesh": {
"url": "http://localhost:3000",
"tenant_id": "acme",
"tenant_secret": "${SAVANT_TENANT_SECRET}"
},
"zendesk": {
"subdomain": "${ZENDESK_SUBDOMAIN}",
"email": "${ZENDESK_EMAIL}",
"api_token": "${ZENDESK_API_TOKEN}",
"webhook_secret": "${ZENDESK_WEBHOOK_SECRET}"
},
"event_ingestion": {
"webhook_path": "/webhooks/zendesk",
"polling_enabled": true,
"polling_interval_seconds": 60
},
"routing_rules": [
{
"match": { "priority": ["urgent", "high"] },
"action": { "auto_execute": true, "cue_priority": "high" }
},
{
"match": { "tags_include": ["escalated"] },
"action": { "requires_human": true, "cue_priority": "high" }
},
{
"match": { "event_type": "ticket.status_changed", "status": ["solved", "closed"] },
"action": { "log_only": true }
}
],
"tools": {
"enabled": [
"zendesk_get_ticket",
"zendesk_list_tickets",
"zendesk_create_ticket",
"zendesk_update_ticket",
"zendesk_add_comment",
"zendesk_search",
"zendesk_get_user",
"zendesk_macro_apply"
]
}
}