URL Shortener API in 2026 Complete Guide to Cuttly Regular and Team API

Manual link shortening does not scale.

One link at a time works when you share one link at a time.
When your application generates thousands of links per day — for users, for campaigns, for notifications, for trackable documents — manual shortening is not a workflow. It is a bottleneck.

An API removes the bottleneck entirely.
Link creation, statistics retrieval, branded domain usage — all automated, all integrated, all running without human intervention.


Developer Guide & API
April 3, 2026
URL Shortener API 2026 — Complete Cuttly API Guide

What This Guide Covers

  • Regular API vs Team API — which to use and when
  • How to get your API key
  • Link shortening via API — parameters, request format and responses
  • Using branded domains with the API
  • Retrieving click statistics via API
  • Editing and deleting links via API
  • API rate limits per plan
  • Code examples in PHP, Python, JavaScript and Java
  • No-code integrations: Zapier, Make, Zoho Flow and others
  • Common API errors and how to handle them

Regular API vs Team API: Which Do You Need?

Cuttly provides two separate API systems for different use cases. Understanding which applies to your situation determines which documentation, authentication method and rate limits you work with.

Feature Regular API Team API
AuthenticationPersonal API keyTeam-level API key
Creates links inYour individual accountTeam workspace
Available onAll plans (free included)Team plans only
Multi-user supportNo — single accountYes — shared team workspace
Branded domain supportYes — paid plansYes — team branded domains
Rate limit (free)3 req / 60sNot available on free
Rate limit (Team plan)180 req / 60sSeparate team limit
Documentation URLcutt.ly/api-documentation/regular-apicutt.ly/api-documentation/team-api

For individual developers, SaaS products, personal automation and single-account workflows: use the Regular API. For organisations where multiple team members need to create links under shared workspaces and branded domains: use the Team API.

The Regular API is for one person building something.
The Team API is for a team building something together.

How to Get Your Cuttly API Key

Your API key authenticates every request to the Cuttly API. It identifies your account and determines your rate limits and available features.

Treat your API key like a password. Do not expose it in client-side code, public repositories or frontend JavaScript that users can inspect. Store it as an environment variable in server-side applications.

Link Shortening via API

The core API endpoint for shortening links is a simple GET request to:

https://cutt.ly/api/api.php

Request Parameters

Parameter Value Required Description
key Your API key Required Authenticates the request to your account
short URL-encoded destination URL Required The long URL you want to shorten — must be URL-encoded
name Desired slug Optional Your preferred short link slug — if not taken. If omitted, a random slug is generated.
userDomain 1 Optional Set to 1 to use your active branded domain. Requires any paid subscription.
noTitle 1 Optional Disables fetching the page title from the destination — faster response time. Team Enterprise plan only.
public 1 Optional Sets click stats as publicly visible for this link. Single plan and above.

API Response Status Codes

Status Meaning
1The URL has already been shortened from this domain — returns the existing short link
2The entered value is not a valid URL
3The requested slug name is already taken
4Invalid API key
5URL failed validation — contains invalid characters
6The domain is blocked
7Success — the link has been shortened
8Monthly link limit reached — upgrade required

When status is 7 (success), the response also includes:

  • url.shortLink — the shortened URL
  • url.fullLink — the original destination URL
  • url.date — the date the link was created
  • url.title — the page title of the destination

Code Examples

Here are ready-to-use examples in the four most common languages. Replace YOUR_API_KEY and YOUR_URL with your actual values.

PHP

$url = urlencode('https://yoursite.com/your-long-url');
$key = 'YOUR_API_KEY';
 
$json = file_get_contents(
    "https://cutt.ly/api/api.php?key={$key}&short={$url}"
);
 
$data = json_decode($json, true);
 
if ($data['url']['status'] === 7) {
    echo $data['url']['shortLink'];
} else {
    echo 'Error: status ' . $data['url']['status'];
}

Python

import urllib.parse
import requests
 
key = 'YOUR_API_KEY'
url = urllib.parse.quote('https://yoursite.com/your-long-url')
 
response = requests.get(
    f'https://cutt.ly/api/api.php?key={key}&short={url}'
)
 
