Fiatside

Developers

API dokümantasyonu

Site ile aynı ücret dökümünü satır satır, gizli marj olmadan döndüren bir API. Bu sayfa, her uç noktanın paylaştığı kuralları açıklar ve bugün açık olanı tam olarak belirtir.

Bugün açık olan

1 uç noktası gerçekten açıkta ve çağrılabilir: fiyat teklifi. Diğer 5 sözleşme olarak yayınlanır, böylece açılmadan önce geliştirme yapabilirsiniz ve her biri açık bir rozet taşır.

Önceden belgeliyoruz çünkü entegrasyona yardımcı olur. Bağlı olduğuna inanmanıza izin vermek adil olmaz: her uç nokta durumunu belirtir ve açık uç noktalar için örnek yanıtlar, gerçekten alınan yanıtlardır, sahte değil.

01

Temel URL ve sürümleme

İki temel bir arada var: bugün yanıt veren ve verilen anahtarlarla gelecek sürümlü API.

Bugün
/api Live
Sürümlü API
/api/v1 Published contract, not open

Sürüm yolda yaşar, başlıkta değil: bir URL, bir bilete yapıştırılmaya dayanmalıdır. Kırıcı bir değişiklik — kaldırılan bir alan, değişen bir tür, farklı anlamlar — yeni bir sürüm açar; önceki en az altı ay boyunca sunulmaya devam eder ve bitiş tarihi değişiklik günlüğünde duyurulur. Alan eklemek kırıcı değildir: istemciniz bilmediği alanları yok saymalıdır.

02

Kurallar

Açık veya yaklaşan her uç noktada geçerlidir. Çoğu tek bir nedenle vardır: aktarım sırasında asla bir kuruş kaybetmeyin.

Tutarlar dizedir veya alt birimlerin tamsayılarıdır

Asla ondalık sayı değil. JSON'da 0.1 + 0.2, 0.3 değildir ve büyük bir tutar serileştirmede alt birimleri kaybeder. Bu nedenle ana birim tutarları dize olarak, dahili tutarlar ise ondalık sayılarıyla birlikte alt birimlerin tamsayıları olarak gönderilir.

{
  "net": "912.28",
  "currency": "EUR",
  "currencyDecimals": 2
}

Ondalık sayılar para birimine bağlıdır

Euronun iki ondalığı vardır, CFA frangı ve Vietnam dongunun hiç yoktur. "× 100" kodlamayın: currencyDecimals veya referans verisindeki decimals alanını okuyun.

{ "amount": "125000", "currency": "XOF", "currencyDecimals": 0 }

Kripto tutarları temel birimlerdedir

Para yatırma, ondalık sayısıyla döndürülür: bitcoin için 8, USDT için 6, ether için 18. Aynı kısaltma, ağa bağlı olarak farklı ondalık sayılarla var olabilir: hafızanıza değil, alana güvenin.

{ "deposit": { "amount": "1000.000000", "ticker": "USDT", "decimals": 6 } }

Zaman damgaları

Tarihler ISO 8601 UTC'dir. Kasıtlı bir istisna: rateAsOf, bir Unix zaman damgasıdır milisaniye cinsinden, çünkü bir görüntü değil, bir yaş hesaplamasını besler. Piyasa VERİSİNİN tarihini taşır, isteğinizin değil: bu ayrım, bayat bir fiyatın tespit edilebilir olmasını sağlar.

{ "rateAsOf": 1788356981608, "rateSource": "coingecko" }

Tanımlayıcılar sabittir

Bir varlık, kanal veya ülke tanımlayıcısı asla değişmez ve asla yeniden atanmaz. Kapalı bir kanal, kendi tanımlayıcısını, aşaması ve nedeniyle korur: entegrasyonunuz, seçeneklerinizden neden ayrıldığını görebilir, bir boşluk bulmak yerine.

İnsan odaklı mesajlar iki dillidir

Bir ret nedeni, aynı nesnede Fransızca ve İngilizce olarak döndürülür. Kullanıcınıza uygun olanı gösterirsiniz, kendi tarafınızda tutulacak bir çeviri tablosu olmadan.

{ "reason": { "fr": "…", "en": "…" } }
03

İlk çağrı

Fiyat teklifi için anahtar gerekmez. Bu çağrı olduğu gibi çalışır.

İstekbash
curl -sS -X POST https://fiatside.com/api/quote \
  -H 'Content-Type: application/json' \
  -d '{
    "assetId": "usdt",
    "railId": "sepa_instant",
    "networkId": "tron",
    "direction": "sell",
    "amount": "1000"
  }'
Yanıt — gerçek örnekjson
{
  "deposit": { "amount": "1000.000000", "ticker": "USDT", "decimals": 6 },
  "gross": "921.68",
  "net": "912.28",
  "currency": "EUR",
  "currencyDecimals": 2,
  "midRate": "0.92168430",
  "effectiveRate": "0.91228000",
  "totalCostBps": 102,
  "lines": [
    { "code": "network", "amount": "1.11", "basis": "Cout reseau tron, preleve en USDT" },
    { "code": "spread",  "amount": "8.29", "basis": "0.90 % du montant converti" }
  ],
  "settlement": { "p50Minutes": 1, "p95Minutes": 12 },
  "lockSeconds": 1800,
  "rateAsOf": 1788356981608,
  "rateSource": "mock",
  "limitError": null
}

rateSource alanı, fiyatın nereden geldiğini belirtir. "mock" değeri, üretimde başlatılamayan deterministik geliştirme kaynağıdır: süreç, donmuş fiyatları teklif etmek yerine başlamayı reddeder.

04

Bölümler

05

API'nin yapmayacakları

Bir API'nin sınırlarını bilmek, yeteneklerini bilmek kadar faydalıdır.

  • Üçüncü taraf ödemeleri yok. Alıcı adı, sipariş sahibinin doğrulanmış kimliğiyle eşleşmelidir ve ödeme kanalları artık adı hesaba karşı kontrol eder.
  • API üzerinden hesap oluşturma veya kimlik doğrulama yok. Bu adımlar, kullanıcının kabul ettiğini gördüğü bir akışta gerçekleşir.
  • URL parametresinde anahtar yok. URL'ler günlüklerde, yönlendiren başlıklarında ve geçmişlerde sona erer: bu şekilde iletilen bir anahtar, iptal edilecek bir anahtardır.
  • Bizim tarafımızda fiyat teklifi önbelleğe alma yok. Yanıt, Cache-Control: no-store taşır ve entegrasyonunuz bunu atlamamalıdır: önbelleğe alınmış bir fiyat teklifi, sabit olarak sunulan bayat bir fiyattır.
  • Kripto satın alma uç noktası yok. Hizmet tek yönde çalışır: dijital varlıktan yasal ödemeye.