FlowRunner
PricingContact
Theme
Start Free

Shorten target URLs into branded short links with Kutt, an open-source and self-hostable shortener, and manage links and custom domains. Agents mint tracked links without handing traffic data to a third party.

1 trigger 9 actions API key available
Kutt website ↗ Platform Documentation ↗ Capability data verified 2026-07-31
A campaign asset is published in the CMS and needs a trackable link
Agent reads the destination URL, the campaign name and the expiry date from the asset record
Agent calls Get Account Info to confirm the branded domain is registered on the instance
Agent calls Create Link with Reuse enabled so a repeated target returns the existing short link
Agent writes the short URL back to the asset record and into the outbound message
Agent pulls Get Link Stats each week and posts the campaign totals into the marketing channel
The campaign owner approves repointing a link that is already in circulation before the target changes

What This Integration Enables

There are a dozen URL shorteners in this catalog and they all shorten URLs. Kutt earns its place on one argument, and the argument is ownership. A short link is two things: a redirect, and a log of everyone who followed it. Hand both to a hosted shortener and you have handed a third party a clickstream of your customers plus a dependency you cannot inspect. If that vendor's domain gets blocklisted by a mail filter, every link in every scheduled send stops working at once, and you find out from the campaign report. Kutt is open source and self-hostable, so both halves can run where you decide, under your retention rules.

FlowRunner agents drive the whole lifecycle from inside a workflow. They mint links against a verified custom domain, optionally with a chosen address, a visit password, an expiry window or a Reuse flag that returns an existing short link rather than creating a duplicate for a target already shortened. They search the account's links by description, address, target or domain, update targets and expiry, pull per-link visit analytics broken down by browser, operating system, country and referrer, register and remove custom domains, and check that a self-hosted instance is actually up. On New Link fires when someone creates a link on the account, which makes a teammate's manual shortening into the start of a workflow rather than a gap in the record. Kutt exposes no webhooks, so that trigger polls the link list on an interval you set, and the first poll establishes a baseline instead of replaying everything that already existed.

Without FlowRunner

Clickstream handed to a vendor Visit data on your own campaigns lives in someone else's account under their retention policy
A redirect you do not control Every printed and scheduled link depends on a third-party domain continuing to resolve
Links minted by hand Someone shortens URLs one at a time and pastes them back into the campaign record

With FlowRunner

Redirect on infrastructure you choose The shortener is open source and can run self-hosted, so the redirect and the visit log stay with you
Domains registered to your account Links carry a custom domain confirmed on the instance and pointed at it by your own DNS
Links minted inside the flow Each published asset gets its short link and writes it straight back to the record that needed it

Use Case Scenarios

Branded campaign links minted at publish time

A campaign asset goes live in the CMS. The agent reads the destination and the campaign name, confirms with Get Account Info that the branded domain is registered on the instance, and calls Create Link with Reuse enabled so re-running the flow does not litter the account with duplicates pointing at the same page. It sets the expiry to the campaign end date, then writes the short URL back onto the asset record and into the outbound message in Mailchimp. Nobody shortens anything by hand, and every link in the campaign carries a domain the organization owns.

Weekly engagement digest without exporting anything

Each Monday the agent calls List Links filtered to the current campaign's description prefix, then Get Link Stats for each one. The response gives view series over the last day, week, month and year with totals grouped by browser, operating system, country and referrer. The agent assembles the digest and posts it into the marketing channel in Slack, with the links that stopped moving flagged for review. The analytics never leave infrastructure the team controls to produce that report.

A teammate's manual link joins the record

Someone shortens a URL by hand in the Kutt interface for a one-off post. On New Link fires with the full link object, and the agent picks it up: it checks whether the target matches a known campaign asset, files the link against that campaign in Airtable, and tags anything it cannot match for the owner to classify. The convenient path and the tracked path become the same path, which is usually the only way link hygiene survives a busy quarter.

Human-in-Loop Highlight

The dangerous operation in a shortener is not creating a link. It is Update Link changing the target of a link that is already out in the world. The short address does not change, so nothing visible tells anyone the destination moved, and a link printed on an insert, baked into a scheduled send, or pasted into a message thread six weeks ago will silently start going somewhere new. That is a small mechanism with a large blast radius, and it is exactly where an agent should stop.

