Skip to content
Notis

Keep launch readiness and marketing activity in sync

When project readiness changes, capture the update in Klaviyo and give your marketing team a useful signal to work from.

Trigger

Project Properties Updated

Fires when properties on a Linear project change (status, lead, target date, priority, etc.). Covers projects in both public and private teams — polls with the connected user's token.

Action

Create event

Create or update a profile event with minimum identifiers and metric name. success means validation, not completion. burst limit: 350/s, steady: 3500/m. scope required: `events:write`.

Why this helps

Launch details shift across planning and marketing tools, leaving founders to repeat status updates by hand.

  • Keep project progress visible in the marketing activity record.
  • Reduce manual status relays between product and marketing.
  • Give the team a consistent event to review when planning launch work.

Setup

Build it in a few focused steps.

  • 1Connect Linear and Klaviyo to Notis once through the portal.
  • 2Create an automation in the portal, or tell Notis in plain language to record project readiness changes as Klaviyo events.
  • 3Select the Linear Project Properties Updated trigger.
  • 4Choose the channel where Notis should report runs, then test with a real project property change.

Questions about this workflow

Does this send a campaign when project readiness changes?

No. It creates a Klaviyo event. A separate Klaviyo workflow can use that event if you want messaging to follow.

Can Notis interpret the project update?

Describe the intended event in the plain-language prompt. Notis uses the trigger context to carry out the instruction.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

Notis builds workflows that link Linear to Klaviyo. A trigger fires from one place; an action lands in another.

Linear triggers

Klaviyo actions

Recurring trigger

Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.

TriggerScheduled

Add Profile to List

Add profiles to a klaviyo list by profile ids or email addresses. this action subscribes profiles to a marketing list, which is ideal for giving marketing consent. you can add up to 1000 profiles per call using either their klaviyo profile ids or email addresses. rate limits: 10/s burst, 150/m steady. required scopes: `lists:write` and `profiles:write`. preconditions: - either profile ids or emails must be provided (not both) - maximum 1000 profiles per call - email addresses must be valid format - the list must exist and be accessible

ActionInstant

Webhook trigger

Notis starts this workflow when an external tool or custom backend sends an HTTP request.

TriggerInstant

Assign campaign message template

Creates a non-reusable version of the template and assigns it to the message.<br><br>*rate limits*:<br>burst: `10/s`<br>steady: `150/m` **scopes:** `campaigns:write`

ActionInstant

Comment Received Trigger

Triggered when a comment is received.

TriggerInstant

Bulk create client events

Use the client-side endpoint with a public api key to track profile activity. it accepts up to 1000 events/request with rates of 10/s burst and 150/m steady. for server-side, use the bulk create event endpoint.

ActionInstant

Issue Created Trigger

Triggered when a new issue is created.

TriggerInstant

Bulk create events

This api endpoint creates or updates profiles by batching up to 1,000 events, with a 5mb payload limit. minimum required: a profile id and metric name. it has rate limits of 10 events per second burst and 150 events per minute. scope is `events:write`.

ActionInstant

Issue Updated Trigger

Triggered when an issue is updated. For example labels are changed, issue status is changed, etc.

TriggerInstant

Create back in stock subscription

Use the server-side endpoint to subscribe to restock alerts, following the back in stock api guide. for client-side, use the post endpoint provided. rate limits: 350/s burst and 3500/m steady. required scopes: catalogs:write, profiles:write.

ActionInstant

Private Team Comment Created

Fires when a new comment is posted on an issue in a private Linear team (polled with the connected user's token).

TriggerPolling

Create campaign

Creates a campaign given a set of parameters, then returns it.<br><br>*rate limits*:<br>burst: `10/s`<br>steady: `150/m` **scopes:** `campaigns:write`

ActionInstant

Private Team Issue Created

Fires when a new issue appears in a private Linear team (polled with the connected user's token).

TriggerPolling

Create campaign clone

Clones an existing campaign, returning a new campaign based on the original with a new id and name.<br><br>*rate limits*:<br>burst: `10/s`<br>steady: `150/m` **scopes:** `campaigns:write`

ActionInstant

Private Team Issue Properties Updated

Fires when properties on an issue change in a private Linear team (polled with the connected user's token).

TriggerPolling

Create Campaign Recipient Estimation Job

Start an asynchronous task to estimate the number of recipients for a campaign. this action creates a background job that calculates how many profiles would receive the campaign based on its current audience settings. use the job id returned to track progress with the 'get campaign recipient estimation job' action, and get the final count via 'get campaign recipient estimation' action. rate limits: 10/s burst, 150/m steady. required scope: `campaigns:write`. preconditions: - valid api key with campaigns:write scope - campaign id must exist and be accessible - campaign must have audience settings configured

ActionInstant

Connect any two apps with Notis in the middle.

Linear and Klaviyo, 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 Klaviyo.