Kurumsal Plan

Tescil Radar API

RESTful API ile marka takibi, domain izleme ve AI risk analizi özelliklerini kendi uygulamalarınıza entegre edin. JSON formatında veri, OAuth 2.0 kimlik doğrulama ve webhook desteği.

Terminal
$ curl -X GET \
https://api.tescilradar.com/v1/matches \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
// Response (200 OK)
{
"data": [
{
"id": 1542,
"trademark": "TechnoSoft Pro",
"risk_score": 0.94,
"risk_level": "critical"
}
]
}

API Genel Bakış

Tescil Radar API, tüm platform özelliklerine programatik erişim sağlayan RESTful bir arayüzdür

RESTful

Standart HTTP yöntemleri (GET, POST, PUT, DELETE) ile tutarlı kaynak yönetimi

JSON Format

Tüm istek ve yanıtlar JSON formatında. Dil bağımsız kolay entegrasyon

OAuth 2.0

Bearer token tabanlı güvenli kimlik doğrulama. API anahtarı ile hızlı başlangıç

Webhooks

Yeni eşleşmeler ve domain değişiklikleri için gerçek zamanlı webhook bildirimleri

Kimlik Doğrulama

Tescil Radar API, Bearer token tabanlı kimlik doğrulama kullanır. API anahtarınızı her istekte Authorization başlığında göndermeniz gerekir.

# Her istekte Authorization başlığını ekleyin
curl -H "Authorization: Bearer tr_live_xxxxxxxxxxxxxxxxxxxx" \
-H "Accept: application/json" \
https://api.tescilradar.com/v1/me
Güvenlik Uyarısı: API anahtarınızı asla istemci tarafında (frontend JavaScript, mobil uygulama kaynak kodu) açık olarak kullanmayın. Sunucu tarafından (backend) yapılan isteklerde kullanın.

Rate Limiting

API istekleri aşağıdaki limitlara tabidir:

Plan İstek/Dakika İstek/Gün Webhook
Kurumsal 60 10,000

API Endpoint'leri

Anahtar Kelimeler

GET /v1/keywords

Kullanıcının tüm anahtar kelimelerini listeler. Sayfalama, filtreleme ve sıralama destekler.

// Yanıt Örneği
{
"data": [
{
"id": 1,
"keyword": "TechnoSoft",
"match_type": "contains",
"is_active": true,
"matches_count": 12
}
],
"meta": { "current_page": 1, "total": 5 }
}
POST /v1/keywords

Yeni anahtar kelime oluşturur. Geçmiş veriler otomatik taranır.

PUT /v1/keywords/{"{id}"}

Anahtar kelime bilgilerini günceller.

DELETE /v1/keywords/{"{id}"}

Anahtar kelimeyi ve ilişkili eşleşme verilerini siler.

Marka Eşleşmeleri

GET /v1/matches

Tüm marka eşleşmelerini listeler. Risk seviyesi, okunma durumu ve tarih aralığına göre filtreleme yapılabilir.

Sorgu Parametreleri

Parametre Tip Açıklama
risk_level string Filtre: critical, high, medium, low
keyword_id integer Belirli bir anahtar kelimeye ait eşleşmeler
is_read boolean Okunmuş/okunmamış filtreleme
date_from date Başlangıç tarihi (YYYY-MM-DD)
page integer Sayfa numarası (varsayılan: 1)
per_page integer Sayfa başına kayıt (maks: 100, varsayılan: 25)
GET /v1/matches/{"{id}"}

Belirli bir eşleşmenin detaylarını getirir. Marka bilgileri, risk skoru, NICE sınıfları ve eşleşme türü dahil.

POST /v1/matches/{"{id}"}/mark-read

Eşleşmeyi okundu olarak işaretler.

Domain İzleme

GET /v1/domains

Tüm takip edilen domainleri listeler.

POST /v1/domains

Yeni domain takibi başlatır. WHOIS sorgusu otomatik yapılır.

GET /v1/domains/{"{id}"}/snapshots

Domain'in WHOIS anlık görüntü geçmişini getirir. Tarihsel karşılaştırma için kullanılır.

GET /v1/domains/{"{id}"}/changes

Domain'de tespit edilen değişiklikleri listeler (sahiplik, nameserver, kayıt tarihi vb.).

