Back to Blog

Developer / C01

MERX REST API: 46 Uç Nokta TRON Enerji Ticareti için

MERX REST API, TRON enerji ve bandwidth ticaretinin tam yaşam döngüsünü kapsayan 46 uç noktası sağlar - sekiz sağlayıcı arasında gerçek zamanlı fiyat keşfinden sipariş yürütme, hesap yönetimi, zincir üstü sorguları ve otomatik kalıcı siparişlere kadar. Bu makale API mimarisini, kimlik doğrulama modelini, uç nokta gruplarını, hız sınırlamalarını, hata yönetimini ve curl, JavaScript ve Python'da pratik kod örneklerini ele almaktadır.

Birleştirilmiş bir API'nin Neden Önemli Olduğu

TRON enerji piyasası, her birinin kendi API formatı, kimlik doğrulama şeması ve fiyatlandırma modeline sahip birden fazla sağlayıcı arasında parçalanmıştır. Bir USDT transferinde en iyi fiyatı istenen bir geliştirici, her sağlayıcı ile ayrı ayrı entegrasyon yapmak, yedek mantığı işlemek ve fiyatları sürekli izlemek zorundadır.

MERX tüm bunları tek bir REST API'de birleştiriyor. Bir API anahtarı, bir kimlik doğrulama başlığı, bir hata biçimi, bir SDK seti. Platform tüm bağlı sağlayıcıları her 30 saniyede bir yoklar, siparişleri en ucuz kullanılabilir kaynağa yönlendirir ve delegasyonları zincir üstünde doğrular.

API, /api/v1/ adresinde sürümlendirilmiş ve geriye dönük uyumluluğu koruyacaktır. Tüm uç noktalar tutarlı bir zarf biçiminde JSON döndürür.

Kimlik Doğrulama

MERX, API anahtarı kimlik doğrulaması kullanır. Her kimliği doğrulanmış istek, X-API-Key başlığını içermelidir.

API anahtarları, MERX panosunda merx.exchange adresinde veya /api/v1/keys uç noktası aracılığıyla programlı olarak oluşturulur. Her anahtarın, hangi işlemleri gerçekleştirebileceğini kontrol eden bir izin seti vardır.

curl -H "X-API-Key: sk_live_your_key_here" \
  https://merx.exchange/api/v1/balance

Anahtarlar sk_live_ formatını takip eder ve bunu 64 onaltılı karakter izler. Ham anahtar, oluşturma sırasında tam olarak bir kez gösterilir. MERX yalnızca bcrypt karmasını depolar, bu nedenle kaybolan anahtarlar kurtarılamaz - bunları iptal etmek ve değiştirmek gerekir.

Anahtar İzinleri

Bir API anahtarı oluştururken, bir veya daha fazla izin atarsınız:

Data table
İzinErişim sağlar
create_ordersPOST /orders, POST /ensure
view_ordersGET /orders, GET /orders/:id
view_balanceGET /balance, GET /history
broadcastPOST /chain/broadcast

Bu, izleme panolarında yalnızca okunabilir anahtarlar ve otomatik ticaret sistemleri için kısıtlı anahtarlar oluşturmanıza olanak sağlar.

Yanıt Zarfı

Her yanıt aynı yapıyı izler:

{
  "data": { ... }
}

Hata durumunda:

{
  "error": {
    "code": "INSUFFICIENT_FUNDS",
    "message": "Account balance too low for the requested operation",
    "details": { "required": 150000000, "available": 42000000 }
  }
}

Hata kodları makine tarafından okunabilir dizelerdir. details alanı isteğe bağlı olup hata ayıklama için bağlam sağlar.

Uç Nokta Grupları

46 uç noktası dokuz gruba ayrılmıştır. İşte tam harita.

Fiyatlar (6 Uç Nokta)

Bu uç noktalar herkese açıktır - API anahtarı gerekmez.

Data table
MethodYolAçıklama
GET/api/v1/pricesTüm sağlayıcılardan güncel fiyatlar
GET/api/v1/prices/bestKaynak türü için en ucuz sağlayıcı
GET/api/v1/prices/historyGeçmiş fiyat verileri
GET/api/v1/prices/statsToplam pazar istatistikleri
GET/api/v1/prices/analysisTrend analizi ve satın alma tavsiyesi
GET/api/v1/orders/previewSipariş vermeden önce maliyet önizlemesi

Siparişler (3 Uç Nokta)

