webhook
The webhook domain has 5 actions. On the meta surface they are all reached through arcane_webhook; on the individual surface each one is its own tool; on the dynamic surface run them with arcane_execute_action and the canonical ID.
Summary
Section titled “Summary”| Action | Title | Kind |
|---|---|---|
webhook.create | Create webhook | write |
webhook.delete | Delete webhook | destructive |
webhook.list | List webhooks | read |
webhook.trigger | Trigger a webhook | write |
webhook.update | Update webhook | write |
Actions
Section titled “Actions”webhook.create
Section titled “webhook.create”Create webhook
Create a webhook that triggers a container or stack update. The token is only returned once.
- Kind: write
- Required parameters:
actionType,name,targetId,targetType - Meta tool:
arcane_webhookwith"action": "create" - Individual tool:
arcane_webhook_create - Arcane route:
POST /api/environments/{id}/webhooks - Operation ID:
create-webhook - Usage: targetType and actionType must match: container (update, start, stop, restart, redeploy, with targetId a container ID or name from container.list, which on the local environment must exist now, else the call fails with 400 ‘target container not found’), project (update, up, down, restart, redeploy, with targetId from project.list), gitops (sync, with targetId from gitops.list), updater (run, whole environment, pass targetId as ""). The result holds id and the full token (arc_wh_…), returned only this once. Store it for webhook.trigger, since webhook.list shows just tokenPrefix. The webhook is created enabled. Needs the webhooks:create permission.
- Related actions:
webhook.trigger,webhook.list,container.list,project.list,gitops.list
webhook.delete
Section titled “webhook.delete”Delete webhook
Delete a webhook by ID
- Kind: destructive — requires
confirm: true - Required parameters:
webhookId - Meta tool:
arcane_webhookwith"action": "delete" - Individual tool:
arcane_webhook_delete - Arcane route:
DELETE /api/environments/{id}/webhooks/{webhookId} - Operation ID:
delete-webhook - Usage: webhookId from webhook.list. Removes the webhook permanently and its token stops working at once (webhook.trigger then returns 404). Use webhook.update with enabled=false to pause it instead.
- Related actions:
webhook.list,webhook.update
webhook.list
Section titled “webhook.list”List webhooks
List all webhooks configured for this environment
- Kind: read
- Required parameters: none
- Meta tool:
arcane_webhookwith"action": "list" - Individual tool:
arcane_webhook_list - Arcane route:
GET /api/environments/{id}/webhooks - Operation ID:
list-webhooks - Usage: Source of every webhookId: returns the environment’s webhooks newest first with id, name, targetType, actionType, targetId, targetName, enabled, lastTriggeredAt and tokenPrefix. The full token is never listed. If it was lost, delete the webhook and create a new one.
- Related actions:
webhook.create,webhook.update,webhook.delete
webhook.trigger
Section titled “webhook.trigger”Trigger a webhook
Fire a webhook by its token, running the action it is configured for (redeploy a project, update a container, run a GitOps sync…). This is the public endpoint external systems call, and it needs no credential besides the token
- Kind: write
- Required parameters:
token - Meta tool:
arcane_webhookwith"action": "trigger" - Individual tool:
arcane_webhook_trigger - Arcane route:
POST /api/webhooks/trigger/{token} - Operation ID:
webhook-trigger - Usage: token is the full arc_wh_… value returned once by webhook.create (webhook.list only shows tokenPrefix). Returns status accepted at once and runs the action in the background. A disabled webhook fails with 403, an unknown or deleted token with 404. Check the outcome with event.list (type webhook.trigger: ‘Webhook triggered’ on success, ‘Webhook trigger failed’ with the error otherwise).
- Related actions:
webhook.create,webhook.list,event.list
webhook.update
Section titled “webhook.update”Update webhook
Update a webhook’s enabled state
- Kind: write
- Required parameters:
webhookId,enabled - Meta tool:
arcane_webhookwith"action": "update" - Individual tool:
arcane_webhook_update - Arcane route:
PATCH /api/environments/{id}/webhooks/{webhookId} - Operation ID:
update-webhook - Usage: Only toggles enabled (required boolean): name, target and action cannot be changed, so delete and recreate for that. webhookId from webhook.list. A disabled webhook keeps its token, and webhook.trigger answers 403 until it is enabled again.
- Related actions:
webhook.list,webhook.trigger,webhook.delete