POST /v1/domains/{"{id}"}/refresh

Domain WHOIS bilgilerini manuel olarak yeniler.

AI Risk Raporları

GET /v1/reports

Oluşturulan tüm AI risk raporlarını listeler.

POST /v1/reports/generate

Belirli bir eşleşme için AI risk raporu oluşturur. Rapor asenkron olarak hazırlanır.

GET /v1/reports/{"{id}"}

Belirli bir raporun detaylarını getirir. Risk değerlendirmesi, hukuki öneriler ve aksiyon planı dahil.

Marka Veritabanı

GET /v1/trademarks

TÜRKPATENT marka veritabanında arama yapar. İsim, başvuru numarası, NICE sınıfı ve tarih aralığına göre filtreleme destekler.

GET /v1/trademarks/{"{id}"}

Belirli bir markanın tüm detaylarını getirir: başvuru sahibi, NICE sınıfları, başvuru tarihi, durum ve bülten bilgileri.

Webhook Entegrasyonu

Webhook'lar, yeni eşleşmeler ve domain değişiklikleri tespit edildiğinde uygulamanıza gerçek zamanlı HTTP POST bildirimleri gönderir.

Desteklenen Olaylar

match.created

Yeni marka eşleşmesi tespit edildiğinde

match.risk_updated

Eşleşmenin risk skoru güncellendiğinde

domain.changed

Domain WHOIS bilgilerinde değişiklik tespit edildiğinde

domain.expiring

Domain sona erme tarihi yaklaştığında

report.completed

AI risk raporu tamamlandığında

bulletin.processed

Yeni TÜRKPATENT bülteni işlendiğinde

Webhook Payload Örneği

// POST https://your-app.com/webhooks/tescilradar
{
"event": "match.created",
"timestamp": "2025-06-15T14:30:00Z",
"data": {
"match_id": 1542,
"keyword": "TechnoSoft",
"trademark_name": "TechnoSoft Pro",
"application_number": "2025/456789",
"nice_classes": [9, 42],
"match_type": "contains",
"risk_score": 0.94,
"risk_level": "critical"
}
}

Kod Örnekleri

# Kritik risk eşleşmelerini listele
curl -X GET \
"https://api.tescilradar.com/v1/matches?risk_level=critical" \
-H "Authorization: Bearer tr_live_xxxx" \
-H "Accept: application/json"
// PHP - Guzzle HTTP ile kritik eşleşmeleri getir
$client = new GuzzleHttp\Client();
$response = $client->get('https://api.tescilradar.com/v1/matches', [
'headers' => [
'Authorization' => 'Bearer ' . $apiKey,
'Accept' => 'application/json',
],
'query' => [
'risk_level' => 'critical',
],
]);
$matches = json_decode($response->getBody(), true);
# Python - Requests ile kritik eşleşmeleri getir
import requests
headers = {
"Authorization": f"Bearer {'{api_key}'}",
"Accept": "application/json"
}
response = requests.get(
"https://api.tescilradar.com/v1/matches",
headers=headers,
params={"risk_level": "critical"}
)
matches = response.json()
// JavaScript (Node.js) - Fetch ile kritik eşleşmeleri getir
const response = await fetch(
'https://api.tescilradar.com/v1/matches?risk_level=critical',
{
headers: {
'Authorization': `Bearer ${'${apiKey}'}`,
'Accept': 'application/json'
}
}
);
const matches = await response.json();

HTTP Durum Kodları

Kod Durum Açıklama
200 OK İstek başarılı
201 Created Kaynak başarıyla oluşturuldu
400 Bad Request Geçersiz istek parametreleri
401 Unauthorized Geçersiz veya eksik API anahtarı
403 Forbidden Yetkiniz yok (plan limiti aşıldı veya API erişimi kapalı)
404 Not Found Kaynak bulunamadı
429 Too Many Requests Rate limit aşıldı. Retry-After başlığını kontrol edin
500 Server Error Sunucu hatası. Tekrar deneyin veya destek ile iletişime geçin

API Erişimi için Kurumsal Plan

API erişimi Kurumsal plan ile birlikte gelir. 100 anahtar kelime, 50 domain takibi, tüm AI özellikleri ve 7/24 özel destek dahildir.