G
IMEI and SERVERProfessional GSM Solutions

API Genel Bakış

GSM Unlock Portal API'si, bayilerimizin cihaz kilit açma siparişlerini ve sorgulamalarını kendi altyapılarına entegre etmesini sağlayan kurumsal bir JSON REST arayüzüdür.

Base URL:https://api.gsmunlockportal.com/api/v1

Kimlik Doğrulama

Tüm API isteklerinin başlık (HTTP Headers) alanında geçerli bir API Key ve API Secret gönderilmelidir. Bu anahtarları dashboard settings sekmesinden oluşturabilirsiniz.

Header Parametreleri
X-API-Key: your_reseller_api_key_string
X-API-Secret: your_reseller_api_secret_hash
Content-Type: application/json

Hız Sınırları (Rate Limits)

Varsayılan hız sınırı dakika başına en fazla 60 istek olacak şekildedir. Limit aşıldığında sunucu 429 Too Many Requests durum kodu dönecektir.

GET

/services — Hizmet Listesi

Aktif olan tüm unlock kategorilerini ve servis tiplerini döndürür.

Request ParametreleriBu uç nokta için ek parametre gerekmemektedir.
Response Örneği
{
  "success": true,
  "services": [
    {
      "id": "srv_9988",
      "name": "Apple iPhone 15 Pro Max Unlock",
      "price": 45.00,
      "estimatedDuration": "1-3 Gün",
      "successRate": "%98"
    }
  ]
}
POST

/orders — Yeni Sipariş

Belirli bir IMEI veya seri numarası için kilit açma siparişi gönderir.

Body Parametreleri (JSON)
serviceId: string (Required)
imei: string (15 Hane, Required)
model: string (Optional)
qty: number (Default: 1)
Response Örneği
{
  "success": true,
  "orderId": "ord_1002345",
  "status": "PENDING",
  "cost": 45.00,
  "balanceRemaining": 155.00
}
GET

/orders/{id} — Sipariş Durumu

Verilen Sipariş ID'sine göre siparişin durumunu sorgular.

URL Parametreleri
id: Siparişin benzersiz ID'si.
Response Örneği
{
  "success": true,
  "orderId": "ord_1002345",
  "status": "COMPLETED",
  "resultCode": "UNLOCK_CODE_XYZ123",
  "completedAt": "2026-07-22T14:02:11Z"
}
GET

/balance — Bakiye Sorgulama

Bayi hesabınızın güncel kullanılabilir cüzdan bakiyesini döner.

Requestİstekte ek parametre gerekmemektedir.
Response Örneği
{
  "success": true,
  "balance": 155.00,
  "currency": "USD"
}
POST

/imei-check — IMEI Kontrol

IMEI numarasının kara listede olup olmadığını veya modelini kontrol eder.

Body Parametreleri
imei: string (15 Hane, Required)
Response Örneği
{
  "success": true,
  "imei": "358234098...",
  "status": "CLEAN",
  "deviceBrand": "Apple",
  "deviceModel": "iPhone 15 Pro Max"
}

Webhook Tanımları

Siparişleriniz tamamlandığında (COMPLETED) veya iptal edildiğinde (FAILED), API sunucularımız belirttiğiniz Webhook URL'sine anlık olarak bir HTTP POST isteği gönderir.

POST Webhook Body Örneği:
{
  "event": "order.updated",
  "orderId": "ord_1002345",
  "status": "COMPLETED",
  "result": "UNLOCK_CODE_XYZ123",
  "timestamp": "2026-07-22T14:02:11Z"
}

SDK Örnek Kodları

Node.js (axios)
const axios = require('axios');

axios.post('https://api.gsmunlockportal.com/api/v1/orders', {
  serviceId: 'srv_9988',
  imei: '358234098111222'
}, {
  headers: {
    'X-API-Key': 'your_api_key',
    'X-API-Secret': 'your_api_secret',
    'Content-Type': 'application/json'
  }
})
.then(res => console.log(res.data))
.catch(err => console.error(err));
PHP (cURL)
<?php
$ch = curl_init("https://api.gsmunlockportal.com/api/v1/orders");
$data = json_encode([
  "serviceId" => "srv_9988",
  "imei" => "358234098111222"
]);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "X-API-Key: your_api_key",
  "X-API-Secret: your_api_secret",
  "Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);
echo $response;

Sandbox Test Ortamı

Geliştirme yaparken bakiyenizin etkilenmemesi için test isteklerinizi Sandbox base URL'imize gönderebilirsiniz. Sandbox ortamında siparişler gerçek tedarikçiye gönderilmez ve bakiye düşümü simüle edilir.

Sandbox URL:https://sandbox-api.gsmunlockportal.com/api/v1