Ana Sayfa
Bayilik API v1.0

ReqHit API Dokümantasyonu

RESTful API ile kendi platformunuzda ReqHit altyapısını kullanarak hit botu hizmeti satın. Tüm endpoint'ler JSON formatında yanıt döner.

Base URL

https://api.reqhit.com/v1

Kimlik Doğrulama

Bearer Token (JWT)

Format

JSON (UTF-8)

Rate Limit

Header'da belirtilir

Kimlik Doğrulama

Tüm API istekleri Authorization header'ı ile Bearer token gerektirir. Token almak için API anahtarınız ve gizli anahtarınız ile /auth/token endpoint'ini kullanın.

# Her istekte header olarak gönderin:

Authorization: Bearer eyJhbGciOiJIUzI1NiIs...

Content-Type: application/json

X-Request-ID: uuid-v4 (opsiyonel, idempotency için)

Güvenlik Uyarısı

API anahtarlarınızı asla client-side kodda (JavaScript, mobil uygulama) kullanmayın. Tüm API çağrıları sunucu tarafından yapılmalıdır. Anahtarlarınız ele geçirilirse derhal bayilik panelinizden yenileyin.

HMAC-SHA256 İmzalama

Kritik işlemler (sipariş oluşturma, iptal) için ek güvenlik katmanı olarak HMAC-SHA256 imzalama zorunludur.

// Node.js örneği

const

crypto = require('crypto');

const timestamp = Date.now().toString();

const body = JSON.stringify(requestBody);

const message = timestamp + '.' + body;

const signature = crypto

.createHmac('sha256', apiSecret)

.update(message)

.digest('hex');

// Header'lara ekleyin:

X-Signature: {signature}

X-Timestamp: {timestamp}

Kimlik Doğrulama

POST/api/v1/auth/token
10/dk

API anahtarı ile erişim token'ı al

Parametreler

ParametreTipZorunluAçıklama
api_keystringEvetBayilik panelinden alınan API anahtarı
api_secretstringEvetBayilik panelinden alınan gizli anahtar

İstek Gövdesi

{
  "api_key": "rh_live_abc123def456",
  "api_secret": "sk_live_789xyz..."
}

Yanıt (200 OK)

{
  "access_token": "eyJhbGciOiJIUzI1NiIs...",
  "token_type": "Bearer",
  "expires_in": 3600,
  "scope": "orders:read orders:write stats:read"
}
POST/api/v1/auth/refresh
Auth 5/dk

Erişim token'ını yenile

Parametreler

ParametreTipZorunluAçıklama
refresh_tokenstringEvetÖnceki token yanıtından alınan yenileme token'ı

İstek Gövdesi

{
  "refresh_token": "rt_abc123..."
}

Yanıt (200 OK)

{
  "access_token": "eyJhbGciOiJIUzI1NiIs...",
  "expires_in": 3600
}

Sipariş Yönetimi

POST/api/v1/orders
Auth 100/dk

Yeni hit siparişi oluştur

Parametreler

ParametreTipZorunluAçıklama
target_urlstringEvetHit gönderilecek hedef URL (HTTPS zorunlu)
planstringEvetPaket: starter, professional, enterprise
hits_per_minuteintegerHayırDakikada gönderilecek hit sayısı (varsayılan: paket limiti)
duration_hoursintegerHayırSüre (saat). Varsayılan: 168 (1 hafta)
proxy_countrystringHayırISO 3166-1 alpha-2 ülke kodu. Varsayılan: rastgele
user_agent_typestringHayırdesktop, mobile, mixed (varsayılan: mixed)
cookie_enabledbooleanHayırCookie simülasyonu. Varsayılan: true
referer_urlsstring[]HayırReferrer URL listesi (maks. 10)
schedule.start_timeISO 8601HayırZamanlanmış başlangıç
callback_urlstringHayırDurum değişikliklerinde webhook URL

İstek Gövdesi

{
  "target_url": "https://example.com",
  "plan": "professional",
  "hits_per_minute": 500,
  "duration_hours": 168,
  "proxy_country": "TR",
  "user_agent_type": "mixed",
  "cookie_enabled": true,
  "referer_urls": [
    "https://google.com",
    "https://yandex.com"
  ],
  "schedule": {
    "start_time": "2026-03-01T10:00:00Z",
    "timezone": "Europe/Istanbul"
  },
  "callback_url": "https://yoursite.com/webhook/reqhit"
}