data = response.json()
 
if data['url']['status'] == 7:
    print(data['url']['shortLink'])
else:
    print(f"Error: status {data['url']['status']}")

JavaScript (Node.js / fetch)

const key = 'YOUR_API_KEY';
const url = encodeURIComponent('https://yoursite.com/your-long-url');
 
const response = await fetch(
    `https://cutt.ly/api/api.php?key=${key}&short=${url}`
);
 
const data = await response.json();
 
if (data.url.status === 7) {
    console.log(data.url.shortLink);
} else {
    console.log(`Error: status ${data.url.status}`);
}

Java

URL url = new URL(
    "https://cutt.ly/api/api.php?key=YOUR_API_KEY&short="
    + URLEncoder.encode("https://yoursite.com/your-long-url", "UTF-8")
);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "application/json");
 
BufferedReader br = new BufferedReader(
    new InputStreamReader(conn.getInputStream())
);
String output;
StringBuilder sb = new StringBuilder();
while ((output = br.readLine()) != null) {
    sb.append(output);
}
conn.disconnect();
System.out.println(sb.toString());

Using a Branded Domain with the API

To create short links using your branded custom domain instead of cutt.ly, add the userDomain=1 parameter to your request. The API will use the active, approved domain connected to your account.

$url = urlencode('https://yoursite.com/page');
$key = 'YOUR_API_KEY';
 
$json = file_get_contents(
    "https://cutt.ly/api/api.php?key={$key}&short={$url}&userDomain=1"
);

Requirements for branded domain API usage:

  • Any paid Cuttly subscription (Starter, Single, Team or Team Enterprise)
  • A custom domain connected to your account with status: active and approved
  • The userDomain=1 parameter included in the request

If you have multiple branded domains connected (Single plan supports 5, Team supports 10), the API uses the primary active domain. For multi-domain API management, the Team API provides more granular domain assignment control.

Requesting a Specific Slug via API

To request a specific custom slug for your short link, include the name parameter:

$url   = urlencode('https://yoursite.com/page');
$key   = 'YOUR_API_KEY';
$name  = 'summer-sale';
 
$json = file_get_contents(
    "https://cutt.ly/api/api.php?key={$key}&short={$url}&name={$name}"
);

If the requested slug is already taken, the API returns status 3. In this case, either choose a different slug or omit the name parameter to receive an auto-generated one.

Note that the name parameter is subject to the same monthly custom slug limit as your plan — 3 per month on free, 30 on Starter, unlimited on Single and above.

Retrieving Click Statistics via API

Use cases for programmatic statistics retrieval:

  • Building internal dashboards that display click data alongside other business metrics
  • Automated weekly or monthly click reports sent via email or Slack
  • Real-time monitoring systems that alert when a link's click count crosses a threshold
  • Data pipelines that pull Cuttly click data into a data warehouse or BI tool
  • SaaS applications where users see their own link analytics inside your product

API Rate Limits by Plan

Cuttly API rate limits are applied per 60-second window. Exceeding the limit returns a Too many requests error. Build retry logic with exponential backoff into any application that makes frequent API calls.

Plan API Rate Limit Monthly Links via API
Free3 requests / 60s30 (shared with dashboard)
Starter ($12/mo)6 requests / 60s300 (shared with dashboard)
Single ($25/mo)60 requests / 60s5,000 (shared with dashboard)
Team ($99/mo)180 requests / 60s20,000 (shared with dashboard)
Team Enterprise ($149/mo)360 requests / 60s50,000 (shared with dashboard)

The monthly link limit is shared between links created in the dashboard and links created via API. There is no separate API-only allocation — all link creation counts toward the same monthly total regardless of how the link was created.

Handling API Errors Correctly

Robust API integrations handle errors gracefully rather than failing silently. Here are the errors you are most likely to encounter and how to handle each one.