Data table
MethodYolAçıklama
POST/api/v1/ordersYeni bir enerji veya bandwidth siparişi
GET/api/v1/ordersSayfalama ve filtrelerle siparişleri listele
GET/api/v1/orders/:idDoldurma dökümü ile sipariş detayları

Hesap (7 Uç Nokta)

Data table
MethodYolAçıklama
GET/api/v1/balanceGüncel TRX ve USDT bakiyeleri
GET/api/v1/deposit/infoYatırım adresi ve memo
POST/api/v1/deposit/prepareYatırım işlemini hazırla
POST/api/v1/deposit/submitYatırım kanıtı gönder
POST/api/v1/withdrawTRX veya USDT çek
GET/api/v1/historySipariş yürütme geçmişi
GET/api/v1/history/summaryToplam hesap istatistikleri

API Anahtarları (3 Uç Nokta)

Data table
MethodYolAçıklama
GET/api/v1/keysTüm API anahtarlarını listele
POST/api/v1/keysYeni API anahtarı oluştur
DELETE/api/v1/keys/:idBir API anahtarını iptal et

Kimlik Doğrulama (2 Uç Nokta)

Data table
MethodYolAçıklama
POST/api/v1/auth/registerYeni hesap oluştur
POST/api/v1/auth/loginKimlik doğrulaması yap ve JWT al

Tahmin (2 Uç Nokta)

Data table
MethodYolAçıklama
POST/api/v1/estimateİşlem için enerji ve maliyeti tahmin et
POST/api/v1/ensureBir adreste minimum kaynakları sağla

Web Kancaları (3 Uç Nokta)

Data table
MethodYolAçıklama
POST/api/v1/webhooksWeb kancası aboneliği oluştur
GET/api/v1/webhooksWeb kancası aboneliklerini listele
DELETE/api/v1/webhooks/:idWeb kancasını sil

Kalıcı Siparişler ve İzleyiciler (7 Uç Nokta)

Data table
MethodYolAçıklama
POST/api/v1/standing-ordersKalıcı sipariş oluştur
GET/api/v1/standing-ordersKalıcı siparişleri listele
GET/api/v1/standing-orders/:idKalıcı sipariş detaylarını al
DELETE/api/v1/standing-orders/:idKalıcı siparişi iptal et
POST/api/v1/monitorsKaynak izleyicisi oluştur
GET/api/v1/monitorsAktif izleyicileri listele
DELETE/api/v1/monitors/:idİzleyiciyi iptal et

Zincir Vekili (10 Uç Nokta)

Bu uç noktalar TRON ağı sorgularını MERX üzerinden vekil eder ve istemcilerin TronGrid'i doğrudan aramasına gerek kalmaz.

Data table
MethodYolAçıklama
GET/api/v1/chain/account/:addressHesap bilgisi ve kaynakları
GET/api/v1/chain/balance/:addressTRX bakiyesi
GET/api/v1/chain/resources/:addressEnergy ve bandwidth dökümü
GET/api/v1/chain/transaction/:txidİşlem detayları
GET/api/v1/chain/block/:numberBlok numarası veya son blok
GET/api/v1/chain/parametersZincir parametreleri
GET/api/v1/chain/history/:addressAdres işlem geçmişi
POST/api/v1/chain/read-contractSabit kontrat işlevini çağır
POST/api/v1/chain/broadcastİmzalı işlemi yayınla
GET/api/v1/address/:addr/resourcesAdres kaynakları özeti

x402 Kullanım Başına Ödeme (3 Uç Nokta)

Data table
MethodYolAçıklama
POST/api/v1/x402/invoiceÖdeme faturası oluştur
GET/api/v1/x402/invoice/:idFatura durumunu kontrol et
POST/api/v1/x402/verifyÖdemeyi doğrula ve yürüt

Temel Uç Noktalar Detaylı

GET /api/v1/prices

Tüm etkin sağlayıcılardan güncel fiyatlandırma döndürür. Kimlik doğrulama gerekmez. Piyasanın tamamını bir bakışta görmek için çağırdığınız uç noktadır.

curl https://merx.exchange/api/v1/prices

Yanıt (kısaltılmış):

{
  "data": [
    {
      "provider": "sohu",
      "is_market": false,
      "energy_prices": [
        { "duration_sec": 3600, "price_sun": 24 },
        { "duration_sec": 86400, "price_sun": 30 }
      ],
      "bandwidth_prices": [],
      "available_energy": 5000000,
      "available_bandwidth": 0,
      "fetched_at": 1743292800
    }
  ]
}

