API
A JSON API with no key and no registration.
Base
Every endpoint lives on api.kortste.link. No key is required.
Shorten a link
curl -X POST https://api.kortste.link/v1/links \
-H 'Content-Type: application/json' \
-d '{"url":"https://seznam.cz/m/sem/1345"}'
{
"code": "fp9qm3",
"shortUrl": "https://kortste.link/fp9qm3",
"url": "https://seznam.cz/m/sem/1345",
"createdAt": "2026-08-22T18:49:11.665Z"
}
Look a link up
curl https://api.kortste.link/v1/links/fp9qm3
Returns 200 with the same fields, 404 if the code does not exist, or 410 if the link was taken down.
The redirect
curl -i https://kortste.link/fp9qm3
Returns 302 with the destination in the Location header. Deliberately 302 and not 301: a permanent redirect is remembered by browsers more or less forever, which would make a link impossible to take back.
Report abuse
curl -X POST https://api.kortste.link/v1/abuse \
-H 'Content-Type: application/json' \
-d '{"code":"fp9qm3","reason":"phishing"}'
Errors
Errors follow RFC 9457 and come back as application/problem+json with type, title, status and detail.
- 400
- The body is not valid JSON.
- 422
- The link cannot be shortened. The detail field says why.
- 429
- Too many requests. The Retry-After header says how long to wait.
- 503
- No code could be allocated.
Limits
Ten create requests per minute and two hundred per day, per client. Redirects are never limited.