The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "weekly-brief",
"active": true,
"nodes": [
{
"parameters": {
"rule": {
"interval": [
{
"field": "cronExpression",
"expression": "0 13 * * 0"
}
]
}
},
"name": "Sunday 13:00 UTC (09:00 ET)",
"type": "n8n-nodes-base.scheduleTrigger",
"typeVersion": 1.1,
"position": [
240,
300
],
"id": "trigger-sunday"
},
{
"parameters": {
"url": "={{ $env.SUPABASE_URL }}/rest/v1/runs",
"method": "POST",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "apikey",
"value": "={{ $env.SUPABASE_SERVICE_ROLE_KEY }}"
},
{
"name": "Authorization",
"value": "=Bearer {{ $env.SUPABASE_SERVICE_ROLE_KEY }}"
},
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "Prefer",
"value": "return=minimal"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"kind\": \"weekly_brief_trigger\",\n \"agent_id\": \"weekly-brief\",\n \"exit_status\": \"queued\",\n \"start_time\": \"{{ $now.toISO() }}\",\n \"end_time\": \"{{ $now.toISO() }}\",\n \"token_cost\": 0\n}",
"options": {}
},
"name": "Log brief trigger",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
460,
300
],
"id": "log-trigger"
},
{
"parameters": {
"url": "=https://api.telegram.org/bot{{ $env.TELEGRAM_BOT_TOKEN }}/sendMessage",
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"chat_id\": \"{{ $env.TELEGRAM_CHAT_ID }}\",\n \"text\": \"\ud83d\udcd1 Weekly Brief queued for {{ $now.toFormat('yyyy-MM-dd') }}. A worker will render the PDF, upload to R2, stage a Gmail digest draft, and reply with the link. No automatic email \u2014 Shako reviews before sending.\"\n}",
"options": {}
},
"name": "Telegram notify",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
680,
300
],
"id": "telegram-notify"
},
{
"parameters": {
"url": "={{ $env.PHASE4_DIGEST_WORKER_URL || 'https://placeholder.invalid' }}/render-weekly-brief",
"method": "POST",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "X-Auth-Token",
"value": "={{ $env.PERCEPTION_WORKER_AUTH_TOKEN || $env.PHASE5_WORKER_AUTH_TOKEN || $env.PHASE4_WORKER_AUTH_TOKEN || '' }}"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={ \"trigger\": \"weekly_brief\", \"fired_at\": \"{{ $now.toISO() }}\", \"stage_gmail_digest\": true }",
"options": {
"timeout": 300000
}
},
"name": "Fire brief render + Gmail digest",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
900,
300
],
"id": "fire-render",
"onError": "continueRegularOutput",
"notes": "Requires PHASE4_DIGEST_WORKER_URL env var (Python worker on Railway). Until deployed, this node fails gracefully; Telegram notify still fires so Shako knows the brief slot has arrived."
}
],
"connections": {
"Sunday 13:00 UTC (09:00 ET)": {
"main": [
[
{
"node": "Log brief trigger",
"type": "main",
"index": 0
}
]
]
},
"Log brief trigger": {
"main": [
[
{
"node": "Telegram notify",
"type": "main",
"index": 0
}
]
]
},
"Telegram notify": {
"main": [
[
{
"node": "Fire brief render + Gmail digest",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {
"executionOrder": "v1"
},
"meta": {
"description": "Phase 3 CGM-05 + Phase 4 ACD-03 \u2014 Sunday 09:00 ET (13:00 UTC) weekly brief trigger. Logs a 'weekly_brief_trigger' runs row, pings Telegram so Shako knows the brief is incoming, then calls the project worker which (1) renders the PDF via scripts.communicator.weekly_brief, (2) uploads to R2 via scripts.ledger.upload_artifact, (3) stages a Gmail digest draft via scripts.communicator.gmail_digest.stage_weekly_digest. Manual-send mode: every Gmail digest stays in Drafts; Shako reviews and sends.",
"phase": "3+4",
"requirement": "CGM-05 + ACD-03",
"owner_locked": "2026-05-16 Sunday 09:00 local (ET while in Boston/Durham)"
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
weekly-brief. Uses httpRequest. Scheduled trigger; 4 nodes.
Source: https://github.com/navyforses/ALEKSANDRA_BRAIN_v4/blob/db38e133700f3d3e2d2a964b1b6760a77d62d85f/workflows/weekly_brief.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Absen Otomatis. Uses ssh, httpRequest. Scheduled trigger; 11 nodes.
ELYVN Deploy Verifier. Uses httpRequest. Scheduled trigger; 6 nodes.
03 · Auditoria Diária — Carlos. Uses httpRequest. Scheduled trigger; 6 nodes.
Fechamento Mensal - Automação. Uses httpRequest, emailSend. Scheduled trigger; 6 nodes.