Skip to content
Notion Arena
HomeComponentsButtons & AutomationsAutomation Starter Pack
⚡
⚡ Buttons & AutomationsFreeNative recipeNew

Automation Starter Pack

Twelve database automations and button chains, documented and copy-pasteable.

Version
v1.1.0
Updated
2026-10-09
Plan
Plus

The install plan

Exactly what Notion Arena sends to Notion, in order. Notion's data-source model forces two passes: relations, rollups and the formulas that read them need data_source_ids that only exist once the databases do.

19
requests
12
manual steps
1POST
/v1/pages

Create the “automation-starter” container page under the page you chose

2POST
/v1/databases

Create the “Tasks” database with 12 base properties

3GET
/v1/databases/{tasks_database_id}

Read back Tasks to get its default data source id

4PATCH
/v1/data_sources/{tasks_data_source_id}

Add 3 deferred properties to Tasks: relations (with resolved data_source_ids), then the rollups and formulas that read them

5POST
/v1/databases

Create the “Inbox” database with 6 base properties

6GET
/v1/databases/{inbox_database_id}

Read back Inbox to get its default data source id

7PATCH
/v1/data_sources/{inbox_data_source_id}

Add 1 deferred properties to Inbox: relations (with resolved data_source_ids), then the rollups and formulas that read them

8POST
/v1/views

Create the “Board” board view on tasks

9POST
/v1/views

Create the “Today” list view on tasks

10POST
/v1/views

Create the “Overdue” table view on tasks

11POST
/v1/views

Create the “Waiting too long” table view on tasks

12POST
/v1/views

Create the “Completed per week” chart view on tasks

13POST
/v1/views

Create the “Untriaged” table view on inbox

14POST
/v1/pages

Seed 3 rows into Tasks so the views are not empty on first open (one request per row; Notion has no bulk insert)

×3
15POST
/v1/pages

Seed 1 rows into Inbox so the views are not empty on first open (one request per row; Notion has no bulk insert)

16POST
/v1/pages

Create the “Automation playbook” page

17PATCH
/v1/blocks/{automation_playbook_page_id}/children

Append 39 blocks of page body

3 steps cannot be scripted: All eight automations above; All six buttons; Three recurring templates.

Run it yourselfNotion-Version 2026-03-11
curl -X POST https://notionarena.vercel.app/api/install \
  -H 'content-type: application/json' \
  -d '{
    "component": "automation-starter",
    "mode": "plan"
  }'

# add "token" and "parentPageId" and switch to "mode": "api" to install for real

What gets created

The real property schemas, not a description of them. Every formula below is a Notion Formula 2.0 expression you can paste into a property by hand if you would rather not use the API at all.

✅

Tasks

ref: tasks
1× title1× status1× people4× date1× select1× multi_select1× checkbox1× created_time3× formula1× last_edited_time
Namen/a
StatusInbox → Today → Doing → Waiting +1
Ownern/a
Duen/a
PriorityP1 · P2 · P3
Tagsdeep · admin · client · personal
Escalatedn/a
Snoozed untiln/a
Started atn/a
Finished atn/a
Createdn/a
Cycle time (hours)if(and(not(empty(prop("Started at"))), not(empty(prop("Finished at")))), dateBetween(prop("Finished at"), prop("Started at"), "hours"), 0)
Is overdueif(and(not(empty(prop("Due"))), prop("Due") < now(), prop("Status") != "Done"), true, false)
Days waitingif(prop("Status") == "Waiting", dateBetween(now(), prop("Last edited"), "days"), 0)
Last editedn/a
📥

Inbox

ref: inbox
1× title1× select1× created_time1× checkbox1× rich_text1× url1× relation
Namen/a
SourceEmail · Slack · Form · Manual
Capturedn/a
Triagedn/a
Bodyn/a
Linkn/a
Turned into→ tasks (two-way)

Views

Created through POST /v1/views, which shipped in March 2026 and is the reason provisioning a workspace from code finally works end to end.

Boardboard

on tasks

Todaylist

on tasks

filter: {"property":"Status","status":{"equals":"Today"}}…

Overduetable

on tasks

filter: {"property":"Is overdue","checkbox":{"equals":true}}…

Waiting too longtable

on tasks

filter: {"property":"Days waiting","number":{"greater_than":3}}…

Completed per weekchart

on tasks

filter: {"property":"Status","status":{"equals":"Done"}}…

Untriagedtable

on inbox

filter: {"property":"Triaged","checkbox":{"equals":false}}…

Documentation pages

Appended with real block types (headings, toggles, callouts, to-dos, column lists) in chunks of 100, the Append block children limit.

