[{"data":1,"prerenderedAt":317},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fv2\u002Fapi\u002Fconfig\u002Fconnections":3},{"id":4,"title":5,"body":6,"description":15,"extension":310,"meta":311,"navigation":312,"path":313,"seo":314,"stem":315,"__hash__":316},"docs\u002Fdocs\u002Fv2\u002Fapi\u002Fconfig\u002Fconnections.md","connections",{"type":7,"value":8,"toc":307},"minimark",[9,12,16,20,28,180,183,283,289,303],[10,11,5],"h1",{"id":5},[13,14,15],"p",{},"Declares external triggers that invoke the agent. Currently supports cron schedules.",[17,18,19],"h2",{"id":19},"schedule",[13,21,22,23,27],{},"Axon provisions a Cloud Scheduler job for each entry. At the specified time, the\nplatform sends a POST to ",[24,25,26],"code",{},"\u002F_axon\u002Finbox\u002F{name}"," on your deployed agent.",[29,30,35],"pre",{"className":31,"code":32,"language":33,"meta":34,"style":34},"language-ts shiki shiki-themes dark-plus","export default defineAgent({\n    connections: {\n        schedule: [\n            {\n                name: \"daily-digest\",\n                cron: \"0 9 * * *\",        \u002F\u002F 9am UTC daily\n                timezone: \"Europe\u002FLondon\", \u002F\u002F optional, defaults to UTC\n            },\n            {\n                name: \"hourly-check\",\n                cron: \"0 * * * *\",\n            },\n        ],\n    },\n})\n","ts","",[24,36,37,57,67,76,82,95,111,126,132,137,147,157,162,168,174],{"__ignoreMap":34},[38,39,42,46,49,53],"span",{"class":40,"line":41},"line",1,[38,43,45],{"class":44},"sYbnZ","export",[38,47,48],{"class":44}," default",[38,50,52],{"class":51},"sCudf"," defineAgent",[38,54,56],{"class":55},"sTNBD","({\n",[38,58,60,64],{"class":40,"line":59},2,[38,61,63],{"class":62},"s3F5K","    connections:",[38,65,66],{"class":55}," {\n",[38,68,70,73],{"class":40,"line":69},3,[38,71,72],{"class":62},"        schedule:",[38,74,75],{"class":55}," [\n",[38,77,79],{"class":40,"line":78},4,[38,80,81],{"class":55},"            {\n",[38,83,85,88,92],{"class":40,"line":84},5,[38,86,87],{"class":62},"                name:",[38,89,91],{"class":90},"sKc5r"," \"daily-digest\"",[38,93,94],{"class":55},",\n",[38,96,98,101,104,107],{"class":40,"line":97},6,[38,99,100],{"class":62},"                cron:",[38,102,103],{"class":90}," \"0 9 * * *\"",[38,105,106],{"class":55},",        ",[38,108,110],{"class":109},"sOLPB","\u002F\u002F 9am UTC daily\n",[38,112,114,117,120,123],{"class":40,"line":113},7,[38,115,116],{"class":62},"                timezone:",[38,118,119],{"class":90}," \"Europe\u002FLondon\"",[38,121,122],{"class":55},", ",[38,124,125],{"class":109},"\u002F\u002F optional, defaults to UTC\n",[38,127,129],{"class":40,"line":128},8,[38,130,131],{"class":55},"            },\n",[38,133,135],{"class":40,"line":134},9,[38,136,81],{"class":55},[38,138,140,142,145],{"class":40,"line":139},10,[38,141,87],{"class":62},[38,143,144],{"class":90}," \"hourly-check\"",[38,146,94],{"class":55},[38,148,150,152,155],{"class":40,"line":149},11,[38,151,100],{"class":62},[38,153,154],{"class":90}," \"0 * * * *\"",[38,156,94],{"class":55},[38,158,160],{"class":40,"line":159},12,[38,161,131],{"class":55},[38,163,165],{"class":40,"line":164},13,[38,166,167],{"class":55},"        ],\n",[38,169,171],{"class":40,"line":170},14,[38,172,173],{"class":55},"    },\n",[38,175,177],{"class":40,"line":176},15,[38,178,179],{"class":55},"})\n",[13,181,182],{},"The agent receives the schedule trigger as a standard inbox request. Handle it\nin a server route:",[29,184,186],{"className":31,"code":185,"language":33,"meta":34,"style":34},"\u002F\u002F server\u002Fapi\u002F_axon\u002Finbox\u002Fdaily-digest.post.ts\nexport default defineEventHandler(async () => {\n    const { stream } = axon.scripts.stream(\"run-digest\")\n    for await (const _ of stream) {}\n})\n",[24,187,188,193,217,253,279],{"__ignoreMap":34},[38,189,190],{"class":40,"line":41},[38,191,192],{"class":109},"\u002F\u002F server\u002Fapi\u002F_axon\u002Finbox\u002Fdaily-digest.post.ts\n",[38,194,195,197,199,202,205,209,212,215],{"class":40,"line":59},[38,196,45],{"class":44},[38,198,48],{"class":44},[38,200,201],{"class":51}," defineEventHandler",[38,203,204],{"class":55},"(",[38,206,208],{"class":207},"scz_3","async",[38,210,211],{"class":55}," () ",[38,213,214],{"class":207},"=>",[38,216,66],{"class":55},[38,218,219,222,225,229,232,235,238,241,243,245,247,250],{"class":40,"line":69},[38,220,221],{"class":207},"    const",[38,223,224],{"class":55}," { ",[38,226,228],{"class":227},"s9McN","stream",[38,230,231],{"class":55}," } = ",[38,233,234],{"class":62},"axon",[38,236,237],{"class":55},".",[38,239,240],{"class":62},"scripts",[38,242,237],{"class":55},[38,244,228],{"class":51},[38,246,204],{"class":55},[38,248,249],{"class":90},"\"run-digest\"",[38,251,252],{"class":55},")\n",[38,254,255,258,261,264,267,270,273,276],{"class":40,"line":78},[38,256,257],{"class":44},"    for",[38,259,260],{"class":44}," await",[38,262,263],{"class":55}," (",[38,265,266],{"class":207},"const",[38,268,269],{"class":227}," _",[38,271,272],{"class":207}," of",[38,274,275],{"class":62}," stream",[38,277,278],{"class":55},") {}\n",[38,280,281],{"class":40,"line":84},[38,282,179],{"class":55},[13,284,285,288],{},[24,286,287],{},"name"," must be unique within the agent. It becomes the inbox route path and the\nCloud Scheduler job name — no spaces, no special characters.",[13,290,291,292,295,296,299,300,237],{},"Schedules only apply when ",[24,293,294],{},"deploy.target"," is ",[24,297,298],{},"\"axon\"",". They are ignored when\nrunning locally with ",[24,301,302],{},"axon dev",[304,305,306],"style",{},"html pre.shiki code .sYbnZ, html code.shiki .sYbnZ{--shiki-default:#C586C0}html pre.shiki code .sCudf, html code.shiki .sCudf{--shiki-default:#DCDCAA}html pre.shiki code .sTNBD, html code.shiki .sTNBD{--shiki-default:#D4D4D4}html pre.shiki code .s3F5K, html code.shiki .s3F5K{--shiki-default:#9CDCFE}html pre.shiki code .sKc5r, html code.shiki .sKc5r{--shiki-default:#CE9178}html pre.shiki code .sOLPB, html code.shiki .sOLPB{--shiki-default:#6A9955}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .scz_3, html code.shiki .scz_3{--shiki-default:#569CD6}html pre.shiki code .s9McN, html code.shiki .s9McN{--shiki-default:#4FC1FF}",{"title":34,"searchDepth":59,"depth":59,"links":308},[309],{"id":19,"depth":59,"text":19},"md",{},true,"\u002Fdocs\u002Fv2\u002Fapi\u002Fconfig\u002Fconnections",{"title":5,"description":15},"docs\u002Fv2\u002Fapi\u002Fconfig\u002Fconnections","Lyaem2YZnm9G5t3q0WVxb8vBnQ8uH3yNOdPcc6W98ac",1785671808283]