The realistic trigger is a target that broke. The CMS reports the destination page now returns 404, and the agent can see from Get Link Stats that the short link is still receiving visits and where they are coming from. It gathers that and asks the campaign owner: "Short link on your branded domain for the spring insert is still taking traffic, mostly from the print referrer, and its target now returns 404. Repoint it to the new landing page, restore the old page, or leave it and let the 404 stand?" The owner is the only one who knows whether the printed insert promised something the new page does not deliver. Delete Link sits behind the same gate for a sharper reason: it permanently removes the link and its recorded visit statistics, the address stops resolving immediately, and the address becomes available for reuse, which means a future link could claim it and point at something else entirely. Delete Domain is the widest version of the same move, because every link ever created under that domain stops resolving at once. Nothing about a shortener suggests these are consequential operations, which is precisely why FlowRunner treats them as automation exceptions and routes them to the person whose campaign they belong to.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via preferred channel
Human decides
Agent resumes with decision

Agent Capabilities

9 actions

Links

5
  • Create Link Shorten a target URL and return the resulting short link, optionally setting a custom address, a visit password, a description, an expiration window and a verified custom domain. Used to mint a tracked link at the moment an asset is published. Enable Reuse to return the existing short link when the same target has already been shortened under the same domain, instead of creating a duplicate.
  • List Links Retrieve the account's short links newest first with a total count, supporting free-text search across description, short address, target URL and domain, and paginated with Limit and Skip. Used to resolve links by campaign convention before reporting or bulk maintenance.
  • Update Link Update an existing link by ID, supplying any combination of target URL, short address, description, expiration and password, with omitted fields left unchanged. Used to repoint or extend a link, and the operation that most warrants a person's approval when the link is already circulating.
  • Delete Link Permanently delete a short link and its recorded visit statistics. The address stops resolving immediately and becomes available for reuse, and the action cannot be undone. Used for cleanup of links that were never distributed.
  • Get Link Stats Retrieve visit analytics for a link over the last day, week, month and year, each period reporting a view count series plus totals grouped by browser, operating system, country and referrer, alongside the link's own details and lifetime visit count. Used for engagement digests and for deciding whether a link is still live enough to matter.

Domains

2
  • Create Domain Register a custom domain on the account so links can be branded with it. The domain must already point at the Kutt instance via DNS, and cannot be the instance default domain or one claimed by another account. Optionally set a homepage that visitors reach at the domain root.
  • Delete Domain Remove a custom domain from the account, after which every short link previously created under it stops resolving through that domain. Used when retiring a brand or a campaign domain, and worth confirming against the link list first because the action cannot be undone.

Account and Health

2
  • Get Account Info Retrieve the profile of the account owning the configured API key, including its email and every custom domain registered to it. Used to confirm credentials resolve to the expected account and to discover which domains are available before creating a link.
  • Check API Health Verify that the configured Kutt instance is reachable and serving its API. The endpoint requires no authentication, which makes it the quickest way to distinguish an unreachable or misconfigured instance URL from an invalid API key when troubleshooting a self-hosted deployment.

Triggers

1 triggers

Event Triggers

1
  • On New Link Fires when a new short link is created on the account, emitting the full link object including its short URL, target and ID, and optionally narrowed to links matching a search term. Used to pull manually created links into the same tracking and filing the automated ones get. Kutt exposes no webhooks, so this trigger polls the link list on a configurable interval with a minimum of thirty seconds, and the first poll establishes a baseline without firing, so pre-existing links are never replayed.

Frequently Asked Questions

What can FlowRunner do with Kutt?

FlowRunner agents can run Create Link, List Links, and Update Link in Kutt, plus 6 more actions.

Does connecting Kutt to FlowRunner require OAuth?

No. Kutt connects to FlowRunner with an API key, no OAuth flow required.

Can Kutt trigger a FlowRunner workflow automatically?

Yes. Kutt supports 1 trigger that can start a FlowRunner workflow automatically.

Start building with Kutt

$100 in credits. No card required. Connect in minutes.