Skip to content
Notis

Contain asset exposure when a secret is detected

A secret alert needs a focused cleanup path, especially when uploads may have been affected.

Trigger

New Secret Scanning Alert Detected

Triggers when a new secret scanning alert is detected in a GitHub repository. Monitors open secret scanning alerts and fires an event for each newly detected alert. Supports filtering by secret type (e.g., personal access tokens, AWS keys) and by token validity status (active, inactive, unknown). The payload includes the alert number, secret type, validity status, resolution state, timestamps, URLs, and flags for push protection bypass, public exposure, and multi-repo detection.

Action

Delete Resources by Asset ID

Tool to delete resources by asset ids. use when you need to permanently remove specific resources by their immutable asset ids; irreversible.

Why this helps

Security incidents create dangerous follow-up gaps when exposed media is not removed promptly.

  • Create a clear response path for affected assets
  • Reduce manual incident coordination
  • Keep cleanup targeted to known asset IDs

Setup

Build it in a few focused steps.

  • 1Connect GitHub and Cloudinary to Notis once through the portal.
  • 2Ask Notis to delete only the specifically identified Cloudinary resources linked to a new secret scanning alert, after confirming the asset IDs.
  • 3Select the secret scanning alert trigger, choose a reporting channel, and test with a safe test asset.

Questions about this workflow

Is deletion reversible?

Deleting resources by asset ID is permanent, so require confirmation in the instruction before execution.

Can it delete an entire tag?

This workflow is designed for specific asset IDs to limit the cleanup scope.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

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

GitHub triggers

Cloudinary actions

Recurring trigger

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

TriggerScheduled

Create Folder

Tool to create a new asset folder. use when you need to organize assets into nested directories. use after confirming the folder path does not already exist.

ActionInstant

Webhook trigger

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

TriggerInstant

Create Metadata Field

Tool to create a new metadata field definition. use when extending your metadata schema with new fields.

ActionInstant

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.

TriggerPolling

Create Trigger

Tool to create a new webhook trigger for a specified event type. use after configuring your webhook endpoint and choosing the event type. example: "create a trigger for uploads to https://example.com/hooks/cloudinary"

ActionInstant

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.

TriggerPolling

Create Upload Mapping

Tool to create a new upload mapping folder and url template. use when you need to dynamically map external url prefixes to a cloudinary asset folder before uploading files.

ActionInstant

New Branch Created

Triggers when a new branch is created in a GitHub repository. Detects newly created branches. Deleted branches do not fire events.

TriggerPolling

Create Upload Preset

Tool to create a new upload preset. use when defining centralized upload options (tags, formats, transformations, etc.) before asset uploads.

ActionInstant

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.

TriggerPolling

Delete Derived Resources

Tool to delete derived assets. use when you need to remove specific derived assets by their ids. example: "delete derived assets with ids [id1, id2]".

ActionInstant

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.

TriggerPolling

Delete Metadata Field Datasource Entries

Tool to delete datasource entries for a specified metadata field. use when you need to soft-delete (inactivate) specific entries in a field's datasource. example prompt: "delete entries ['color1','color2'] from metadata field 'color id'"

ActionInstant

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.

TriggerPolling

Delete Folder

Tool to delete an empty asset folder. use when the folder is confirmed empty and you need to remove it.

ActionInstant

Connect any two apps with Notis in the middle.

GitHub and Cloudinary, 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 Cloudinary.