Free public API
Automate links from your code.
Same endpoints that power this site. JSON in, JSON out. No keys for the basic /api/shorten call.
1. Shorten a URL
POST https://links.techclick.in/api/shorten
Content-Type: application/json
{
"longUrl": "https://example.com/some/long/path",
"customSlug": "launch", // optional, 3-30 chars [a-z0-9_-]
"expiresIn": "7d", // optional: 1h, 24h, 7d, 30d, 90d, 1y, or YYYY-MM-DD
"maxVisits": 100, // optional, 1 to 1,000,000
"tag": "diwali", // optional, 2-24 chars [a-z0-9-]
"title": "Diwali Landing Page", // optional, max 120 chars
"forwardQuery": true // optional, forward query params to longUrl
}
Returns:
{
"shortUrl": "https://short.techclick.in/launch",
"shortCode": "launch",
"longUrl": "https://example.com/some/long/path",
"validUntil": "2026-05-12T...",
"maxVisits": 100,
"tags": ["diwali"],
"title": "Diwali Landing Page",
"dateCreated": "2026-05-05T..."
}
2. Get info / click count
GET https://links.techclick.in/api/info/{shortCode}
{
"shortUrl": "https://short.techclick.in/launch",
"shortCode": "launch",
"longUrl": "https://example.com/...",
"visitsCount": 1342,
"validUntil": "2026-05-12T...",
"maxVisits": null,
"tags": ["diwali"],
"title": "Diwali Landing Page",
"dateCreated": "2026-05-05T..."
}
3. Bulk shorten (max 10)
POST https://links.techclick.in/api/bulk
Content-Type: application/json
{
"urls": [
"https://example.com/page-1",
"https://example.com/page-2"
],
"expiresIn": "30d", // optional
"tag": "campaign-x" // optional
}
Rate limits
/api/shortenโ 20 requests / hour / IP/api/bulkโ 5 requests / hour / IP (each call = up to 10 URLs)/api/info/{code}โ 30 requests / minute / IP
Quick examples
cURL:
curl -X POST https://links.techclick.in/api/shorten \
-H "Content-Type: application/json" \
-d '{"longUrl":"https://anthropic.com","expiresIn":"7d"}'
Python:
import requests
r = requests.post("https://links.techclick.in/api/shorten",
json={"longUrl": "https://example.com", "tag": "blog"})
print(r.json()["shortUrl"])
Node.js:
const r = await fetch("https://links.techclick.in/api/shorten", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ longUrl: "https://example.com" })
});
const data = await r.json();
console.log(data.shortUrl);
Need higher limits or your own domain?
Pro plan unlocks higher rate limits, an API key, custom domain, and richer analytics. See pricing โ