lnkz.tr API
API herkese açık değildir. Kullanmak için hesap açmanız, panelden bir API anahtarı üretmeniz ve hesabınızda kontör bulunması gerekir.
Kimlik doğrulama
Panelden ürettiğiniz API kullanıcı adı ve şifresini HTTP Basic Auth ile gönderin. Şifre yalnızca üretim anında gösterilir.
curl -u "lk_9f3c2a71b0e84d55:sk_XXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
https://lnkz.tr/api/v1/me
Alternatif başlıklar:
X-Api-Key-Id: lk_9f3c2a71b0e84d55
X-Api-Key-Secret: sk_XXXXXXXXXXXXXXXXXXXXXXXXXXXX
# veya
Authorization: Bearer lk_9f3c2a71b0e84d55.sk_XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Kısa link oluştur
POST /api/v1/links
Her başarılı istek 1 kontör harcar. Doğrulama hatasında kontör iade edilir.
curl -u "$KEY_ID:$KEY_SECRET" \
-H "Content-Type: application/json" \
-X POST https://lnkz.tr/api/v1/links \
-d '{
"url": "https://randevu.selfklinik.com/?GUID=a8faa905-477a-11f0-89df-52e18006e243",
"title": "Randevu bağlantısı",
"tags": ["klinik", "randevu"],
"expires_at": "2026-12-31 23:59:00",
"max_clicks": 5000
}'
Yanıt:
{
"ok": true,
"link": {
"id": 1042,
"code": "REQSHUW1",
"short_url": "https://lnkz.tr/REQSHUW1",
"target_url": "https://randevu.selfklinik.com/?GUID=a8faa905-477a-11f0-89df-52e18006e243",
"title": "Randevu bağlantısı",
"tags": ["klinik", "randevu"],
"clicks": 0,
"max_clicks": 5000,
"expires_at": "2026-12-31 23:59:00",
"is_active": true,
"protected": false,
"qr_url": "https://api.qrserver.com/v1/create-qr-code/?...",
"created_at": "2026-07-28 10:15:00"
},
"credits_charged": 1,
"credits_balance": 999
}
| Alan | Tip | Açıklama |
|---|---|---|
url | string | Zorunlu. http/https hedef adres. |
code | string | İsteğe bağlı özel kod (3-32 karakter). |
title | string | Panelde görünen başlık. |
tags | array|string | Etiketler. |
expires_at | string | Y-m-d H:i:s biçiminde bitiş zamanı. |
max_clicks | int | Bu sayıdan sonra link kapanır. |
password | string | Link parolası. |
Linkleri listele
GET /api/v1/links/list?limit=25&offset=0
Listeleme kontör harcamaz.
Link detayı ve silme
GET /api/v1/links/{id|code}
DELETE /api/v1/links/{id|code}
curl -u "$KEY_ID:$KEY_SECRET" https://lnkz.tr/api/v1/links/REQSHUW1
curl -u "$KEY_ID:$KEY_SECRET" -X DELETE https://lnkz.tr/api/v1/links/REQSHUW1
AI önerileri
POST /api/v1/ai/suggest
task alanı: slug, meta veya social. Kontör maliyeti fiyatlandırma sayfasında listelenir.
curl -u "$KEY_ID:$KEY_SECRET" \
-H "Content-Type: application/json" \
-X POST https://lnkz.tr/api/v1/ai/suggest \
-d '{
"task": "slug",
"url": "https://ornek.com/kampanyalar/yaz-indirimi-2026",
"context": "Yaz kampanyası açılış sayfası, sosyal medyada paylaşılacak"
}'
{
"ok": true,
"task": "slug",
"result": {
"suggestions": [
{ "code": "yaz-indirimi", "reason": "Kampanya adı doğrudan tanınır" },
{ "code": "yaz26-firsat", "reason": "Dönemi de belirtir" }
]
},
"credits_charged": 5,
"credits_balance": 994
}
Hesap bilgisi
GET /api/v1/me
Bakiye, toplam link ve tıklama sayısı ile güncel kontör maliyetlerini döner.
Hatalar ve limitler
| HTTP | type | Anlamı |
|---|---|---|
| 401 | unauthorized | Anahtar geçersiz veya iptal edilmiş. |
| 402 | insufficient_credits | Kontör yetersiz. |
| 404 | not_found | Link bulunamadı. |
| 422 | invalid_request | Geçersiz alan veya kullanılmış kod. |
| 429 | rate_limited | Anahtar başına dakikada 120 istek sınırı. |
Hata yanıtları her zaman { "ok": false, "error": { "type": ..., "message": ... } } biçimindedir.