OrganicHit API Dokümantasyonu

Not: Bu API dokümantasyonu, OrganicHit uygulamasının API'sini kullanmak isteyen geliştiriciler için hazırlanmıştır.

Giriş

OrganicHit API'si, uygulamanızı OrganicHit platformuna entegre etmenizi sağlar. Bu API ile görevler oluşturabilir, kredi işlemlerini yönetebilir ve ziyaret istatistiklerini alabilirsiniz.

Tüm API istekleri https://www.organichit.net/api/v1/ temel URL'sine yapılmalıdır. API yanıtları JSON formatında döndürülür.

Kimlik Doğrulama

API isteklerini yetkilendirmek için API anahtarı kullanmanız gerekmektedir. API anahtarınızı, kullanıcı panelindeki Ayarlar sayfasından oluşturabilirsiniz.

API Anahtarı ile Kimlik Doğrulama

API anahtarınızı HTTP isteğinin Authorization başlığında Bearer token olarak göndermelisiniz:

Authorization: Bearer YOUR_API_KEY
Örnek İstek
curl -X GET \
  https://www.organichit.net/api/v1/user/profile \
  -H 'Authorization: Bearer YOUR_API_KEY'

İstek Limitleri

API istekleriniz, aşırı kullanımı önlemek için belirli limitlerle sınırlandırılmıştır. Mevcut limitler şu şekildedir:

  • Standart kullanıcılar için: 60 istek / dakika
  • Premium kullanıcılar için: 120 istek / dakika

Limit aşımı durumunda, 429 Too Many Requests hata kodu alırsınız. Her API yanıtında, kalan istek sayınızı gösteren başlıklar bulunur:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 59
X-RateLimit-Reset: 1617181200

Hata Yönetimi

API hataları, standart HTTP durum kodları ve JSON formatında hata mesajları ile döndürülür. Genel hata kodları şunlardır:

Durum Kodu Açıklama
400 Bad Request - İstek parametreleri geçersiz
401 Unauthorized - API anahtarı geçersiz veya eksik
403 Forbidden - İstenen kaynağa erişim izniniz yok
404 Not Found - İstenen kaynak bulunamadı
429 Too Many Requests - İstek limiti aşıldı
500 Internal Server Error - Sunucu hatası
Hata Yanıtı Örneği
{
  "success": false,
  "error": {
    "code": "invalid_parameter",
    "message": "Geçersiz görev ID'si",
    "details": {
      "task_id": "Geçerli bir görev ID'si belirtmelisiniz"
    }
  }
}

Endpoint'ler

OrganicHit API'si aşağıdaki ana endpoint kategorilerini içerir:

Endpoint Açıklama
/api/v1/tasks Görevleri yönetmek için kullanılır
/api/v1/credits Kredi işlemlerini yönetmek için kullanılır
/api/v1/visits Ziyaret istatistiklerini almak için kullanılır
/api/v1/user Kullanıcı bilgilerini yönetmek için kullanılır
/api/v1/webhooks Webhook'ları yönetmek için kullanılır

Görevler API

Görevler API'si, OrganicHit platformunda görevleri oluşturmanızı, güncellemenizi ve yönetmenizi sağlar.

Görevleri Listeleme

GET /api/v1/tasks

Kullanıcının tüm görevlerini listeler.

Sorgu Parametreleri
Parametre Tip Açıklama
status string Görev durumu (active, paused, completed, all). Varsayılan: all
page integer Sayfa numarası. Varsayılan: 1
per_page integer Sayfa başına görev sayısı. Varsayılan: 20, Maksimum: 100
Yanıt Örneği
{
  "success": true,
  "data": {
    "tasks": [
      {
        "id": 123,
        "name": "Blog Ziyaretleri",
        "url": "https://example.com/blog",
        "status": "active",
        "daily_visits": 100,
        "total_visits": 1500,
        "completed_visits": 750,
        "created_at": "2023-01-15T10:30:00Z",
        "updated_at": "2023-01-20T14:45:00Z"
      },
      // ... diğer görevler
    ],
    "pagination": {
      "total": 45,
      "per_page": 20,
      "current_page": 1,
      "last_page": 3
    }
  }
}
Görev Oluşturma

