API Referansı
Ocelot Gateway üzerinden erişilebilen tüm endpoint'lerin tam referansı.
🔐 Kimlik Doğrulama
/oauth/token
API anahtarını JWT access token ile değiştir
Header'lar
| Header | Değer | Gerekli |
|---|---|---|
X-API-Key |
tw_live_* | Evet |
İstek Gövdesi
{
"grant_type": "api_key"
}
Yanıt
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "Bearer",
"expires_in": 86400,
"refresh_token": "rf_PAKhXhWmSeeicx6bAb1pg1FroLm1ig7jyMOpe...",
"refresh_expires_in": 2592000,
"issued_at": "2026-01-14T12:00:00Z"
}
Not: Access token 24 saat (86400 saniye), refresh token 30 gün geçerlidir.
/oauth/token
Refresh token ile access token yenile
İstek Gövdesi
{
"grant_type": "refresh_token",
"refresh_token": "rf_PAKhXhWmSeeicx6bAb1pg1FroLm1ig7jyMOpe..."
}
Yanıt
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "Bearer",
"expires_in": 86400,
"refresh_token": "rf_YENİ_REFRESH_TOKEN...",
"refresh_expires_in": 2592000
}
Not: Refresh token tek kullanımlıktır. Başarılı yenilemeden sonra yanıttaki yeni refresh token'ı saklayın; eski token geçersiz olur.
👤 Hesaplar
Downstream: brokerageapi.tradewise.com.tr:443 | Timeout: 30s
/api/v1/accounts
Tüm aracı kurumlardan kullanıcının hesaplarını listele
Yanıt Örneği
{
"success": true,
"message": "Success",
"data": [
{
"accountNumber": "ACC-ULID-001",
"number": "12345",
"name": "Ana Hesap",
"brokerageCode": "TradeWiseYatirim",
"brokerageName": "TradeWiseYatirim Menkul Değerler",
"isActive": true,
"isDefault": true
},
{
"accountNumber": "ACC-ULID-002",
"number": "67890",
"name": "İkinci Hesap",
"brokerageCode": "DENIZ",
"brokerageName": "Deniz Yatırım",
"isActive": true,
"isDefault": false
}
]
}
Yanıt Alanları
| accountNumber | Hesabın dahili tanımlayıcısı — diğer endpoint'lerde hesabı tanımlamak için kullanın |
| number | Aracı kurumdaki gerçek hesap numarası (örn. "12345") |
| name | Hesap adı |
| brokerageCode | Aracı kurum kodu (örn. "TradeWiseYatirim") — tüm request'lerde bu alanı kullanın |
| brokerageName | Aracı kurum adı |
| isActive / isDefault | Hesap durumu / varsayılan hesap olup olmadığı |
Not: Paralel sorgu yapılır. Bir aracı kurumdan veri alınamazsa hata vermez, diğerlerinden gelen veriler döndürülür.
/api/v1/accounts/login
Aracı kurum hesabına SMS doğrulamalı giriş yap
🔵 AŞAMA 1: SMS Talebi
sessionId ve sms alanları olmadan istek gönderilir.
- Yanıtta
otp = 1vesessionIddolu ise → SMS gönderildi!
🟣 AŞAMA 2: SMS Doğrulama
Aşama 1'den gelen sessionId ve telefondaki sms kodu eklenerek gönderilir.
📋 İstek Alanları
| Alan | Açıklama | Aşama |
|---|---|---|
brokerageCode |
Aracı kurum kodu (örn. "TradeWiseYatirim") | Her iki aşama |
username |
TC Kimlik No | Her iki aşama |
password |
Hesap şifresi | Her iki aşama |
accountNumber |
Aracı kurumdaki hesap numarası | Her iki aşama |
sessionId |
Aşama 1 yanıtından alınan session ID | Sadece Aşama 2 |
sms |
Telefona gelen SMS kodu | Sadece Aşama 2 |
💡 Örnek: AŞAMA 1
{
"brokerageCode": "TradeWiseYatirim",
"username": "12345678901",
"password": "MySecretP@ss123",
"accountNumber": "77777"
}
💡 Örnek: AŞAMA 2
{
"brokerageCode": "TradeWiseYatirim",
"username": "12345678901",
"password": "MySecretP@ss123",
"accountNumber": "77777",
"sessionId": "41824250",
"sms": "642529"
}
/api/v1/accounts/positions
Hesap pozisyonlarını getir
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "12345",
"includeOrders": false
}
⚠️ Rate Limit: Aynı kullanıcı ve hesap için saniyede 1 istek atılabilir.
/api/v1/accounts/daily-orders
Hesabın günlük emirlerini listele
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "12345"
}
📈 Emirler
Downstream: brokerageapi.tradewise.com.tr:443 | Timeout: 30s
/api/v1/orders
Yeni emir ver
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"symbol": "FROTO",
"quantity": 1,
"buySell": 1,
"orderType": 2,
"price": 101
}
Alanlar
| brokerageCode | Aracı kurum kodu (string, zorunlu) |
| accountNumber | Hesap numarası (string, zorunlu) |
| symbol | İşlem sembolü (string, zorunlu) |
| quantity | Emir miktarı (integer, zorunlu) |
| buySell | 1: Alış, 2: Satış (integer, zorunlu) |
| orderType | 1: Piyasa emri (price 0), 2: Limit emri (integer, zorunlu) |
| price | Emir fiyatı (decimal, limit emirler için zorunlu) |
Yanıt
{
"success": true,
"message": "Order placed successfully",
"data": {
"symbol": "FROTO",
"quantity": 1,
"buySell": 1,
"orderNo": "12345678",
"orderStatus": 2
}
}
/api/v1/orders/chain
Zincir emir ver (referans emre bağlı emir)
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"symbol": "ADESE",
"quantity": 100,
"buySell": 1,
"orderType": 2,
"price": 1.5,
"referenceOrderNo": "305344701"
}
/api/v1/orders/cancel
Emri iptal et
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"orderNo": "ORD123456",
"symbol": "FROTO"
}
Yanıt
{
"success": true,
"data": true
}
/api/v1/orders/batch
Toplu emir gönder
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"items": [
{ "symbol": "FROTO", "quantity": 10, "buySell": 1, "orderType": 2, "price": 101.50 },
{ "symbol": "THYAO", "quantity": 5, "buySell": 1, "orderType": 2, "price": 250.00 },
{ "symbol": "EREGL", "quantity": 20, "buySell": 2, "orderType": 1, "price": 0 }
]
}
/api/v1/orders/cancel/batch
Toplu emir iptali
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"items": [
{ "orderNo": "12345678", "symbol": "FROTO" },
{ "orderNo": "12345679", "symbol": "THYAO" }
]
}
Yanıt
{
"success": true,
"message": "2 orders cancelled successfully",
"data": true
}
🤖 Sistemler
Downstream: brokerageapi.tradewise.com.tr:443 | Timeout: 30s
💡 Sistemler Nedir? TradeWise'da sistemler, alım-satım botlarının üst düzey grouping'idir. Her sistem bir hesaba bağlı olup LevelBot veya TradingViewBot türünde olabilir. Bu endpoint tüm bot tiplerini tek bir yanıtta döndürür.
/api/v1/systems/list
Hesaba ait tüm sistemleri (botları) listele
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"botType": [],
"isActive": 1,
"isDeleted": 2,
"startDate": null,
"endDate": null
}
İstek Alanları
| brokerageCode | Aracı kurum kodu (string, zorunlu) |
| accountNumber | Hesap numarası (string, zorunlu) |
| botType |
Filtre: Bot tipleri (integer[], opsiyonel, boş = tümü) • 1: LevelBot • 2: TradingViewBot • 3: StockBot • 4: SignalBot
|
| isActive | 1: Tümü, 2: Aktifler, 3: Pasifler (varsayılan: 1) |
| isDeleted | 1: Tümü, 2: Silinmemişler, 3: Silinenler (varsayılan: 2) |
| startDate | Başlangıç tarihi filtresi (ISO 8601, opsiyonel) |
| endDate | Bitiş tarihi filtresi (ISO 8601, opsiyonel) |
Yanıt Örneği
{
"success": true,
"data": [
{
"id": 42,
"name": "THYAO Alım-Satım",
"botType": 1,
"isActive": true,
"isRunning": true,
"levelBotDetails": [
{
"symbol": "THYAO",
"buyGap": 0.50,
"sellGap": 0.50,
"targetProfit": 2.00,
"maxBuyPrice": 280.00,
"minBuyPrice": 220.00,
"maxSellPrice": 300.00,
"minSellPrice": 230.00
}
]
}
]
}
📊 Level Bot'lar
Downstream: brokerageapi.tradewise.com.tr:443 | Timeout: 30s
💡 Level Bot Nedir? Level Bot, belirli fiyat seviyelerinde otomatik alım-satım emirleri veren bir trading botudur.
Her bot birden fazla sembol için bağımsız konfigürasyon içerebilir.
Fiyat limitleri (maxBuyPrice, minBuyPrice, vb.) bot konfigürasyonudur; gerçek işlem fiyatları değildir.
/api/v1/level-bots
Hesaba ait tüm Level Bot'ları listele
Query Parametreleri
| brokerageCode | Aracı kurum kodu (string, zorunlu) |
| accountNumber | Hesap numarası (string, zorunlu) |
Örnek İstek
GET /api/v1/level-bots?brokerageCode=TradeWiseYatirim&accountNumber=77777
Yanıt Örneği
{
"success": true,
"data": [
{
"id": 42,
"name": "THYAO-EREGL Stratejisi",
"accountNumber": "77777",
"isActive": true,
"isRunning": true,
"levelBotDetails": [
{
"symbol": "THYAO",
"buyGap": 0.50,
"sellGap": 0.50,
"targetProfit": 2.00,
"maxBuyPrice": 280.00,
"minBuyPrice": 220.00,
"maxSellPrice": 300.00,
"minSellPrice": 230.00,
"profit": 5.00
},
{
"symbol": "EREGL",
"buyGap": 0.25,
"sellGap": 0.25,
"targetProfit": 1.50,
"maxBuyPrice": 50.00,
"minBuyPrice": 35.00,
"maxSellPrice": 55.00,
"minSellPrice": 38.00,
"profit": 3.50
}
],
"createdDate": "2026-01-10T08:00:00Z",
"updatedDate": "2026-04-01T10:30:00Z"
}
]
}
LevelBot Alanları
| id | Bot ID |
| name | Bot adı |
| accountNumber | Bağlı hesap numarası |
| isActive / isRunning | Aktif / Çalışıyor durumu |
| levelBotDetails | Sembol bazında konfigürasyon listesi |
| buyGap / sellGap | Alış/Satış gap değeri (konfigürasyon) |
| targetProfit | Hedef kâr oranı (konfigürasyon) |
| maxBuyPrice / minBuyPrice | Alış fiyat limitleri (konfigürasyon) |
| maxSellPrice / minSellPrice | Satış fiyat limitleri (konfigürasyon) |
| profit | Sembol için kâr hedefi (konfigürasyon) |
/api/v1/level-bots/{'{id}'}
ID ile Level Bot getir
Query Parametreleri
| id (path) | Level Bot ID (integer, zorunlu) |
| brokerageCode | Aracı kurum kodu (query, zorunlu) |
GET /api/v1/level-bots/42?brokerageCode=TradeWiseYatirim
/api/v1/level-bots
Yeni Level Bot oluştur
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"name": "THYAO Alım-Satım Botu",
"isActive": true,
"levelBotDetails": [
{
"symbol": "THYAO",
"buyGap": 0.50,
"sellGap": 0.50,
"targetProfit": 2.00,
"maxBuyPrice": 280.00,
"minBuyPrice": 220.00,
"maxSellPrice": 300.00,
"minSellPrice": 230.00,
"profit": 5.00
}
]
}
İstek Alanları
| brokerageCode | Aracı kurum kodu (string, zorunlu) |
| accountNumber | Hesap numarası (string, zorunlu) |
| name | Bot adı (string, zorunlu) |
| isActive | Aktif mi? (boolean, zorunlu) |
| levelBotDetails | Sembol konfigürasyonları listesi (zorunlu) |
Yanıt
{
"success": true,
"message": "Level Bot başarıyla oluşturuldu",
"data": {
"id": 43,
"name": "THYAO Alım-Satım Botu",
"accountNumber": "77777",
"isActive": true
}
}
/api/v1/level-bots/{'{id}'}
Level Bot güncelle
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"name": "THYAO Güncellenmiş Bot",
"isActive": true,
"levelBotDetails": [
{
"symbol": "THYAO",
"buyGap": 0.75,
"sellGap": 0.75,
"targetProfit": 3.00,
"maxBuyPrice": 290.00,
"minBuyPrice": 210.00,
"maxSellPrice": 310.00,
"minSellPrice": 225.00,
"profit": 7.00
}
]
}
/api/v1/level-bots/{'{id}'}/pair-orders
Level Bot'un aktif çift emirlerini listele
GET /api/v1/level-bots/42/pair-orders?brokerageCode=TradeWiseYatirim
Yanıt Örneği
{
"success": true,
"data": [
{
"id": 1001,
"systemId": 42,
"symbol": "THYAO",
"buyQuantity": 100,
"buyStatus": 2,
"buyOrderNo": "305344701",
"buyOrderDate": "2026-04-10T09:30:00Z",
"sellQuantity": 100,
"sellStatus": 1,
"sellOrderNo": null,
"sellOrderDate": null,
"description": "Çift emir bekleniyor"
}
]
}
Not: Pair order yanıtlarında gerçek işlem fiyatları (buyPrice, sellPrice) ve komisyon bilgileri paylaşılmaz; yalnızca emir takibine ilişkin durum ve numara bilgileri döndürülür.
/api/v1/level-bots/pair-orders/history
Hesabın tüm Level Bot işlem geçmişini getir
GET /api/v1/level-bots/pair-orders/history?brokerageCode=TradeWiseYatirim&accountNumber=77777&page=1&pageSize=20
Query Parametreleri
| brokerageCode | Aracı kurum kodu (zorunlu) |
| accountNumber | Hesap numarası (zorunlu) |
| page | Sayfa numarası (varsayılan: 1) |
| pageSize | Sayfa başına kayıt (varsayılan: 10) |
Yanıt Örneği
{
"success": true,
"data": {
"items": [
{
"id": 5001,
"systemId": 42,
"symbol": "THYAO",
"buyQuantity": 100,
"buyOrderNo": "305344701",
"buyOrderDate": "2026-04-08T09:30:00Z",
"sellQuantity": 100,
"sellOrderNo": "305344702",
"sellOrderDate": "2026-04-08T14:20:00Z",
"description": "Tamamlandı",
"hourCount": 4
}
],
"totalCount": 125,
"page": 1,
"pageSize": 10
}
}
📡 TradingView Bot'lar
Downstream: brokerageapi.tradewise.com.tr:443 | Timeout: 30s
💡 TradingView Bot Nedir? TradingView sinyal botları, TradingView webhook sinyallerini alarak otomatik emir veren botlardır. Sinyaller belirlenen algo (algoritma) adı ve periyoduna göre filtrelenir.
/api/v1/trading-view-bots
Hesaba ait tüm TradingView Bot'ları listele
GET /api/v1/trading-view-bots?brokerageCode=TradeWiseYatirim&accountNumber=77777
Yanıt Örneği
{
"success": true,
"data": [
{
"id": 10,
"name": "THYAO TradingView",
"accountNumber": "77777",
"isActive": true,
"isRunning": false,
"tradingViewBotDetails": [
{
"symbol": "THYAO",
"algoName": "EMA_CROSS",
"period": "1H",
"quantity": 100,
"maxBuyPrice": 280.00,
"minBuyPrice": 210.00,
"maxSellPrice": 300.00,
"minSellPrice": 220.00
}
],
"createdDate": "2026-02-01T10:00:00Z"
}
]
}
TradingViewBot Alanları
| id | Bot ID |
| name | Bot adı |
| accountNumber | Bağlı hesap numarası |
| tradingViewBotDetails | Sembol konfigürasyonları listesi |
| algoName | Algo adı — webhook payload'daki algo ile eşleşmeli |
| period | Sinyal periyodu (örn. "1H", "4H", "1D") |
| quantity | Sinyal başına emir miktarı (lot) |
| maxBuyPrice / minBuyPrice | Alış fiyat limitleri (konfigürasyon) |
/api/v1/trading-view-bots/{'{id}'}
ID ile TradingView Bot getir
GET /api/v1/trading-view-bots/10?brokerageCode=TradeWiseYatirim
/api/v1/trading-view-bots
Yeni TradingView Bot oluştur
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"name": "THYAO TV Botu",
"isActive": true,
"tradingViewBotDetails": [
{
"symbol": "THYAO",
"algoName": "EMA_CROSS",
"period": "1H",
"quantity": 100,
"maxBuyPrice": 280.00,
"minBuyPrice": 210.00,
"maxSellPrice": 300.00,
"minSellPrice": 220.00
}
]
}
/api/v1/trading-view-bots/{'{id}'}
TradingView Bot güncelle
İstek Gövdesi
{
"brokerageCode": "TradeWiseYatirim",
"accountNumber": "77777",
"name": "THYAO TV Güncellenmiş",
"isActive": false,
"tradingViewBotDetails": [
{
"symbol": "THYAO",
"algoName": "EMA_CROSS",
"period": "4H",
"quantity": 200,
"maxBuyPrice": 290.00,
"minBuyPrice": 205.00,
"maxSellPrice": 310.00,
"minSellPrice": 215.00
}
]
}
/api/v1/trading-view-bots/{'{id}'}/pair-orders
TradingView Bot'un aktif çift emirlerini listele
GET /api/v1/trading-view-bots/10/pair-orders?brokerageCode=TradeWiseYatirim
Yanıt Örneği
{
"success": true,
"data": [
{
"id": 2001,
"systemId": 10,
"symbol": "THYAO",
"algoName": "EMA_CROSS",
"period": "1H",
"accountNumber": "77777",
"buyQuantity": 100,
"buyStatus": 2,
"buyOrderNo": "305344801",
"buyOrderDate": "2026-04-10T11:00:00Z",
"sellQuantity": 0,
"sellStatus": 0,
"sellOrderNo": null,
"sellOrderDate": null
}
]
}
Not: TradingView pair order yanıtlarında gerçek işlem fiyatları, stop-loss/take-profit fiyatları, komisyon bilgileri ve webhook payload'ları paylaşılmaz.
📋 Sembol Listeleri
Downstream: listmanagement.tradewize.com.tr:443 | Timeout: 10s | Cache: 30s
/api/v1/symbol-lists
Tüm sembol listelerini getir
{
"success": true,
"data": [
{
"id": 1,
"name": "BIST 30",
"description": "BIST'in ilk 30 şirketi",
"symbolCount": 30,
"listType": "INDEX",
"isPublic": true
}
]
}
/api/v1/symbol-lists/{'{id}'}
Belirli bir sembol listesinin detaylarını getir
{
"success": true,
"data": {
"id": 1,
"name": "BIST 30",
"symbols": ["ASELS", "THYAO", "EREGL"],
"listType": "INDEX"
}
}
/api/v1/symbol-lists
Yeni sembol listesi oluştur
{
"name": "Teknoloji Hisseleri",
"description": "Teknoloji sektörü şirketleri",
"symbols": ["ASELS", "LOGO", "NETAS"],
"listType": "CUSTOM",
"isPublic": false
}
/api/v1/symbol-lists/{'{id}'}
Sembol listesini güncelle
{
"name": "Güncellenmiş Liste",
"description": "Yeni açıklama",
"symbols": ["ASELS", "LOGO", "NETAS", "ARMDA"]
}
/api/v1/symbol-lists/{'{id}'}
Sembol listesini sil
{
"success": true,
"message": "Liste başarıyla silindi"
}
🔤 Semboller
Downstream: listmanagement.tradewize.com.tr:443 | Timeout: 10s | Cache: 60s
/api/v1/symbols
Tüm mevcut sembolleri getir
{
"success": true,
"data": [
{
"symbol": "ASELS",
"name": "Aselsan Elektronik",
"exchange": "BIST",
"isActive": true
}
]
}
/api/v1/symbols/{'{symbol}'}
Belirli bir sembol hakkında detaylı bilgi getir
{
"success": true,
"data": {
"symbol": "ASELS",
"name": "Aselsan Elektronik",
"exchange": "BIST",
"isActive": true
}
}
⚠️ Tedbirli Hisseler
BIST'in volatilite/pazar bazlı tedbirlerine (Açığa Satış Yasağı, Brüt Takas, Tek Fiyat İşlem vb.)
tabi hisseleri sorgular. Bir hisse aynı anda birden fazla tedbirde olabilir ve her tedbirin
bir başlangıç/bitiş tarihi vardır. Aktif tedbirlerde validTo alanı null'dır.
Geçmiş tedbirler korunur (tarihçe).
Downstream: listmanagement.tradewize.com.tr:443 | Timeout: 10s | Cache: 6 saat (yazma sonrası invalidasyon) | Yetki: read scope
Tedbir Tipi Kodları
restrictionType parametresi sayı (ör. 3) ya da isim (ör. BrutTakas) olarak verilebilir.
| Kod | İsim (enum) | Açıklama |
|---|---|---|
| 1 | AcigaSatisYasagi | Açığa Satış Yasağı |
| 2 | KredliIslemYasagi | Kredili İşlem Yasağı |
| 3 | BrutTakas | Brüt Takas |
| 4 | TekFiyatIslem | Tek Fiyat İşlem Yöntemi |
| 5 | EmirIptalYasagi | Emir İptali Yasağı |
| 6 | AcilisKapanisIslemKisiti | Açılış/Kapanış İşlem Kısıtı |
| 7 | DegerTavani | Değer Tavanı |
| 8 | IslemSirasiKapatma | İşlem Sırası Kapatma |
| 99 | Diger | Diğer (kaynakta eşlenmeyen tedbir) |
/api/v1/public/restrictions
Şu an aktif tedbiri olan tüm hisseler, hisse bazında gruplu (her hissenin tüm aktif tedbir tipleriyle).
İsteğe bağlı ?restrictionType= ile tek tipe filtrelenir.
Örnek istek (cURL)
curl -H "Authorization: Bearer $TOKEN" \
"https://api.tradewize.com.tr/api/v1/public/restrictions?restrictionType=BrutTakas"
Örnek yanıt
{
"success": true,
"data": [
{
"symbolId": 12,
"code": "ASELS",
"name": "ASELSAN",
"logoUrl": "https://.../ASELS.png",
"restrictions": [
{
"restrictionType": 1,
"restrictionTypeName": "Açığa Satış Yasağı",
"validFrom": "2026-05-20T00:00:00+03:00",
"validTo": null,
"sourceRef": "KAP-2026-0512"
},
{
"restrictionType": 3,
"restrictionTypeName": "Brüt Takas",
"validFrom": "2026-05-20T00:00:00+03:00",
"validTo": null,
"sourceRef": "KAP-2026-0512"
}
]
}
]
}
/api/v1/public/restrictions/check/{'{code}'}/{'{restrictionType}'}
"Bu hisse şu an bu tedbirde mi?" — tek hisse + tek tedbir tipi aktiflik kontrolü.
Yalnızca aktif (devam eden) tedbirlere bakar; geçmiş tedbirler false döndürür.
Örnek: "EREGL brüt takasta mı?"
curl -H "Authorization: Bearer $TOKEN" \
"https://api.tradewize.com.tr/api/v1/public/restrictions/check/EREGL/BrutTakas"
Örnek yanıt (tedbirde değil)
{
"success": true,
"data": {
"code": "EREGL",
"restrictionType": 3,
"restrictionTypeName": "Brüt Takas",
"isRestricted": false,
"validFrom": null
}
}
Örnek yanıt (tedbirde)
{
"success": true,
"data": {
"code": "ASELS",
"restrictionType": 3,
"restrictionTypeName": "Brüt Takas",
"isRestricted": true,
"validFrom": "2026-05-20T00:00:00+03:00"
}
}
/api/v1/public/restrictions/by-type/{'{restrictionType}'}
Belirli bir tedbir tipinde şu an bulunan tüm hisselerin yalın listesi. Örn: "Brüt takastaki tüm hisseler".
Örnek istek
# sayı ile
curl -H "Authorization: Bearer $TOKEN" \
"https://api.tradewize.com.tr/api/v1/public/restrictions/by-type/3"
# veya isim ile
curl -H "Authorization: Bearer $TOKEN" \
"https://api.tradewize.com.tr/api/v1/public/restrictions/by-type/BrutTakas"
Örnek yanıt
{
"success": true,
"data": [
{ "symbolId": 12, "code": "ASELS", "name": "ASELSAN", "logoUrl": "https://.../ASELS.png", "validFrom": "2026-05-20T00:00:00+03:00" },
{ "symbolId": 31, "code": "BIMAS", "name": "BIM MAGAZALAR", "logoUrl": "https://.../BIMAS.png", "validFrom": "2026-05-30T00:00:00+03:00" },
{ "symbolId": 47, "code": "SASA", "name": "SASA POLYESTER", "logoUrl": "https://.../SASA.png", "validFrom": "2026-05-28T00:00:00+03:00" }
]
}
/api/v1/public/restrictions/{'{code}'}
Tek bir hissenin tüm tedbirleri (aktif + geçmiş), en yeniden eskiye sıralı.
Aktif tedbirlerde validTo alanı null'dır.
Örnek istek
curl -H "Authorization: Bearer $TOKEN" \
"https://api.tradewize.com.tr/api/v1/public/restrictions/ASELS"
Örnek yanıt
{
"success": true,
"data": [
{
"id": 101,
"symbolId": 12,
"code": "ASELS",
"name": "ASELSAN",
"logoUrl": "https://.../ASELS.png",
"restrictionType": 1,
"restrictionTypeName": "Açığa Satış Yasağı",
"validFrom": "2026-05-20T00:00:00+03:00",
"validTo": null,
"isActive": true,
"sourceRef": "KAP-2026-0512"
},
{
"id": 88,
"symbolId": 12,
"code": "ASELS",
"name": "ASELSAN",
"logoUrl": "https://.../ASELS.png",
"restrictionType": 4,
"restrictionTypeName": "Tek Fiyat İşlem Yöntemi",
"validFrom": "2026-04-01T00:00:00+03:00",
"validTo": "2026-04-30T00:00:00+03:00",
"isActive": false,
"sourceRef": "KAP-2026-0388"
}
]
}
JavaScript (fetch) ile kullanım
Bir hissenin emir gönderilmeden önce brüt takasta olup olmadığını kontrol etme.
const BASE = "https://api.tradewize.com.tr";
const headers = { Authorization: `Bearer ${token}` };
// "ASELS brüt takasta mı?" (3 = Brüt Takas)
async function isUnderGrossSettlement(code) {
const res = await fetch(
`${BASE}/api/v1/public/restrictions/check/${code}/3`,
{ headers }
);
const json = await res.json();
return json.data.isRestricted;
}
if (await isUnderGrossSettlement("ASELS")) {
console.warn("ASELS brüt takasta — T+0 nakit gerekebilir.");
}
MCP / AI asistanı: Bu uçlar MCP üzerinden de kullanılabilir —
check_symbol_restriction, get_restricted_symbols_by_type,
get_symbol_restrictions araçları. Ayrıntı için
MCP Server sayfasına bakın.
📊 Liste Tipleri
Downstream: listmanagement.tradewize.com.tr:443 | Timeout: 10s | Cache: 120s
/api/v1/list-types
Tüm mevcut liste tiplerini getir
{
"success": true,
"data": [
{ "id": 1, "code": "INDEX", "name": "Endeks", "description": "Borsa endeksi listeleri" },
{ "id": 2, "code": "CUSTOM", "name": "Özel Liste", "description": "Kullanıcı tanımlı listeler" }
]
}
/api/v1/list-types/{'{id}'}
Belirli bir liste tipi hakkında detaylı bilgi getir
{
"success": true,
"data": {
"id": 1,
"code": "INDEX",
"name": "Endeks",
"description": "Borsa endeksi listeleri"
}
}
Yaygın Durum Kodları
| Durum Kodu | Açıklama |
|---|---|
200 OK | İstek başarılı |
400 Bad Request | Geçersiz istek parametreleri |
401 Unauthorized | Eksik veya geçersiz kimlik doğrulama |
403 Forbidden | Yetersiz izinler |
404 Not Found | Kaynak bulunamadı |
429 Too Many Requests | Rate limit aşıldı (saatte 5000 istek) |
500 Internal Server Error | Sunucu hatası |
📦 Postman Collection Mevcut!
Tüm bu endpoint'leri Postman'de test etmek için hazır collection dosyamızı kullanabilirsiniz:
- • TradeWise-Developer-API.postman_collection.json — Kimlik doğrulama, hesaplar, emirler, sistemler, Level Bot, TradingView Bot ve daha fazlası
- • TradeWise-Developer-API.postman_environment.json — Environment değişkenleri
- • Otomatik token yönetimi ve yenileme
- • Rate limit izleme