Back to Home

Developers

Programmatic access to Qick.to. Create and manage short links from your own applications.

Last updated: June 21, 2026

Overview

The Qick.to REST API lets you shorten URLs, list and manage your links, and retrieve account information from any language or platform. All endpoints require an API key and return JSON.

Authentication

Include your API key in the x-api-key header on every request. Generate or rotate your key from the API Keys page in your dashboard. Keep your key secret — never expose it in client-side code or public repositories.

curl https://qick.to/api/v1/user/me \
  -H "x-api-key: YOUR_API_KEY"

Base URL

All API routes are prefixed with:

https://qick.to/api/v1

Create a short link

POST /links

Shorten a URL and optionally set a custom alias or expiration.

  • url (required) — the destination URL
  • customAlias (optional) — a custom short code, e.g. my-brand
  • expiresInDays (optional) — number of days until the link expires
curl -X POST https://qick.to/api/v1/links \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "url": "https://example.com/very/long/path",
    "customAlias": "my-link"
  }'

Returns 201 Created with the full link object including shortUrl, click counts, and metadata.

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "originalUrl": "https://example.com/very/long/path",
  "shortCode": "my-link",
  "shortUrl": "https://qick.to/my-link",
  "title": null,
  "description": null,
  "image": null,
  "clicks": 0,
  "uniqueClicks": 0,
  "reused": 0,
  "isActive": true,
  "source": "api",
  "createdAt": "2026-06-21T12:00:00.000Z",
  "expiresAt": null
}

List your links

GET /links

Returns all links belonging to the authenticated user, ordered by creation date (newest first).

curl https://qick.to/api/v1/links \
  -H "x-api-key: YOUR_API_KEY"

Get a link

GET /links/:id

Retrieve a single link by its UUID. Returns 404 if the link doesn't exist or belongs to another user.

curl https://qick.to/api/v1/links/550e8400-e29b-41d4-a716-446655440000 \
  -H "x-api-key: YOUR_API_KEY"

Update a link

PATCH /links/:id

Update mutable fields on an existing link. All body fields are optional.

  • originalUrl — change the destination URL
  • title — set a display title
  • description — set a description
  • isActive — enable or disable the link
curl -X PATCH https://qick.to/api/v1/links/550e8400-e29b-41d4-a716-446655440000 \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{ "isActive": false }'

Delete a link

DELETE /links/:id

Permanently delete a link. Returns 204 No Content on success.

curl -X DELETE https://qick.to/api/v1/links/550e8400-e29b-41d4-a716-446655440000 \
  -H "x-api-key: YOUR_API_KEY"

Get current user

GET /user/me

Returns the profile of the user associated with the API key.

curl https://qick.to/api/v1/user/me \
  -H "x-api-key: YOUR_API_KEY"
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "Jane Developer",
  "email": "jane@example.com",
  "image": null,
  "createdAt": "2026-01-15T08:30:00.000Z"
}

Error responses

Errors return a JSON body with a message field:

  • 401 — missing or invalid API key
  • 403 — account suspended
  • 404 — link not found
  • 409 — custom alias already in use or reserved
  • 400 — invalid request (bad URL, validation error)
{ "message": "Alias already in use" }

Rate limits & best practices

  • Store your API key in environment variables, not in source code
  • Use server-side requests — never call the API from a browser
  • Reuse existing links when possible; duplicate URLs may return the same short code
  • Handle 409 conflicts when creating custom aliases

Get your API key

Create an account, then visit Dashboard → API Keys to generate your key and start building.

Developers & API - Qick.to | Qick.to