Skip to content
Notis

Prevent Duplicate Deal Work Between Systems

Starting a new project is exciting until you realize it overlaps with something already tracked in your investor pipeline. This automation checks Affinity every time you create a project, showing you which opportunities might be affected so you can consolidate effort instead of duplicating it.

Trigger

Project Created

Fires when a new Linear project is created. Covers projects in both public and private teams — polls with the connected user's token, so visibility matches what the connected user can see in Linear.

Action

Get all opportunities

Pagination through opportunities in affinity yields basic info but excludes field data. for field data, use specified get endpoints. "export data from lists" permission needed.

Why this helps

New projects created in Linear may duplicate work already in Affinity pipeline, leading to wasted effort and misaligned messaging.

  • Spot overlapping work before you start a project
  • Consolidate related customer and investor initiatives
  • Keep pipeline and project management synchronized

Setup

Build it in a few focused steps.

  • 1Connect Linear and Affinity integrations.
  • 2Tell Notis: 'When I create a new project, show me all opportunities in Affinity that might be related.'
  • 3Select 'Project Created' as the trigger.
  • 4Pick Slack for instant notifications.
  • 5Create a test project and see which opportunities appear.

Questions about this workflow

Should I stop creating projects if conflicts appear?

Not necessarily. Conflicts might represent a change in strategy or a split focus. Use the information to make deliberate choices instead of accidental ones.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

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

Linear triggers

Affinity actions

Recurring trigger

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

TriggerScheduled

Get a company s list entries

Summarize company data across all lists, including list-specific fields and metadata like creation date and author. access requires "export data from lists" permission.

ActionInstant

Webhook trigger

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

TriggerInstant

Get a company s lists

Returns metadata for all the lists on which the given company appears.

ActionInstant

Comment Received Trigger

Triggered when a comment is received.

TriggerInstant

Get all companies

Affinity api allows paginated access to company info and custom fields. use `fieldids` or `fieldtypes` to specify data in a request. retrieve field ids/types via get `/v2/companies/fields`. export permission needed.

ActionInstant

Issue Created Trigger

Triggered when a new issue is created.

TriggerInstant

Get all list entries on a list

Access and export essential data and metadata for companies, persons, or opportunities from a list, specifying data via `fieldids` or `fieldtypes`. "export data from lists" permission is necessary.

ActionInstant

Issue Updated Trigger

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

TriggerInstant

Get all list entries on a saved view

Use the endpoint to access rows in a saved view with specific filters and selected fields from a web app. it doesn't maintain sort order, supports only sheet-type views, and requires export permissions.

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

Get all opportunities

Pagination through opportunities in affinity yields basic info but excludes field data. for field data, use specified get endpoints. "export data from lists" permission needed.

ActionInstant

Private Team Issue Created

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

TriggerPolling

Get all persons

The affinity api offers paginated access to person data using `fieldids` or `fieldtypes`. bulk extraction needs special permissions and supports multiple parameters.

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

Get a person s list entries

Summary: browse rows for a person in all lists, showing field data and entry metadata like creation time and author. requires "export data from lists" permission.

ActionInstant

Connect any two apps with Notis in the middle.

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