Sync customer lifecycle changes to Loops
A customer lifecycle update in Notion can update the matching Loops contact record.
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
Update Contact
Tool to update an existing contact by email or userId. Use when you need to modify contact properties or re-subscribe contacts. Creates a new contact if no matching record exists.
Why this helps
Lifecycle context can change in the customer tracker while the messaging platform continues to show an old status.
- Keeps lifecycle context current
- Supports more relevant follow-up
- Reduces pre-campaign data checks
Setup
Build it in a few focused steps.
- 1Connect Notion and Loops.so to Notis once through the portal.
- 2Create an automation with one plain-language instruction for lifecycle changes and contact updates.
- 3Choose Page Properties Updated for the customer data source and select a channel for run reports.
- 4Test with one real lifecycle update and check the corresponding Loops contact.
Questions about this workflow
Can this update an existing contact?
Yes. The Update Contact action updates a contact by email or user ID and creates one if no match exists.
Should lifecycle values be available in Loops?
Ensure the needed contact property exists in Loops and describe the intended update in the prompt.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Notion to Loops.so. A trigger fires from one place; an action lands in another.
Notion triggers
Loops.so actions
Recurring trigger
Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.
Create Contact
Tool to add a new contact to your Loops audience. Use when you need to create a contact with email and optional properties like name, subscription status, or custom attributes. Returns 409 if contact already exists.
Webhook trigger
Notis starts this workflow when an external tool or custom backend sends an HTTP request.
Create Contact Property
Tool to add a custom contact property to your Loops team. Use when you need to store additional contact data beyond default fields. Properties must have unique names in camelCase format and a specified data type (string, number, boolean, or date).
All Page Events
Triggers when any Notion page is created or updated across the workspace.
Delete Contact
Tool to delete a contact by email address or user ID. Use when you need to remove a contact from Loops. Either email or userId must be provided to identify the contact.
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.
Find Contact
Tool to search for a contact by email or userId. Use when you need to find a specific contact's details including subscription status and custom properties. Exactly one of email or userId must be provided per request.
New Comment
Triggers when a new comment is added to a specified Notion block or page.
Get Contact Properties
Tool to retrieve a list of your account's contact properties from Loops.so. Use when you need to view all available contact properties or filter to only custom properties created by your team.
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.
Get Dedicated Sending IPs
Tool to retrieve a list of Loops' dedicated sending IP addresses. Use when you need to get IP addresses for whitelisting purposes.
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.
Get Mailing Lists
Tool to retrieve all mailing lists associated with your Loops account. Use when you need to browse or manage mailing list information.
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.
List Custom Fields
Tool to retrieve a list of custom contact properties. Use when you need to view available custom fields for contacts. Note: This endpoint is deprecated in favor of 'List contact properties'.
Connect any two apps with Notis in the middle.
Notion and Loops.so, or any other combination from 1,000+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7-day trial of any paid plan, with 20$ of usage included.
No card. Works with personal or business Loops.so.