Skip to content
Notis

Automatic Feature Branch DNS Registration

Every feature you're working on gets its own staging domain instantly. No more context-switching to Cloudflare. Notis watches Linear for new feature work and handles the DNS.

Trigger

Issue Created Trigger

Triggered when a new issue is created.

Action

Create DNS record

Tool to create a new dns record within a specific zone. use after obtaining the zone id to programmatically add dns entries.

Why this helps

Context-switching between Linear and Cloudflare to manually register staging domains for each feature slows down iteration and leaves some domains forgotten.

  • New staging domain is live as soon as the issue is created
  • Never forget to register a feature branch domain
  • Reduces back-and-forth between Linear and Cloudflare
  • Team stays focused on feature work, not infrastructure

Setup

Build it in a few focused steps.

  • 1Connect your Linear workspace and Cloudflare account to Notis (one-time setup in the Notis portal).
  • 2In Notis or via Telegram/WhatsApp, say: 'When a new issue is created with the feature label, create a DNS record in Cloudflare for its staging domain.' Notis will ask you to confirm the trigger (Issue Created) and channel for run reports.
  • 3Label any new feature work in Linear with 'feature' and include the intended subdomain in the issue title or description (e.g., 'Feature: Users Dashboard (staging: users-dashboard)').
  • 4Test by creating a test feature issue - Notis will create the DNS record and confirm it in your chosen channel.

Questions about this workflow

What if I forget to label the issue?

Only issues with the 'feature' label trigger the automation. You can run it manually on existing issues, or add the label retroactively and Notis will sync it next check.

How does Notis know what subdomain to use?

You tell Notis once during setup. For example: 'Extract the staging domain from the issue description and create a DNS A record pointing to our staging IP 1.2.3.4.' Notis remembers this instruction.

Can I turn it off for certain issues?

Remove the 'feature' label from the issue and Notis won't run the automation on it.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

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

Linear triggers

Cloudflare actions

Recurring trigger

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

TriggerScheduled

Create DNS record

Tool to create a new dns record within a specific zone. use after obtaining the zone id to programmatically add dns entries.

ActionInstant

Webhook trigger

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

TriggerInstant

Create WAF List

Tool to create a new empty waf list for the account. use after confirming the account id. example: create list(account id="<id>", kind="ip", name="blocklist")

ActionInstant

Comment Received Trigger

Triggered when a comment is received.

TriggerInstant

Create Zone

Tool to create a new zone. use after confirming account id when adding a domain to cloudflare.

ActionInstant

Issue Created Trigger

Triggered when a new issue is created.

TriggerInstant

Delete DNS Record

Tool to delete a dns record within a specific zone. use after confirming zone and record ids. example: "delete dns record 372e6795... from zone 023e105f4ecef..."

ActionInstant

Issue Updated Trigger

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

TriggerInstant

Delete WAF List

Tool to delete a waf list. use when you need to remove a list after verifying no filters reference it. example: delete list(account id="<account id>", list id="<list id>")

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

Delete Zone

Tool to delete a zone. use after confirming the zone identifier to permanently remove a dns zone from your cloudflare account. example: delete zone(zone identifier="023e105f4ecef8ad9ca31a8372d0c353")

ActionInstant

Private Team Issue Created

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

TriggerPolling

List WAF Lists

Tool to fetch all waf lists (no items) for an account. use after confirming account id.

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

List Account Members

Tool to list members of a given cloudflare account. use after confirming the account id.

ActionInstant

Connect any two apps with Notis in the middle.

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