Automatically sync renewal dates to keep customers before they churn
Update a customer's contract renewal date in Notion and Userlist knows about it instantly. No missed renewals, no surprise churn, no forgotten follow-ups.
Trigger
Page Properties Updated
Triggers when properties of a Notion page are updated. Customer optionally scopes with at most one of: - data_source_id: any row in this data source - page_id: this specific page - parent_page_id: any page whose immediate parent is this page With none set, fires for any property change in the workspace the integration has access to. Adding a column to a data source fires this trigger once per existing row. Customers can branch on `data.updated_properties` (array of property IDs) to filter downstream.
Action
Push User-Company Relationship
Tool to create or update a relationship between a user and a company in userlist. use after confirming valid user and company identifiers.
Why this helps
Renewal dates live in Notion but Userlist doesn't know about them, so renewal campaigns go out late or not at all, leaving revenue on the table.
- Automated renewal campaigns trigger at the right time based on contract dates
- Sales and support teams get notified before customers churn
- Reduce manual calendar checking and renewal reminders
- Upsell and expansion opportunities surface automatically before renewal
Setup
Build it in a few focused steps.
- 1Connect Notion and Userlist to Notis.
- 2Tell Notis: 'When a customer's contract end date or renewal date changes in Notion, sync it to Userlist.' Or create this via the portal.
- 3Select 'Page Properties Updated' and choose the Notion database and the renewal date field to watch.
- 4Pick your notification channel.
- 5Test by updating a customer's renewal date in Notion and verify Userlist reflects it within 30 seconds.
Questions about this workflow
How do I trigger renewal campaigns based on this date?
Once the date syncs to Userlist, set up automated email workflows that trigger 30 days, 14 days, and 7 days before renewal.
What if I offer multi-year contracts?
Track the actual end date in Notion and Notis syncs it. The renewal sequence will trigger once every contract cycle.
Can I sync contract value too?
Yes, create a separate automation to sync contract value or MRR fields from Notion to Userlist's customer records.
What if a customer requests to reschedule renewal?
Just update the date in Notion and Userlist automatically reflects the new renewal timeline.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Notion to Userlist. A trigger fires from one place; an action lands in another.
Notion triggers
Userlist actions
All Page Events
Triggers when any Notion page is created or updated across the workspace.
Delete Company from Userlist
Tool to delete a company from userlist. use when you need to remove a company by its unique identifier after verifying it.
Comment Created
Triggers when a new comment is created in Notion. Optional `page_id` filter scopes to comments on a specific page. When omitted, fires for any new comment in the workspace the integration has access to. Requires the 'Read comments' capability on the Notion integration. If a connection was authorized before that capability was enabled, the user must re-authorize the connection for comment events to flow.
Push User-Company Relationship
Tool to create or update a relationship between a user and a company in userlist. use after confirming valid user and company identifiers.
New Comment
Triggers when a new comment is added to a specified Notion block or page.
Database Created
Triggers when a new Notion database (the container) is created. A database is the post-2025-09-03 container that holds one or more data sources. This trigger fires for the container's creation event (`database.created`), distinct from `NOTION_DATASOURCE_CREATED` which fires when a new data source is added to an existing database. Most customers calling Notion's `POST /v1/databases` (the legacy API) or creating a database via the Notion UI will see this event. Adding a new data source to an existing database fires `data_source.created` instead — use `NOTION_DATASOURCE_CREATED` for that. Notion's payload puts `entity.type: "block"` (the container is a `child_database` block in the content tree) and `entity.id` is the database id.
Data Source Created
Triggers when a new Notion data source is created. Fires workspace-wide. The payload's `data.parent` carries the data source's tree parent (typically the teamspace) for downstream filtering. A single template-based database creation can fire multiple `data_source.created` events at once — one per data source the template instantiates.
Data Source Schema Updated
Triggers when a Notion data source's schema is updated. Fires on column add / remove / rename. Payload includes `data.updated_properties: [{id, name, action}]` so consumers can discriminate the kind of change downstream. Optional `data_source_id` filter scopes to schema changes on a single data source. When omitted, fires for any schema change in the workspace the integration has access to. Note: adding a column also fires `page.properties_updated` once per existing row in the data source. Customers wanting a single structural-change signal should use this trigger.
New Page
Triggers when a new page is added to a Notion database.
Page Added to Page
Fires when a new subpage (a `child_page` type block) is added under a specified parent Notion page.
Connect any two apps with Notis in the middle.
Not just Notion and Userlist. Any combination from 1,000+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7 days free trial with 20$ free usage included.
No card. Works with personal or business Userlist.