[{"data":1,"prerenderedAt":74},["ShallowReactive",2],{"help-article-cron-jobs-overview":3},{"data":4},{"title":5,"excerpt":6,"content":7,"help_category":8,"seo":11},"Cron Jobs Overview","m18t ships a native scheduler: write a cron expression, point it at an internal task or an external workflow, and inspect every run.","\u003Cp>\u003Cstrong>What you&#39;ll learn\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>What cron jobs do in m18t and the two kinds of thing they can trigger: an internal \u003Cstrong>TASK\u003C\u002Fstrong> or an external \u003Cstrong>WORKFLOW\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>How to schedule, run, and inspect a job, including its run history.\u003C\u002Fli>\n\u003Cli>What&#39;s solid here today, and the one automation that is \u003Cem>not\u003C\u002Fem> yet wired (scheduled auto-publish).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>Why m18t has its own scheduler\u003C\u002Fh2>\n\u003Cp>Plenty of background work in m18t benefits from running on a clock rather than a click: polling \u003Ca href=\"\u002Fhelp\u002Fthe-news-manager-concept\">news sources\u003C\u002Fa>, refreshing social engagement metrics, periodic maintenance. Rather than push all of that to a third-party automation tool, m18t ships a real internal scheduler. You write a cron expression, point it at an action, and m18t runs it on schedule and logs every run.\u003C\u002Fp>\n\u003Cp>A cron job in m18t targets one of two things, set by its \u003Cstrong>trigger type\u003C\u002Fstrong>:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>TASK\u003C\u002Fstrong> — an \u003Cem>internal\u003C\u002Fem> action that runs inside m18t. These are predefined task keys the platform exposes (the job&#39;s action dropdown lists the available ones). This is the native path: the work happens in your m18t instance, brand-scoped, logged.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WORKFLOW\u003C\u002Fstrong> — an \u003Cem>external\u003C\u002Fem> trigger. Instead of running internal code, the job pings a registered n8n \u003Ca href=\"\u002Fhelp\u002Fworkflows-n8n\">workflow\u003C\u002Fa>. m18t fires the webhook on schedule; n8n does the rest. This is the bridge to outside automation, and it&#39;s the legacy path — for most work, an internal TASK is what you want.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Either way, the schedule, the run history, and the telemetry live in m18t.\u003C\u002Fp>\n\u003Ch2>How to create a cron job\u003C\u002Fh2>\n\u003Col>\n\u003Cli>Open \u003Cstrong>Cron Jobs\u003C\u002Fstrong> under Automation (\u003Ccode>\u002Fstudio\u002Fautomations\u002Fcron-jobs\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>New Job\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Pick the \u003Cstrong>brand\u003C\u002Fstrong> this job runs for, or choose \u003Cstrong>All brands\u003C\u002Fstrong> to run it workspace-wide. This is a deliberate first step — there&#39;s no silent default.\u003C\u002Fli>\n\u003Cli>Give the job a \u003Cstrong>name\u003C\u002Fstrong> and optional description.\u003C\u002Fli>\n\u003Cli>Choose the \u003Cstrong>Trigger Type\u003C\u002Fstrong>: \u003Ccode>TASK\u003C\u002Fcode> or \u003Ccode>WORKFLOW\u003C\u002Fcode>. The \u003Cstrong>Action \u002F Target\u003C\u002Fstrong> dropdown then lists internal tasks or registered workflows accordingly.\u003C\u002Fli>\n\u003Cli>Enter a \u003Cstrong>cron expression\u003C\u002Fstrong> (e.g. \u003Ccode>0 *\u002F6 * * *\u003C\u002Fcode> for every six hours). There&#39;s a link to crontab.guru beside the field if you need to build one.\u003C\u002Fli>\n\u003Cli>Optionally add a JSON \u003Cstrong>payload\u003C\u002Fstrong> and set a \u003Cstrong>priority\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Make sure \u003Cstrong>Job is Active\u003C\u002Fstrong> is on, then \u003Cstrong>Create Job\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch2>How to run, edit, and inspect a job\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Cstrong>Run now.\u003C\u002Fstrong> The play icon on a job runs it immediately and reports success or failure with the duration. Useful for testing a job without waiting for its next scheduled tick.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>History.\u003C\u002Fstrong> The history icon opens an execution log: every run with its status, trigger source (scheduled vs. manual), duration in milliseconds, any error message, and the payload\u002Fresult. This is where you debug a job that&#39;s misbehaving.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Edit \u002F pause.\u003C\u002Fstrong> Edit a job to change its schedule or target; toggle \u003Cstrong>Active\u003C\u002Fstrong> off to pause it without deleting it. A paused job shows as &quot;Paused&quot; in the table.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Last run.\u003C\u002Fstrong> The table shows each job&#39;s last run status and next scheduled run at a glance.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>Variations\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Cstrong>Workspace-wide jobs.\u003C\u002Fstrong> A job scoped to &quot;All brands&quot; runs for every brand in your workspace — appropriate for maintenance that isn&#39;t brand-specific. Brand-scoped jobs run for just that brand.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Manual vs. scheduled runs.\u003C\u002Fstrong> Both are logged, and the history tags which was which via the trigger source, so a manual test run is distinguishable from a scheduled one.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>What is \u003Cem>not\u003C\u002Fem> wired yet\u003C\u002Fh2>\n\u003Cp>Here&#39;s the honest gap. A natural thing to want is \u003Cstrong>scheduled auto-publish\u003C\u002Fstrong>: &quot;when a content piece is ready and its scheduled time passes, publish it automatically.&quot; The pieces exist — the \u003Ca href=\"\u002Fhelp\u002Fthe-calendar-view\">calendar\u003C\u002Fa>, the scheduled-at timestamp, the status set, this scheduler — but the loop that connects them is \u003Cstrong>not wired today.\u003C\u002Fstrong> Every publish is still a manual click. (See \u003Ca href=\"\u002Fhelp\u002Fscheduling-vs-publishing\">Scheduling vs. Publishing\u003C\u002Fa> for the full picture.) Cron is real and runs internal tasks and external webhooks reliably; it just doesn&#39;t yet auto-publish your content. Don&#39;t build a content workflow that assumes it does.\u003C\u002Fp>\n\u003Ch2>FAQ\u003C\u002Fh2>\n\u003Cp>\u003Cstrong>What&#39;s the difference between a TASK and a WORKFLOW job?\u003C\u002Fstrong>\nA TASK runs internal m18t code (a predefined task key); a WORKFLOW pings an external n8n webhook. TASK is the native path; WORKFLOW is the legacy bridge to outside automation.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Can I make m18t publish my content automatically on a schedule?\u003C\u002Fstrong>\nNot yet. The scheduled auto-publish loop is not wired — publishing is a manual click today. Cron can run internal tasks and trigger external workflows, but it does not auto-publish content.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Where do I see why a job failed?\u003C\u002Fstrong>\nOpen the job&#39;s history (the history icon). Each run shows its status, duration, and any error message, plus the payload and result.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How do I test a job without waiting for the schedule?\u003C\u002Fstrong>\nUse the play (Run now) icon. It executes the job immediately and reports success\u002Ffailure and duration, and the run is logged like any other.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How do I pause a job temporarily?\u003C\u002Fstrong>\nEdit it and turn off \u003Cstrong>Active\u003C\u002Fstrong>, or it&#39;ll show as Paused. It stops running but is kept so you can re-enable it.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What&#39;s next\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"\u002Fhelp\u002Fworkflows-n8n\">Workflows (n8n bridge)\u003C\u002Fa> — the external WORKFLOW target, and why it&#39;s a legacy escape hatch.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fhelp\u002Fscheduling-vs-publishing\">Scheduling vs. Publishing\u003C\u002Fa> — what&#39;s automated and what&#39;s a click today.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fhelp\u002Fthe-news-manager-concept\">The News Manager Concept\u003C\u002Fa> — a common use for scheduled internal tasks.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fhelp\u002Fthe-calendar-view\">The Calendar View\u003C\u002Fa> — where scheduled content lives.\u003C\u002Fli>\n\u003C\u002Ful>\n",{"slug":9,"title":10},"automation","Automation",{"meta_title":12,"meta_description":6,"keywords":13,"canonical_url":14,"og_title":5,"og_description":6,"og_image":15,"robots":16,"json_ld":17},"Cron Jobs Overview | m18t Help","cron jobs, m18t scheduler, cron expression, internal task, workflow trigger, run history, scheduled jobs, brand-scoped cron","https:\u002F\u002Fm18t.com\u002Fhelp\u002Fcron-jobs-overview","https:\u002F\u002Fm18t.com\u002Fog-default.png","index, follow",{"@context":18,"@graph":19},"https:\u002F\u002Fschema.org",[20,33,58],{"@type":21,"headline":5,"description":6,"articleSection":10,"inLanguage":22,"datePublished":23,"dateModified":23,"image":15,"author":24,"publisher":28,"mainEntityOfPage":31},"Article","en","2026-06-25",{"@type":25,"name":26,"url":27},"Organization","m18t","https:\u002F\u002Fm18t.com",{"@type":25,"name":26,"url":27,"logo":29},{"@type":30,"url":15},"ImageObject",{"@type":32,"@id":14},"WebPage",{"@type":34,"mainEntity":35},"FAQPage",[36,42,46,50,54],{"@type":37,"name":38,"acceptedAnswer":39},"Question","What's the difference between a TASK and a WORKFLOW job?",{"@type":40,"text":41},"Answer","A TASK runs internal m18t code (a predefined task key); a WORKFLOW pings an external n8n webhook. TASK is the native path; WORKFLOW is the legacy bridge to outside automation.",{"@type":37,"name":43,"acceptedAnswer":44},"Can I make m18t publish my content automatically on a schedule?",{"@type":40,"text":45},"Not yet. The scheduled auto-publish loop is not wired — publishing is a manual click today. Cron can run internal tasks and trigger external workflows, but it does not auto-publish content.",{"@type":37,"name":47,"acceptedAnswer":48},"Where do I see why a job failed?",{"@type":40,"text":49},"Open the job's history (the history icon). Each run shows its status, duration, and any error message, plus the payload and result.",{"@type":37,"name":51,"acceptedAnswer":52},"How do I test a job without waiting for the schedule?",{"@type":40,"text":53},"Use the play (Run now) icon. It executes the job immediately and reports success\u002Ffailure and duration, and the run is logged like any other.",{"@type":37,"name":55,"acceptedAnswer":56},"How do I pause a job temporarily?",{"@type":40,"text":57},"Edit it and turn off Active, or it'll show as Paused. It stops running but is kept so you can re-enable it.",{"@type":59,"itemListElement":60},"BreadcrumbList",[61,65,69,72],{"@type":62,"position":63,"name":64,"item":27},"ListItem",1,"Home",{"@type":62,"position":66,"name":67,"item":68},2,"Help","https:\u002F\u002Fm18t.com\u002Fhelp",{"@type":62,"position":70,"name":10,"item":71},3,"https:\u002F\u002Fm18t.com\u002Fhelp\u002Fcategories\u002Fautomation",{"@type":62,"position":73,"name":5,"item":14},4,1786312172363]