Error / Status Cause Recommended Handling
Status 3 — slug taken The requested name slug is already in use Retry with a different slug or omit name for auto-generated
Status 4 — invalid API key Wrong key, expired key or wrong account Verify the key in Edit Account — regenerate if necessary
Status 5 — validation failed URL contains invalid characters or format Ensure proper URL encoding with urlencode() or encodeURIComponent()
Status 6 — blocked domain Destination domain is on Cuttly's blocklist The destination URL cannot be shortened — do not retry
Status 8 — limit reached Monthly link creation limit exhausted Upgrade plan or wait until the next billing cycle
401 Unauthorized API key missing or incorrect Check key parameter — verify in your account settings
Too many requests Rate limit exceeded Implement exponential backoff — wait before retrying
You do not own provided domain userDomain=1 but domain not owned or not active Verify domain is connected and approved in Branded Domains settings

Team API: Multi-User Link Management

Key differences from the Regular API:

  • Team-level authentication. The Team API uses a team API key rather than a personal key — allowing multiple team members to create links under the same workspace without sharing individual account credentials.
  • Shared workspace links. All links created via the Team API appear in the team's shared dashboard, visible to all team members with appropriate permissions.
  • Team branded domains. Use team-level branded domains — domains connected to the team workspace rather than an individual account — in API-created links.
  • Higher rate limits. Team plans have higher API rate limits reflecting the higher-volume use cases teams typically have.

The Team API is the right choice for:

  • Agencies creating short links for multiple clients under shared workspaces
  • Marketing platforms that generate links on behalf of multiple users
  • Organisations where a central system creates links consumed across multiple departments
  • SaaS products that provision short links for their own customers using team infrastructure

No-Code API Integrations: Zapier, Make and More

Not every team that needs API-level link automation has developer resources. Cuttly's integrations with no-code and low-code platforms provide API functionality — automated link creation, data syncing — through visual workflow builders that require no programming knowledge.

Zapier

Zapier connects Cuttly to thousands of other applications through trigger-and-action workflows called Zaps. Both Regular and Team versions are available on Zapier.

Example Zapier workflows:

  • New row added to Google Sheets → automatically create a Cuttly short link → write the short link back to the sheet
  • New Typeform submission → shorten the confirmation page URL → send via email with the short link
  • New WordPress post published → create a short link for the post → post to Slack channel
  • New HubSpot contact → create a personalised short link → add to contact record

Make (formerly Integromat)

Make provides a visual workflow builder with more complex branching logic than Zapier, making it suitable for multi-step automation scenarios. Both Cuttly Regular and Team integrations are available.

Example Make scenarios:

  • Batch process a list of URLs from Airtable → shorten each → store results in a new Airtable table
  • Monitor a RSS feed → for each new item, create a short link → add to a Buffer social media queue
  • New e-commerce order → generate a unique short link for the order status page → send via WhatsApp

Other Available Integrations

Beyond Zapier and Make, Cuttly connects to:

  • Zoho Flow — for teams in the Zoho ecosystem
  • OttoKit — automation platform with Cuttly native support
  • Pabbly Connect — cost-effective alternative to Zapier for high-volume workflows
  • ViaSocket — workflow automation with Cuttly integration
  • Pipedream — developer-friendly workflow platform with code-level customisation

Common API Integration Patterns

Understanding the most common ways developers use the Cuttly API helps you design your integration correctly from the start.

Pattern 1 — On-Demand Link Creation

The simplest pattern: a user or system action triggers a link creation request. The API returns the short link, which is immediately displayed or stored.

Examples: a CMS plugin that automatically shortens each new post URL on publish, a CRM that creates a personalised short link for each sales prospect, a marketing tool that shortens each campaign URL as it is configured.

Pattern 2 — Batch Processing

A list of URLs is processed in sequence, with each URL shortened and the results collected. Respect rate limits — implement delays between requests to stay within the allowed requests-per-60-seconds window for your plan.

For bulk shortening of very large lists (thousands of URLs), the CSV bulk import in the Cuttly dashboard may be more efficient than repeated API calls — available on the Single plan (100 links/month) and Team plans (2,000–5,000 links/month).

Pattern 3 — Link-Per-User

Each user of your application receives a unique short link pointing to a personalised destination. The API creates these links programmatically at user creation or first action. Analytics from each user's unique link flow back through the API statistics endpoint into your application's reporting.

This pattern is common in referral programs, affiliate tracking, personalised campaign landing pages and user-specific document sharing.