⚡Automation playbook39 blocks
⚡Buttons and database automations cannot be created through the Notion API. This recipe installs the two data sources they act on, then gives you the exact click-path for each one. Twelve automations, six buttons, three recurring templates. Roughly an afternoon, and then they run forever.
≡ table of contents
Automations on Tasks
1. Start the clock
•Trigger: Status changes to Doing
•Action: Edit page → Started at = Today (with time)
•Why: Cycle time is unmeasurable without a start stamp, and nobody adds one by hand.
2. Stop the clock
•Trigger: Status changes to Done
•Action: Finished at = Today; add confetti
3. Escalate P1s
•Trigger: Priority changes to P1
•Action: Set Due = Today, Escalated = checked, Slack message to #ops
4. Flag overdue, daily
•Trigger: Due is before Today
•Condition: Status is not Done
•Action: Comment @Owner “Overdue: reschedule or finish”
5. Un-snooze
•Trigger: Snoozed until is Today
•Action: Status = Today, clear Snoozed until
6. Chase what is Waiting
•Trigger: Status changes to Waiting
•Action: Set a reminder 3 days out
Automations on Inbox
7. Auto-triage flag
•Trigger: Page created
•Action: Comment “Triage within 24h or it becomes a task”
8. Promote to task
•Trigger: Triaged is checked
•Action: Add page to Tasks, Status = Inbox, Name = this page's name, From inbox = this page
Buttons
ButtonWhereActions in order
Start dayHome pageOpen Today view · add a blank Inbox row · show today's date
End dayHome pageMove every Doing task to Today · add a “What did you finish?” Inbox row
Weekly resetHome pageMove Done tasks to Archive · clear Snoozed until on all tasks
EscalateTasksPriority = P1 · Due = Today · Slack #ops
Snooze 3 daysTasksSnoozed until = +3 days · Status = Inbox
Mark doneTasksStatus = Done · Finished at = Today · confetti
Recurring templates
•Daily standup: every weekday 08:45. Body: linked Today view, linked Overdue view, one prompt per person.
•Weekly review: every Friday 16:30. Body: Completed per week chart, Waiting too long table, three questions.
•Monthly retro: last working day, 17:00. Body: cycle-time averages, what to stop doing.

What Notion still cannot do
🚧Native automations only fire inside one database. Cross-database writes need a second automation on the target, or an external tool. Formulas cannot trigger side effects: they can only display a value, so a formula that says “overdue” needs an automation watching the same condition to actually notify anyone. If you find yourself chaining five automations to approximate one conditional branch, you have outgrown native and should use Make, n8n or the API.

The parts the API cannot do

Every recipe ships with its manual steps written out, because pretending the API covers everything is how people end up with a half-built workspace. These are real Notion limitations, quoted from the API reference.

All eight automations above

Database automations have no public API surface. They are configured per-database in the Notion app under ••• → Automations.

  1. 1Open Tasks → ••• → Automations → New automation, and work down the list on the playbook page.
  2. 2Each entry gives the trigger, the condition and the action in the order the panel asks for them.
  3. 3Date-based triggers are evaluated once a day, not continuously: a task due at 09:00 may not fire until the daily pass.
  4. 4Automations are per-database and do not copy when you duplicate the database.

All six buttons

Button properties are response-only in the Notion API: the schema is returned on read, but the API ignores button settings on write and cannot create a button or configure its actions.

  1. 1On the target page, type /button.
  2. 2Add each action in the order given in the table; Notion runs them top to bottom.
  3. 3For “add page to” actions you can pre-fill properties from the current page.
  4. 4Buttons cannot loop, cannot branch, and cannot read a rollup. If a step needs any of those, it is an automation or an API call.

Three recurring templates

Recurring database templates (daily/weekly/monthly) are configured in the app on the template's ••• menu; the API can create pages from a template but cannot schedule recurrence.

  1. 1Create a “Rituals” database with Date, Type (select) and Owner (person).
  2. 2Add one template per ritual with the body described above, including the linked views and charts.
  3. 3On each template: ••• → Repeat → pick the schedule.
  4. 4Recurring templates create pages only; they cannot pre-fill relations or run automations.

About this component

Buttons and database automations cannot be created through the Notion API: they are configured in the app. This recipe installs the databases they act on, then hands you an exact click-path for each automation: trigger, conditions, actions. Twelve of them, covering the workflows people most often rebuild by hand.

What it does

  • Each automation lists the exact property IDs to pick, matched to the schema this recipe creates
  • Covers the API gap honestly: what is scriptable and what is not
  • Includes confetti on completion, added to Notion automations in 2026
  • Slack notification actions where the Slack connection is available

Where people put it

↳Teams moving off Zapier for in-Notion workflows
↳Anyone rebuilding the same five automations in every workspace
↳Ops leads standardising a team's task hygiene
💼CRM Pipelineboard
Status property with Notion's native stage groups (To begin / In progress / Done / Blocked)Rollups from Deals → Companies for lifetime value and open pipelineFormula-driven 'Days in stage' that flags stale deals in redDashboard view combining a number widget, a board and a chart
POST /v1/databasesPOST /v1/views
Popular

CRM Pipeline

Companies, people and deals: related databases with a board and a pipeline chart.

BusinessProNativev2.1.0
🏃Sprint Trackerboard
Board configuration with a subtask toggle column: the API can set thisChart view: line of points completed per sprintTimeline view across sprints for roadmap conversationsStatus groups mapped to Notion's native To begin / In progress / Done
POST /v1/databasesPOST /v1/views

Sprint Tracker

Epics, stories and sprints with a velocity chart and a burndown-ready schema.

BusinessProNativev1.4.0
🎯OKR Systemboard
Progress computed from start/target/current, clamped 0-100%Confidence as a 1-10 number property with a colour-coded formula labelQuarter select property drives every filtered viewChart view of objective scores, grouped by team
POST /v1/databasesPOST /v1/views

OKR System

Objectives, key results and confidence, rolled up to a company score.

BusinessFreeNativev1.2.0