QLink Public API

Bulk URL shortening API with click analytics

Create short links in bulk, list all links, and pull click statistics by date, country, and device. Built for marketing workflows and Google Sheets automation.

  • • Bulk link creation with a single request
  • • Short URLs only (no internal IDs)
  • • EU-hosted, privacy-first infrastructure

Base URL

https://api.qlink.fi/v1

Authentication

Authorization: Bearer <API_KEY>

Bulk create

POST /links/bulk

Quickstart

Use your API key from the QLink app. All requests are authenticated via the Authorization header.

Create a short link

curl -X POST https://api.qlink.fi/v1/links \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"original_url":"https://example.com"}'

Bulk create short links

curl -X POST https://api.qlink.fi/v1/links/bulk \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"links":[{"original_url":"https://example.com/a"},\
                {"original_url":"https://example.com/b"}]}'

List links

curl -X GET "https://api.qlink.fi/v1/links?limit=50&order=desc&search=example.com" \
  -H "Authorization: Bearer $API_KEY"

Get stats with date range

curl -X GET "https://api.qlink.fi/v1/stats?dimensions=date&start_date=2026-01-01&end_date=2026-01-31" \
  -H "Authorization: Bearer $API_KEY"

Endpoints

The API exposes short URLs only. No internal IDs are required.

Link management

  • POST /links — create a short link
  • POST /links/bulk — create many links
  • GET /links — list your links

Analytics & quota

  • GET /stats — click analytics
  • GET /quota — plan usage

Built for bulk link creation

Create hundreds of campaign short links in a single request. Pair with Google Sheets for fast campaign setup and reporting. Bulk creation is the fastest way to launch large campaigns with clean, trackable links.

Batch ready

Send multiple URLs and receive short links back instantly.

Analytics retention

Retention windows depend on your plan (7/30/90/180 days).

Reliable quotas

Use /quota to monitor usage in real time.

Rate limits

Rate limits are enforced per API key. Each response includes rate limit headers so you can manage throughput safely.

  • X-RateLimit-Limit — requests per minute
  • X-RateLimit-Remaining — remaining requests
  • X-RateLimit-Reset — reset timestamp

Errors

Errors use a consistent JSON envelope and standard HTTP status codes.

{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  }
}
  • 400 invalid request
  • 401 invalid API key
  • 403 plan limit exceeded or forbidden
  • 409 conflict (custom back-halve already exists)
  • 422 validation errors
  • 429 rate limit exceeded
  • 503 service not ready