POST /api/v1/tasks

Yeni bir görev oluşturur.

İstek Parametreleri
Parametre Tip Açıklama
name string Görev adı (Zorunlu)
url string Görev URL'si (Zorunlu)
daily_visits integer Günlük ziyaret sayısı (Zorunlu)
total_visits integer Toplam ziyaret sayısı (Zorunlu)
visit_duration integer Ortalama ziyaret süresi (saniye) (Opsiyonel)
bounce_rate float Hemen çıkma oranı (0-100) (Opsiyonel)
page_views integer Ortalama sayfa görüntüleme sayısı (Opsiyonel)

Krediler API

Krediler API'si, kredi bakiyenizi görüntülemenizi ve kredi işlemlerinizi yönetmenizi sağlar.

Kredi Bakiyesi

GET /api/v1/credits/balance

Mevcut kredi bakiyesini gösterir.

Yanıt Örneği
{
  "success": true,
  "data": {
    "balance": 5000,
    "total_earned": 10000,
    "total_spent": 5000,
    "last_transaction": {
      "id": 456,
      "type": "spend",
      "amount": 100,
      "description": "Görev #123 için kredi harcaması",
      "created_at": "2023-02-10T15:20:00Z"
    }
  }
}

Ziyaretler API

Ziyaretler API'si, görevlerinizin ziyaret istatistiklerini almanızı sağlar.

Görev Ziyaretleri

GET /api/v1/visits/task/{task_id}

Belirli bir görevin ziyaret istatistiklerini gösterir.

Sorgu Parametreleri
Parametre Tip Açıklama
period string İstatistik periyodu (daily, weekly, monthly). Varsayılan: daily
start_date string Başlangıç tarihi (YYYY-MM-DD formatında)
end_date string Bitiş tarihi (YYYY-MM-DD formatında)

Kullanıcı API

Kullanıcı API'si, kullanıcı bilgilerinizi yönetmenizi sağlar.

Kullanıcı Profili

GET /api/v1/user/profile

Kullanıcı profil bilgilerini gösterir.

Webhook'lar

Webhook'lar, belirli olaylar gerçekleştiğinde OrganicHit'in uygulamanıza bildirim göndermesini sağlar.

Webhook Oluşturma

POST /api/v1/webhooks

Yeni bir webhook oluşturur.

Örnek Kodlar

OrganicHit API'sini kullanmak için çeşitli programlama dillerinde örnek kodlar:

PHP
<?php
$apiKey = 'YOUR_API_KEY';
$url = 'https://www.organichit.net/api/v1/tasks';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer ' . $apiKey,
    'Content-Type: application/json'
]);

$response = curl_exec($ch);
$data = json_decode($response, true);

if (curl_errno($ch)) {
    echo 'Hata: ' . curl_error($ch);
} else {
    echo 'Görev Sayısı: ' . count($data['data']['tasks']);
}

curl_close($ch);
?>
JavaScript
const apiKey = 'YOUR_API_KEY';
const url = 'https://www.organichit.net/api/v1/tasks';

fetch(url, {
  method: 'GET',
  headers: {
    'Authorization': `Bearer ${apiKey}`,
    'Content-Type': 'application/json'
  }
})
.then(response => response.json())
.then(data => {
  console.log(`Görev Sayısı: ${data.data.tasks.length}`);
})
.catch(error => {
  console.error('Hata:', error);
});
Önemli Not

API anahtarınızı güvenli bir şekilde saklayın ve asla istemci tarafı kodlarında (örneğin, JavaScript) kullanmayın. API isteklerinizi her zaman sunucu tarafında gerçekleştirin.