Yanıt (200 OK)

{
  "id": "ord_7f3a8b2c1d4e",
  "status": "pending",
  "target_url": "https://example.com",
  "plan": "professional",
  "hits_per_minute": 500,
  "hits_total": 0,
  "hits_delivered": 0,
  "duration_hours": 168,
  "proxy_country": "TR",
  "created_at": "2026-03-01T09:30:00Z",
  "starts_at": "2026-03-01T10:00:00Z",
  "expires_at": "2026-03-08T10:00:00Z",
  "estimated_cost_usdt": 349.00
}
GET/api/v1/orders
Auth 300/dk

Tüm siparişleri listele

Parametreler

ParametreTipZorunluAçıklama
statusstringHayırFiltre: pending, active, completed, cancelled
pageintegerHayırSayfa numarası (varsayılan: 1)
per_pageintegerHayırSayfa başına kayıt (maks: 100)

Yanıt (200 OK)

{
  "orders": [
    {
      "id": "ord_7f3a8b2c1d4e",
      "status": "active",
      "target_url": "https://example.com",
      "plan": "professional",
      "hits_delivered": 145230,
      "hits_total": 500000,
      "created_at": "2026-03-01T09:30:00Z",
      "expires_at": "2026-03-08T10:00:00Z"
    }
  ],
  "total": 1,
  "page": 1,
  "per_page": 20
}
GET/api/v1/orders/{id}
Auth 300/dk

Sipariş detayını getir

Parametreler

ParametreTipZorunluAçıklama
idstringEvetSipariş ID (path parametresi)

Yanıt (200 OK)

{
  "id": "ord_7f3a8b2c1d4e",
  "status": "active",
  "target_url": "https://example.com",
  "plan": "professional",
  "hits_per_minute": 500,
  "hits_delivered": 145230,
  "hits_total": 500000,
  "success_rate": 99.7,
  "unique_ips_used": 12847,
  "proxy_country": "TR",
  "user_agent_type": "mixed",
  "cookie_enabled": true,
  "created_at": "2026-03-01T09:30:00Z",
  "starts_at": "2026-03-01T10:00:00Z",
  "expires_at": "2026-03-08T10:00:00Z",
  "last_hit_at": "2026-03-02T14:22:31Z"
}
POST/api/v1/orders/{id}/start
Auth 50/dk

Hit gönderimini başlat

Parametreler

ParametreTipZorunluAçıklama
idstringEvetSipariş ID

Yanıt (200 OK)

{
  "id": "ord_7f3a8b2c1d4e",
  "status": "active",
  "message": "Hit delivery started successfully",
  "started_at": "2026-03-01T10:00:00Z"
}
POST/api/v1/orders/{id}/stop
Auth 50/dk

Hit gönderimini durdur

Parametreler

ParametreTipZorunluAçıklama
idstringEvetSipariş ID

Yanıt (200 OK)

{
  "id": "ord_7f3a8b2c1d4e",
  "status": "paused",
  "message": "Hit delivery paused",
  "paused_at": "2026-03-02T15:00:00Z",
  "hits_delivered_so_far": 145230
}
DELETE/api/v1/orders/{id}
Auth 20/dk

Siparişi iptal et

Parametreler

ParametreTipZorunluAçıklama
idstringEvetSipariş ID

Yanıt (200 OK)

{
  "id": "ord_7f3a8b2c1d4e",
  "status": "cancelled",
  "message": "Order cancelled. Unused credits refunded.",
  "refund_usdt": 125.50
}

İstatistikler & Raporlar

GET/api/v1/orders/{id}/stats
Auth 600/dk

Gerçek zamanlı sipariş istatistikleri

Parametreler

ParametreTipZorunluAçıklama
idstringEvetSipariş ID
periodstringHayırrealtime, hourly, daily (varsayılan: realtime)

Yanıt (200 OK)

