Analytics

Analytics

Access per-link click analytics and account-level statistics. Includes geographic, device, browser, referrer, and OS breakdowns.

GET /api/v1/analytics/{domain}/{slug}

Get detailed click analytics for a specific link, including geographic, device, browser, referrer, and OS breakdowns.

Available on the Advanced+ plan.

Path Parameters

NameTypeRequiredDescription
domainstringRequiredThe link’s domain (e.g., “u2l.ai”)
slugstringRequiredThe link’s slug (e.g., “my-link”)

Query Parameters

NameTypeRequiredDescription
timeRangenumberOptionalNumber of days of data to return (default: 30)
curl "https://u2l.ai/api/v1/analytics/u2l.ai/my-link?timeRange=30" \
  -H "Authorization: Bearer u2l_live_your_api_key"
const response = await fetch(
  "https://u2l.ai/api/v1/analytics/u2l.ai/my-link?timeRange=30",
  {
    headers: {
      "Authorization": "Bearer u2l_live_your_api_key",
    },
  }
);

const analytics = await response.json();
console.log(analytics.totalClicks);
console.log(analytics.countries);
import requests

response = requests.get(
    "https://u2l.ai/api/v1/analytics/u2l.ai/my-link",
    headers={"Authorization": "Bearer u2l_live_your_api_key"},
    params={"timeRange": 30},
)

analytics = response.json()
print(analytics["totalClicks"])
print(analytics["countries"])
{
  "totalClicks": 1523,
  "clicksInRange": 894,
  "clicksToday": 47,
  "clicksThisWeek": 312,
  "timeRange": 30,
  "countries": [
    { "country": "United States", "clicks": 623 },
    { "country": "India", "clicks": 412 },
    { "country": "United Kingdom", "clicks": 189 }
  ],
  "devices": {
    "mobile": 847,
    "desktop": 676
  },
  "browsers": [
    { "browser": "Chrome", "clicks": 612 },
    { "browser": "Safari", "clicks": 438 },
    { "browser": "Firefox", "clicks": 201 }
  ],
  "referrers": [
    { "referrer": "twitter.com", "clicks": 234 },
    { "referrer": "direct", "clicks": 189 },
    { "referrer": "google.com", "clicks": 156 }
  ],
  "os": [
    { "os": "iOS", "clicks": 534 },
    { "os": "Windows", "clicks": 412 },
    { "os": "Android", "clicks": 313 }
  ]
}

Account Stats

GET /api/v1/stats

Get account-level statistics including total links, clicks, and plan limits.

curl "https://u2l.ai/api/v1/stats" \
  -H "Authorization: Bearer u2l_live_your_api_key"
const response = await fetch("https://u2l.ai/api/v1/stats", {
  headers: {
    "Authorization": "Bearer u2l_live_your_api_key",
  },
});

const stats = await response.json();
console.log(stats.totalLinks, stats.totalClicks);
import requests

response = requests.get(
    "https://u2l.ai/api/v1/stats",
    headers={"Authorization": "Bearer u2l_live_your_api_key"},
)

stats = response.json()
print(stats["totalLinks"], stats["totalClicks"])
{
  "totalLinks": 142,
  "totalClicks": 8923,
  "totalQRCodes": 34,
  "thisWeekClicks": 456,
  "plan": "advanced",
  "limits": {
    "maxLinks": "unlimited",
    "maxQRCodes": "unlimited",
    "apiRequestsPerMinute": 120,
    "apiRequestsPerDay": 50000
  }
}