- Sync external data into Notion databases on a schedule.
- Give Notion AI new tools that your Custom Agents can call.
- Receive webhooks from external services like GitHub, Stripe, or Zendesk.
What you can build
Sync data
Pull data from Salesforce, Stripe, GitHub, or any API into Notion databases — kept in sync automatically.
Agent tools
Give Notion Custom Agents functions like “create a Jira ticket” or “look up a customer in our CRM.”
Webhooks
Receive HTTP events from GitHub pushes, Stripe payments, or any service that sends webhooks.
How it works
A worker is a single TypeScript file that exports aWorker instance. You register capabilities on it (syncs, tools, webhooks) and deploy with ntn workers deploy:
src/index.ts
- Syncs run on a schedule (default every 30 minutes) and write results to Notion databases.
- Tools appear in Notion Custom Agents and are called by agents on demand.
- Webhooks receive HTTP events from external services and run your handler asynchronously.
Typical workflow
1
Scaffold a project
src/index.ts starter file, TypeScript config, and dependencies.2
Write your capabilities
Add syncs, tools, or webhooks to
src/index.ts. Use an AI coding agent to help. The template includes prompts and skills, like the /sync skill.3
Deploy
4
Iterate
Edit your code and redeploy.
Next steps
Quickstart
Create and deploy your first worker in less than five minutes.
CLI reference
Install and configure the Notion CLI.