Her sağlayıcı girdisi fiyat seviyelerini (süreye göre), kullanılabilir kapasiteyi ve son başarılı yoklama zaman damgasını içerir.

POST /api/v1/orders

Enerji veya bandwidth siparişi oluşturur. Platform siparişi mevcut sağlayıcılara karşı eşleştirir ve bunu yerine getirebilecek en ucuz sağlayıcıya yönlendirir.

curl -X POST https://merx.exchange/api/v1/orders \
  -H "X-API-Key: sk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: unique-request-id-123" \
  -d '{
    "resource_type": "ENERGY",
    "order_type": "MARKET",
    "amount": 65000,
    "target_address": "TJYpFDq5cVnRJey8Xt8HfaRtNkqFTZwBb",
    "duration_sec": 3600
  }'

Yanıt:

{
  "data": {
    "id": "ord_a1b2c3d4",
    "status": "PENDING",
    "created_at": "2026-03-30T12:00:00.000Z"
  }
}

Idempotency-Key başlığı, aynı istek yeniden denenirse yinelenen siparişleri önler. Anahtar daha önce görülmüşse, API yeni bir tane oluşturmak yerine orijinal siparişi döndürür.

Sipariş türleri:

GET /api/v1/orders/:id

Doldurma detayları ile siparişi döndürür - hangi sağlayıcılar siparişi yerine getirdi, hangi fiyattan ve zincir üstü işlem kimlikleri.

curl -H "X-API-Key: sk_live_your_key_here" \
  https://merx.exchange/api/v1/orders/ord_a1b2c3d4
{
  "data": {
    "id": "ord_a1b2c3d4",
    "resource_type": "ENERGY",
    "order_type": "MARKET",
    "status": "FILLED",
    "amount": 65000,
    "target_address": "TJYpFDq5cVnRJey8Xt8HfaRtNkqFTZwBb",
    "duration_sec": 3600,
    "total_cost_sun": 1560000,
    "fills": [
      {
        "provider": "sohu",
        "amount": 65000,
        "price_sun": 24,
        "cost_sun": 1560000,
        "delegation_tx": "abc123def456...",
        "verified": true,
        "tronscan_url": "https://tronscan.org/#/transaction/abc123def456..."
      }
    ]
  }
}

POST /api/v1/estimate

TRON işlemi için gereken enerji ve bandwidth'i tahmin eder, daha sonra kiralama maliyetini TRX yakma maliyeti ile karşılaştırır.

curl -X POST https://merx.exchange/api/v1/estimate \
  -H "Content-Type: application/json" \
  -d '{
    "operation": "trc20_transfer",
    "to_address": "TJYpFDq5cVnRJey8Xt8HfaRtNkqFTZwBb",
    "amount": "1000000"
  }'
{
  "data": {
    "energy_required": 65000,
    "bandwidth_required": 345,
    "rental_cost": {
      "energy": {
        "best_price_sun": 24,
        "best_provider": "sohu",
        "cost_trx": "1.560"
      }
    },
    "total_rental_trx": "1.905",
    "total_burn_trx": "27.645",
    "savings_percent": 93.1
  }
}

Bu uç nokta, kullanıcılara MERX aracılığıyla enerji kiralayarak TRX yakmaya karşı tam olarak ne kadar tasarruf ettiklerini göstermek için yararlıdır.

Hız Sınırlamaları

Hız sınırlamaları, kayan pencereler kullanan IP adresi başına uygulanır.

Data table
Uç nokta grubuSınırPencere
Fiyatlar (herkese açık)300 istek1 dak
Varsayılan (genel)100 istek1 dak
Bakiye60 istek1 dak
Geçmiş60 istek1 dak
Siparişler10 istek1 dak
Çekilişler5 istek1 dak
Yayınlama20 istek1 dak
Kayıt5 istek1 saat

Hız sınırlaması aşıldığında, API HTTP 429'u standart hata biçimi ile döndürür:

{
  "error": {
    "code": "RATE_LIMITED",
    "message": "Rate limit exceeded"
  }
}

Hız sınırı başlıkları (RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset) IETF taslak standardını takip ederek tüm yanıtlara dahil edilir.

Hata Kodları