Pattern 4 — Dynamic Redirect Management

Short links are created once and their destinations are updated as content changes. The same short link — printed on physical materials, embedded in emails, shared on social — always points to the most current destination. The API handles both creation and destination updates programmatically.

Best Practices for URL Shortener API Integration

  • Always URL-encode the destination URL. The short parameter must be properly URL-encoded before being passed to the API. Use urlencode() in PHP, urllib.parse.quote() in Python, or encodeURIComponent() in JavaScript. Failing to encode correctly is the most common cause of status 5 errors.
  • Store the API key as an environment variable. Never hardcode your API key into source code that might be committed to a repository. Use environment variables or a secrets management system.
  • Handle all status codes explicitly. Do not assume status 7 (success) — check the status code on every response and handle each case. A status 8 (limit reached) should trigger an alert, not a silent failure.
  • Implement exponential backoff for rate limit errors. When you receive a "too many requests" error, wait before retrying — and increase the wait time on each successive failure. A naive retry loop will simply hit the rate limit repeatedly.
  • Cache short links where possible. If your application shortens the same URL repeatedly, cache the result instead of making a new API call each time. The API returns status 1 for URLs it has already shortened from your domain, but caching avoids the round trip entirely.
  • Test with the free plan before scaling. The free plan's 3 requests/60s limit is enough to validate your integration logic before committing to a paid plan for production volume.
  • Use the name parameter thoughtfully. Requesting a specific slug risks a status 3 collision if the slug is taken. For high-volume automated link creation, omit name and use auto-generated slugs — or generate slugs with enough uniqueness (timestamp-based, UUID-based) to avoid collisions.

Final Verdict

A URL shortener API turns a manual, one-at-a-time process into infrastructure.
Links that previously required a human to create, customise and manage are created, customised and managed automatically — at whatever volume your application requires.

Cuttly's API is straightforward by design. A single GET request. A JSON response. Clear status codes. Rate limits that scale with your plan. And the same branded domain, analytics and feature set available via API that you access in the dashboard.

For teams without developer resources, the no-code integrations — Zapier, Make, Zoho Flow and others — provide the same automation capability through visual workflow builders that require no code.


The API does not add new features to your link management.
It removes the only constraint that was left: the need for a human to press the button.

FAQ: URL Shortener API

How do I shorten a URL using an API?

Make a GET request to https://cutt.ly/api/api.php with your key (API key) and short (URL-encoded destination URL) parameters. The API returns a JSON response — status 7 means success and the url.shortLink field contains your shortened URL. Your API key is available in Edit Account in your Cuttly dashboard.

Is the Cuttly API free?

Yes. The Regular API is available on all Cuttly plans including free, with a rate limit of 3 requests per 60 seconds. Rate limits increase with paid plans: 6 on Starter, 60 on Single, 180 on Team, 360 on Team Enterprise. Using a branded domain via API (userDomain=1) requires any paid subscription.

What is the difference between Cuttly Regular API and Team API?

The Regular API uses a personal API key and creates links in your individual account. The Team API uses a team-level key and creates links in a shared team workspace — supporting multi-user environments with shared branded domains and higher rate limits. The Team API is available on Team plans only.

Can I use a branded domain with the Cuttly API?

Yes. Add userDomain=1 to your API request. The API uses the active branded domain connected to your account. This requires any paid Cuttly subscription and an approved domain in your Branded Domains settings.

Can I retrieve click statistics via the Cuttly API?

What no-code integrations are available for Cuttly?

URL Shortener

Cuttly simplifies link management by offering a user-friendly URL shortener that includes branded short links. Boost your brand’s growth with short, memorable, and engaging links, while seamlessly managing and tracking your links using Cuttly's versatile platform. Generate branded short links, create customizable QR codes, build link-in-bio pages, and run interactive surveys—all in one place.

Cuttly - Consistently Rated
Among Top URL Shorteners

Cuttly isn’t just another URL shortener. Our platform is trusted and recognized by top industry players like G2 and SaaSworthy. We're proud to be consistently rated as a High Performer in URL Shortening and Link Management, ensuring that our users get reliable, innovative, and high-performing tools.C