Quick Start
Base URL
Section titled “Base URL”All API requests go to:
https://qck.sh/public-api/v1Every response uses a standard envelope:
{ "success": true, "data": { ... }, "meta": { "request_id": "0190a8b2-...", "timestamp": "2026-04-08T12:00:00Z" }}On errors:
{ "success": false, "error": { "code": "ERROR_CODE", "message": "What went wrong" }, "meta": { "request_id": "0190a8b2-...", "timestamp": "2026-04-08T12:00:00Z", "status": 400 }}Authentication and rate-limit middleware errors use a flat shape ("error": "CODE" at the top level). See Errors.
1. Get an API key
Section titled “1. Get an API key”- Sign up at qck.sh/app/signup (free, no card required)
- Go to API in the dashboard
- Click Create API Key and copy it. It’s shown only once
Keys start with qck_ and go in the X-API-Key header on every request.
2. Create a short link
Section titled “2. Create a short link”curl -X POST https://qck.sh/public-api/v1/links \ -H "X-API-Key: qck_your_api_key_here" \ -H "Content-Type: application/json" \ -d '{"url": "https://example.com"}'Returns 201 Created:
{ "success": true, "data": { "id": "550e8400-e29b-41d4-a716-446655440000", "short_code": "abc123", "short_url": "https://qck.sh/abc123", "original_url": "https://example.com", "created_at": "2026-04-08T12:00:00Z" }, "meta": { "request_id": "0190a8b2-...", "timestamp": "2026-04-08T12:00:00Z", "status": 201 }}3. Check analytics
Section titled “3. Check analytics”curl https://qck.sh/public-api/v1/links/{id}/stats \ -H "X-API-Key: qck_your_api_key_here"Next steps
Section titled “Next steps”- Authentication: permissions, IP allowlists, key management
- Links guide: bulk create, custom aliases, tags, expiration
- Analytics guide: timeseries, geography, devices, referrers
- API Reference: full endpoint documentation