๐Ÿ”— Shortly

API documentation

The programmatic API lets you create and inspect short links from your own code. Generate an API key on the API Keys page, then send it on every request using either header:

Authorization: Bearer usk_your_key_here
# or
X-API-Key: usk_your_key_here

Base URL: https://go.smartmoneytools.in/api/v1

Create a short link

POST /api/v1/links

curl -X POST https://go.smartmoneytools.in/api/v1/links \
  -H "Authorization: Bearer usk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/a/very/long/link","title":"Docs","code":"my-code"}'

code and title are optional. Returns 201:

{
  "id": 1,
  "code": "my-code",
  "short_url": "https://go.smartmoneytools.in/my-code",
  "long_url": "https://example.com/a/very/long/link",
  "title": "Docs",
  "created_at": "2026-07-20 10:00:00"
}

List your links

GET /api/v1/links โ€” returns your links with click counts.

Get a link with analytics

GET /api/v1/links/:code

curl https://go.smartmoneytools.in/api/v1/links/my-code \
  -H "Authorization: Bearer usk_your_key_here"
{
  "code": "my-code",
  "short_url": "https://go.smartmoneytools.in/my-code",
  "analytics": {
    "total_clicks": 42,
    "by_country": [{ "label": "United States", "n": 20 }],
    "by_platform": [{ "label": "Windows", "n": 18 }],
    "by_device": [{ "label": "desktop", "n": 30 }],
    "by_social_source": [{ "label": "X (Twitter)", "n": 12 }],
    "by_browser": [{ "label": "Chrome", "n": 25 }],
    "clicks_over_time": [{ "label": "2026-07-19", "n": 8 }]
  }
}

Delete a link

DELETE /api/v1/links/:code โ€” returns 204 on success.

Errors

Errors return a JSON body { "error": "message" } with an appropriate status code (400 invalid input, 401 bad/missing key, 404 not found, 409 code taken).