Data table
KodHTTPAçıklama
UNAUTHORIZED401Geçersiz veya eksik API anahtarı
RATE_LIMITED429Çok fazla istek
VALIDATION_ERROR400İstek gövdesi veya parametreleri doğrulama başarısız
INVALID_ADDRESS400Geçerli olmayan TRON adresi
INSUFFICIENT_FUNDS400Hesap bakiyesi çok düşük
BELOW_MINIMUM_ORDER400Sipariş miktarı sağlayıcı minimumunun altında
DUPLICATE_REQUEST409İdempotency anahtarı zaten kullanıldı
ORDER_NOT_FOUND404Sipariş veya kaynak bulunamadı
PROVIDER_UNAVAILABLE404Hiçbir sağlayıcı isteği yerine getiremez
INTERNAL_ERROR500Sunucu tarafı hatası

SDK'larla Hızlı Başlangıç

REST API, herhangi bir HTTP istemcisi ile doğrudan çağrılabilse de, MERX kimlik doğrulama, hata ayrıştırma ve tip güvenliğini işleyen JavaScript ve Python için resmi SDK'lar sağlar.

JavaScript / TypeScript

npm install merx-sdk
import { MerxClient } from 'merx-sdk'

const merx = new MerxClient({ apiKey: 'sk_live_your_key_here' })

// Tüm fiyatları al
const prices = await merx.prices.list()

// Sipariş oluştur
const order = await merx.orders.create({
  resource_type: 'ENERGY',
  amount: 65000,
  target_address: 'TJYpFDq5cVnRJey8Xt8HfaRtNkqFTZwBb',
  duration_sec: 3600,
})

// Sipariş durumunu kontrol et
const details = await merx.orders.get(order.id)

Python

pip install merx-sdk
from merx import MerxClient

client = MerxClient(api_key="sk_live_your_key_here")

# Tüm fiyatları al
prices = client.prices.list()

# Sipariş oluştur
order = client.orders.create(
    resource_type="ENERGY",
    amount=65000,
    target_address="TJYpFDq5cVnRJey8Xt8HfaRtNkqFTZwBb",
    duration_sec=3600,
)

# Sipariş durumunu kontrol et
details = client.orders.get(order.id)

Gerçek Zamanlı Veriler için WebSocket

REST API'ye ek olarak, MERX wss://merx.exchange/ws adresinde gerçek zamanlı fiyat güncellemeleri için bir WebSocket uç noktası sağlar. Fiyat değişiklikleri gerçekleştikçe bağlı istemcilere gönderilir ve güncellemeler her sağlayıcı için 30 saniyede bir gelir.

WebSocket bağlantısı sağlayıcı filtrelemesini destekler - yalnızca önemsediğiniz sağlayıcılara abone olun ve geri kalanını yok sayın.

Kalıcı Siparişler

Kalıcı siparişler, tetikleyicilere dayalı enerji satın almalarını otomatikleştirir. Bir fiyat eşiği, bir zamanlama veya bir bakiye koşulu belirleyebilir ve platform belirtilen bütçe dahilinde siparişleri otomatik olarak yürütür.

Tetikleme türleri price_below, price_above, schedule, balance_below ve provider_available içerir. İşlem türleri buy_resource, ensure_resources, deposit_trx ve notify_only içerir.

Bu, MERX'i tam otomatik altyapı yönetimi için uygun hale getirir - kurallarınızı bir kez belirleyin ve platform yürütmeyi işleyin.

Sırada Ne Var

MERX API, TRON ağ kaynaklarına güvenilir, uygun maliyetli erişim gereken geliştiriciler ve işletmeler için tasarlanmıştır. Bir ödeme işlemcisi, bir DeFi uygulaması veya bir exchange oluşturuyor olsanız da, API enerji ve bandwidth'i programlı olarak yönetmek için yapı taşları sağlar.

Tam API belgeleri merx.exchange/docs adresinde mevcuttur. JavaScript SDK GitHub ve npm üzerindedir. Python SDK PyPI üzerindedir.


Bağlantılar:

Yapay Zeka ile Hemen Deneyin

MERX'i Claude Desktop veya herhangi bir MCP uyumlu istemcisine ekleyin -- kurulum yok, yalnızca okunan araçlar için API anahtarı yok:

{
  "mcpServers": {
    "merx": {
      "url": "https://merx.exchange/mcp/sse"
    }
  }
}

Yapay zeka ajanınıza sorun: "Şu anda en ucuz TRON enerjisi nedir?" ve tüm bağlı sağlayıcılardan canlı fiyatlar alın.

Tam MCP belgeleri: merx.exchange/docs/tools/mcp-server


All Articles