Routines API
The Routines API provides endpoints for creating and managing cron schedules and webhook triggers.
Base URL: https://endpoint.acenta.ai/core/api/v1
Routines
Section titled “Routines”List routines
Section titled “List routines”GET /routinesQuery parameters: trigger_type (cron, webhook), enabled, limit, offset
Create routine
Section titled “Create routine”POST /routines| Field | Type | Required | Description |
|---|---|---|---|
name | string | yes | Routine name |
description | string | no | Description |
trigger_type | string | yes | cron or webhook |
cron_expression | string | cron only | Standard cron expression |
timezone | string | no | Timezone for cron (default UTC) |
target_agent | string | yes | Agent to invoke |
payload | object | no | Payload to send to agent |
enabled | boolean | no | Default true |
# Cron routinecurl -X POST https://endpoint.acenta.ai/core/api/v1/routines \ -H "Authorization: Bearer $ACENTA_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "daily-report", "trigger_type": "cron", "cron_expression": "0 8 * * *", "target_agent": "report-agent" }'
# Webhook routinecurl -X POST https://endpoint.acenta.ai/core/api/v1/routines \ -H "Authorization: Bearer $ACENTA_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "on-upload", "trigger_type": "webhook", "target_agent": "document-agent" }'Webhook routines return a webhook_url in the response.
Get routine
Section titled “Get routine”GET /routines/{id}Update routine
Section titled “Update routine”PATCH /routines/{id}Accepts any subset of routine fields, including enabled to pause/resume.
Delete routine
Section titled “Delete routine”DELETE /routines/{id}Trigger routine manually
Section titled “Trigger routine manually”POST /routines/{id}/triggerExecutes the routine immediately regardless of schedule.
Webhook Endpoint
Section titled “Webhook Endpoint”Invoke webhook
Section titled “Invoke webhook”POST /routines/webhook/{token}The token is provided in the webhook_token field when a webhook routine is created. The request body is forwarded to the target agent as the payload.
No authentication required — the token itself authenticates the request.
Executions
Section titled “Executions”List executions
Section titled “List executions”GET /routines/{id}/executionsQuery parameters: status (success, failed), limit, offset
Get execution
Section titled “Get execution”GET /routines/executions/{id}Delete execution
Section titled “Delete execution”DELETE /routines/executions/{id}Example execution record
Section titled “Example execution record”{ "id": "exec-1", "routine_id": "rtn-123", "status": "success", "started_at": "2026-04-30T08:00:00Z", "completed_at": "2026-04-30T08:00:04Z", "output": "Report generated successfully."}