{
  "order_id": "ord_7f3a8b2c1d4e",
  "period": "realtime",
  "hits_last_minute": 487,
  "hits_last_hour": 28420,
  "hits_last_24h": 145230,
  "success_rate": 99.7,
  "avg_response_time_ms": 234,
  "unique_ips": 12847,
  "top_countries": [
    { "country": "TR", "hits": 89000, "percentage": 61.3 },
    { "country": "DE", "hits": 28000, "percentage": 19.3 },
    { "country": "US", "hits": 28230, "percentage": 19.4 }
  ],
  "user_agent_distribution": {
    "desktop": 62.4,
    "mobile": 31.2,
    "tablet": 6.4
  },
  "hourly_hits": [
    { "hour": "2026-03-02T13:00:00Z", "hits": 29100 },
    { "hour": "2026-03-02T14:00:00Z", "hits": 28420 }
  ]
}
GET/api/v1/reports/daily
Auth 60/dk

Günlük özet rapor

Parametreler

ParametreTipZorunluAçıklama
datestringHayırYYYY-MM-DD formatında tarih. Varsayılan: bugün

Yanıt (200 OK)

{
  "date": "2026-03-02",
  "total_hits": 1245000,
  "total_orders": 12,
  "active_orders": 8,
  "total_spend_usdt": 2450.00,
  "avg_success_rate": 99.4,
  "top_targets": [
    { "url": "https://example.com", "hits": 450000 }
  ]
}
GET/api/v1/reports/usage
Auth 60/dk

Kullanım detay raporu

Parametreler

ParametreTipZorunluAçıklama
fromstringHayırBaşlangıç tarihi (YYYY-MM-DD)
tostringHayırBitiş tarihi (YYYY-MM-DD)

Yanıt (200 OK)

{
  "period": { "from": "2026-02-01", "to": "2026-02-28" },
  "total_hits": 15400000,
  "total_orders": 45,
  "total_spend_usdt": 12500.00,
  "daily_breakdown": [
    { "date": "2026-02-01", "hits": 520000, "spend_usdt": 420.00 }
  ]
}

Hesap & Bakiye

GET/api/v1/balance
Auth 60/dk

Bakiye ve kredi sorgula

Yanıt (200 OK)

{
  "balance_usdt": 1250.00,
  "credits_remaining": 5000000,
  "tier": "gold",
  "commission_rate": 0.40,
  "next_tier": "platinum",
  "next_tier_threshold_usdt": 20000,
  "current_month_revenue_usdt": 8500.00
}
GET/api/v1/proxies
Auth 30/dk

Kullanılabilir proxy listesi

Parametreler

ParametreTipZorunluAçıklama
countrystringHayırÜlke kodu filtresi
typestringHayırresidential, isp, datacenter

Yanıt (200 OK)

{
  "total_proxies": 50000,
  "countries": [
    { "code": "TR", "name": "Turkey", "count": 8500, "type": ["residential", "isp"] },
    { "code": "US", "name": "United States", "count": 12000, "type": ["residential", "datacenter"] },
    { "code": "DE", "name": "Germany", "count": 5200, "type": ["residential", "isp"] }
  ],
  "types": {
    "residential": 35000,
    "isp": 10000,
    "datacenter": 5000
  }
}

Webhook Yönetimi

POST/api/v1/webhooks
Auth 10/dk

Webhook URL tanımla

Parametreler

ParametreTipZorunluAçıklama
urlstringEvetWebhook alıcı URL (HTTPS zorunlu)
eventsstring[]EvetDinlenecek event türleri
secretstringHayırWebhook imza doğrulama anahtarı

İstek Gövdesi

{
  "url": "https://yoursite.com/webhook/reqhit",
  "events": ["order.started", "order.completed", "order.failed", "hits.milestone"],
  "secret": "whsec_your_signing_secret"
}

Yanıt (200 OK)

{
  "id": "wh_abc123",
  "url": "https://yoursite.com/webhook/reqhit",
  "events": ["order.started", "order.completed", "order.failed", "hits.milestone"],
  "status": "active",
  "created_at": "2026-03-01T10:00:00Z"
}
GET/api/v1/webhooks
Auth 30/dk

Tanımlı webhook'ları listele

Yanıt (200 OK)

