Spin up a preview hostname with every pull request
Make review environments easier to find before the code review conversation starts.
Trigger
New Pull Request Created
Triggers when a new pull request is created in GitHub, matching the optional configured filters. Emits an event for each newly created pull request. Supports filtering by repository, owner/organisation, author, assignee, label, state, base branch, head branch, and draft status.
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
Preview setup is a small task that is easy to forget, leaving reviewers waiting or searching for an environment.
- Create a consistent entry point for preview environments.
- Reduce setup messages and manual reminders.
- Help reviewers get to the right build faster.
Setup
Build it in a few focused steps.
- 1Connect GitHub and Cloudflare to Notis once through the portal.
- 2Create an automation with a plain-language instruction to create the preview DNS record for each new pull request.
- 3Select the new pull request trigger and choose a channel for run reports.
- 4Test with one pull request and verify the preview hostname.
Questions about this workflow
Does this deploy the preview application?
No. It creates the Cloudflare DNS record; the preview service must already provide the target.
How does Notis know the hostname?
Describe the naming pattern and target in the plain-language instruction.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link GitHub to Cloudflare. A trigger fires from one place; an action lands in another.
GitHub triggers
Cloudflare actions
New Workflow Artifact Created
Triggers when a new workflow artifact is created in a GitHub repository. Monitors for newly created GitHub Actions workflow artifacts. Optionally filters by artifact name to restrict monitoring to specific artifacts.
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.
Branch Changed
Triggers when a GitHub branch changes. Monitors a specific branch for: - New commits pushed (head commit SHA changes) - Protection status toggled (branch becomes protected or unprotected) - Protection settings changed, including: required status checks and their enforcement level, admin enforcement, required pull request reviews (dismiss stale reviews, code owner reviews, approving review count, last push approval), required linear history, force push allowance, deletion allowance, conversation resolution, branch locking, and fork syncing.
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")
New Branch Created
Triggers when a new branch is created in a GitHub repository. Detects newly created branches. Deleted branches do not fire events.
Create Zone
Tool to create a new zone. use after confirming account id when adding a domain to cloudflare.
Check Run Status / Conclusion Changed
Triggers when a specific GitHub check run changes its status or conclusion. Monitors a single check run for changes to: status (queued, in_progress, completed, etc.), conclusion (success, failure, neutral, cancelled, skipped, timed_out, action_required), started_at, and completed_at.
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..."
Check Suite Status / Conclusion Changed
Triggers when a GitHub check suite changes its status or conclusion for a given ref. Monitors all check suites associated with a git reference (branch, tag, or commit SHA) for changes to status (queued, in_progress, completed, etc.) and conclusion (success, failure, neutral, cancelled, skipped, timed_out, action_required, startup_failure, stale). Optionally filters by GitHub App ID.
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>")
New Code Scanning Alert Created
Triggers when a new code scanning alert is created in a repository. Fires an event for each newly created code scanning alert detected in the configured repository. Alerts can be filtered by Git reference, scanning tool, state, and severity. The payload includes the alert number, rule details, tool information, state, severity, and the location of the most recent instance.
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")
New Repository Collaborator Added
Triggers when a new collaborator is added to a GitHub repository. Monitors the full list of collaborators on a repository and fires an event for each newly added collaborator. The payload includes the collaborator's GitHub username, account ID, profile URL, avatar URL, permission flags (pull, triage, push, maintain, admin), and assigned role name.
List WAF Lists
Tool to fetch all waf lists (no items) for an account. use after confirming account id.
Commit Event
Triggered when a new commit is pushed to a repository.
List Account Members
Tool to list members of a given cloudflare account. use after confirming the account id.
Connect any two apps with Notis in the middle.
Not just GitHub and Cloudflare. 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 Cloudflare.