All requests below will use this key. Your API key is sent directly to api.cueapi.ai and never stored by the docs site.
POST
/v1/cuesCreate a Cue
Register a new scheduled cue with a callback URL or worker transport.
namestringrequiredbodyHuman-readable name for the cue. Max 255 characters.
scheduleobjectrequiredbodycallbackobjectbodytransportstringdefault: webhookbody"webhook" or "worker". Worker transport does not require a callback URL.
payloadobjectbodyJSON payload delivered with each execution. Any valid JSON.
descriptionstringbodyOptional description of what this cue does.
retryobjectbodyRequest
bash
curl -X POST https://api.cueapi.ai/v1/cues \
-H "Authorization: Bearer cue_sk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "daily-sync",
"schedule": {"type": "recurring", "cron": "0 9 * * *"},
"callback": {"url": "https://api.yourapp.com/sync"}
}'bash
curl -X POST https://api.cueapi.ai/v1/cues \
-H "Authorization: Bearer cue_sk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "reminder",
"schedule": {"type": "once", "at": "2026-03-15T14:00:00Z"},
"callback": {"url": "https://api.yourapp.com/notify"}
}'bash
curl -X POST https://api.cueapi.ai/v1/cues \
-H "Authorization: Bearer cue_sk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "agent-task",
"schedule": {"type": "recurring", "cron": "0 9 * * 1-5"},
"transport": "worker",
"payload": {"task": "draft-linkedin", "kind": "agent_turn"}
}'Response
json
{
"id": "cue_a1b2c3d4e5f6",
"name": "daily-sync",
"status": "active",
"next_run": "2026-03-14T09:00:00+00:00",
"schedule": {
"type": "recurring",
"cron": "0 9 * * *",
"timezone": "UTC"
},
"callback": {
"url": "https://api.yourapp.com/sync",
"method": "POST"
},
"transport": "webhook",
"payload": null,
"run_count": 0,
"created_at": "2026-03-13T15:00:00Z"
}json
{
"error": {
"code": "cue_limit_exceeded",
"message": "You have reached your plan's cue limit (10)",
"status": 403
}
}POST
Try it/v1/cuesRequest Body
Enter your API key above to send requests