{
  "webhooks": [
    {
      "id": "wh_abc123",
      "url": "https://yoursite.com/webhook/reqhit",
      "events": ["order.started", "order.completed"],
      "status": "active",
      "last_triggered_at": "2026-03-02T14:22:31Z",
      "success_rate": 100
    }
  ]
}
DELETE/api/v1/webhooks/{id}
Auth 10/dk

Webhook sil

Parametreler

ParametreTipZorunluAçıklama
idstringEvetWebhook ID

Yanıt (200 OK)

{ "message": "Webhook deleted successfully" }

Webhook Event Türleri

Webhook'lar HTTP POST ile gönderilir. 3 başarısız denemeden sonra devre dışı bırakılır.

EventAçıklama
order.createdSipariş oluşturulduğunda
order.startedHit gönderimi başladığında
order.pausedHit gönderimi duraklatıldığında
order.completedSipariş tamamlandığında
order.failedSipariş başarısız olduğunda
order.cancelledSipariş iptal edildiğinde
hits.milestoneHit sayısı %25, %50, %75, %100'e ulaştığında
balance.lowBakiye belirli bir eşiğin altına düştüğünde

Webhook Payload Örneği

{
  "event": "order.completed",
  "timestamp": "2026-03-08T10:00:00Z",
  "data": {
    "order_id": "ord_7f3a8b2c1d4e",
    "status": "completed",
    "hits_delivered": 500000,
    "success_rate": 99.7
  },
  "signature": "sha256=a1b2c3d4e5f6..."
}

Hata Kodları

Tüm hatalar standart HTTP durum kodları ve JSON hata mesajı ile döner.

KodDurumAçıklama
400Bad Requestİstek parametreleri geçersiz veya eksik
401UnauthorizedGeçersiz veya süresi dolmuş token
403ForbiddenBu kaynağa erişim yetkiniz yok
404Not Foundİstenen kaynak bulunamadı
409ConflictÇakışma — sipariş zaten aktif/iptal edilmiş
422Unprocessable EntityGeçersiz URL formatı veya desteklenmeyen parametre
429Too Many RequestsRate limit aşıldı. Retry-After header'ını kontrol edin
500Internal Server ErrorSunucu hatası. Tekrar deneyin veya destek ile iletişime geçin
503Service UnavailableBakım modu. Genellikle birkaç dakika sürer

Hata Yanıt Formatı

{
  "error": {
    "code": "RATE_LIMIT_EXCEEDED",
    "message": "Rate limit aşıldı. 60 saniye sonra tekrar deneyin.",
    "retry_after": 60
  },
  "request_id": "req_abc123"
}

Rate Limiting

Her yanıtta rate limit bilgisi header olarak döner:

X-RateLimit-Limit: 100

X-RateLimit-Remaining: 95

X-RateLimit-Reset: 1709312400 (Unix timestamp)

Retry-After: 30 (sadece 429 yanıtlarında)

Hızlı Başlangıç — cURL Örneği

# 1. Token al

curl -X POST https://api.reqhit.com/v1/auth/token \

-H "Content-Type: application/json" \

-d '{"api_key":"rh_live_xxx","api_secret":"sk_live_xxx"}'

# 2. Sipariş oluştur

curl -X POST https://api.reqhit.com/v1/orders \

-H "Authorization: Bearer YOUR_TOKEN" \

-H "Content-Type: application/json" \

-d '{"target_url":"https://example.com","plan":"professional"}'

# 3. İstatistikleri kontrol et

curl https://api.reqhit.com/v1/orders/ord_xxx/stats \

-H "Authorization: Bearer YOUR_TOKEN"

Güvenlik

  • HMAC-SHA256 istek imzalama
  • IP whitelist desteği (CIDR)
  • TLS 1.3 zorunlu şifreleme
  • API anahtarı rotasyonu
  • Webhook imza doğrulama
  • Brute-force koruması

SLA Garantisi

  • %99.9 API uptime garantisi
  • Ortalama yanıt süresi: <50ms
  • Webhook teslim garantisi (3x retry, exponential backoff)
  • Dakikada 50.000+ hit kapasitesi
  • 7/24 teknik destek (Gold+)
  • Dedicated account manager (Platinum)

API Erişimi İçin Başvurun

Bayilik başvurunuz onaylandıktan sonra API anahtarlarınız ve sandbox ortamı hazırlanır.