DEVELOPER CENTRE

Build with the CKT.Life API

Everything you need to create short links, manage your links and keys, and retrieve usage and analytics from your applications.

API base URLhttps://api.ckt.life
01 · GET STARTED

Quick start

To call the link-management API, you need an active CKT.Life account and an API key. Register or sign in through the portal, then create an API key from your dashboard. The full key is displayed only once, so copy it and store it securely.

Keep your API key private. Treat it like a password. Do not put it in browser-side JavaScript, public repositories, source control or application logs.

Your first API request

Replace YOUR_API_KEY and the destination URL with your own values.

curl -X POST "https://api.ckt.life/api/v1/links" \
  -H "Content-Type: application/json" \
  -H "X-CKT-API-Key: YOUR_API_KEY" \
  -d '{
    "destinationUrl": "https://www.example.com/products",
    "title": "Product page",
    "customAlias": "ExampleAlias",
     "expiresAtUtc": "2026-11-06T00:25:46.791Z",
  }'

A successful request returns the short link, its code and creation details.

{
  "id": "link-id",
  "shortCode": "aB12cd34",
  "shortUrl": "https://ckt.life/aB12cd34",
  "destinationUrl": "https://www.example.com/products",
  "title": "Product page",
  "createdAtUtc": "2026-01-01T12:00:00Z",
  "expiresAtUtc": null,
  "isActive": true
}
02 · SECURITY

Authentication

CKT.Life uses two authentication methods for different purposes.

JWT Bearer

Account endpoints

Use the access token returned by registration or login for customer account and API-key management endpoints.

Authorization: Bearer YOUR_JWT
API key

Link API endpoints

Use an active API key created from your dashboard for link management, usage and analytics.

X-CKT-API-Key: ckt_live_...

Registration and login are public endpoints. Public short-link redirects do not require either credential.

03 · ACCOUNT

Account endpoints

These endpoints create an account or issue a JWT access token. They do not require an API key.

POST/api/auth/register

Create an account and activate the Free plan.

{
                "email": "developer@example.com",
                "password": "Use-a-strong-password-123",
                "companyName": "Example Company"
                }

Success: 201 Created with accessToken, expiresAtUtc, tenantId and plan. Password must be at least 12 characters.

POST/api/auth/login

Authenticate an existing account.

{ "email": "developer@example.com", "password": "your-password" }

Success: 200 OK with a JWT access token and account plan. Invalid credentials return 401 Unauthorized.

04 · CREDENTIALS

API key management

All API-key management operations require a JWT Bearer token. Create and revoke keys from your signed-in account.

POST/api/account/api-keys

Create an API key.

{ "name": "Production integration" }

Returns the new key in apiKey. This is the only time the plaintext key is returned.

GET/api/account/api-keys

List keys for your account. The response includes the key ID, name, creation date and revocation date, but never the secret.

DELETE/api/account/api-keys/{id}

Revoke an API key by its GUID. Returns 204 No Content when successful, or 404 Not Found if the key does not exist for your account.

06 · INSIGHTS

Analytics and usage

Both endpoints require an active API key.

GET/api/v1/links/{code}/analytics

Get click totals for a short code. Returns shortCode, totalClicks, clicksThisMonth, clicksLast30Days and lastClickedAtUtc.

GET/api/v1/usage

Get the current billing-period usage and plan limits, including links created, API requests, tracked clicks and request-rate limits.

07 · REDIRECTS

Public short-link redirects

GET/{code}

Redirect a visitor to the destination URL. No API key or JWT is required. An active short code returns an HTTP redirect; an unknown, inactive or invalid code returns 404 Not Found.

Example: https://ckt.life/yourCode (replace yourCode with a real code).

08 · REFERENCE

Responses and errors

HTTP statusMeaning
200 OKRequest completed successfully.
201 CreatedResource created successfully.
204 No ContentOperation completed with no response body.
400 Bad RequestInvalid request data or URL.
401 UnauthorizedMissing/invalid API key or invalid login credentials.
404 Not FoundResource or short code not found.
409 ConflictEmail or custom alias is already in use.
429 Too Many RequestsAPI request or link creation allowance has been exceeded. Check the response message and retry later.
5xxUnexpected server-side error.

Common API error format

{
            "code": "api_key_required",
            "message": "Supply an API key using X-CKT-API-Key."
            }

Validation errors may be returned as a standard ASP.NET Core validation-problem response. Do not repeatedly retry an authentication or validation failure without correcting the request.

Need a hand integrating?

Contact the CKT.Life team if you need help with API access or an integration.

Contact API support