API Testing e Guida all'Ambiente Sandbox

Padroneggia i test con l'ambiente sandbox completo di Smart Money API. Sviluppa senza rischi utilizzando dati di test realistici, risposte deterministiche e generosi limiti di frequenza per sperimentare.

Pubblicato il 21 marzo 2026 14 min di lettura Sviluppo

Panoramica dell'Ambiente Sandbox

Smart Money API fornisce un ambiente sandbox completo per lo sviluppo e il testing. La sandbox rispecchia la struttura dell'API di produzione ma utilizza dati sintetici e generosi limiti di frequenza, consentendoti di sviluppare con sicurezza prima del lancio.

Caratteristiche principali:

  • Identico alla Produzione — Stessi endpoint, autenticazione, formato di risposta
  • Solo Dati di Test — Non influisce mai su account reali o mercati live
  • Alti Limiti di Frequenza — 10.000 richieste/ora contro 1.000 in produzione
  • Risposte Deterministiche — Dati di test consistenti per test riproducibili
  • Account Isolati — Separati dai dati utente di produzione

Migliori Pratiche: Tutto lo sviluppo, i test e lo staging dovrebbero utilizzare l'ambiente sandbox. Utilizza la produzione solo dopo una validazione approfondita in sandbox.

Funzionalità della Sandbox

Dati di Test Realistici

La sandbox contiene dati di mercato crittografico realistici che non cambiano casualmente:

  • Dati di mercato storici (6 mesi di OHLCV realistici)
  • Indirizzi di portafoglio di whale fissi con schemi di movimento consistenti
  • Tassi di funding stabili che si resettano ogni ora
  • Schemi di liquidazione deterministici per testare casi limite

Funzionalità Specifiche per i Test

Funzionalità di Test
// Simboli di test deterministici
// Tutti i simboli di test iniziano con TEST_
TEST_BTC, TEST_ETH, TEST_SOL, ecc.
// Timestamp magici per simulare scenari
GET /v1/derivatives/funding-heatmap?
timestamp=1234567890000 // Restituisce dati di test fissi
// Forza errori per testare la gestione delle eccezioni
X-Test-Error: rate_limit_exceeded
X-Test-Error: service_unavailable

Utilità di Test

  • Reset dei Dati — Riporta tutti gli account di test allo stato iniziale
  • Controllo del Tempo — Simula diverse condizioni di mercato
  • Iniezione di Errori — Forza risposte di errore specifiche
  • Test dei Limiti di Frequenza — Attiva risposte di limite di frequenza
Ottieni la tua API key in 30 secondi

Pronto a costruire? Ottieni una API key gratuita (200 chiamate/giorno, nessuna carta) e inizia a recuperare dati live su whale, funding e on-chain.

Ottieni la tua API key →

Credenziali di Test

Ottenere le API Key di Test

Crea un account di test tramite il dashboard per generare API key sandbox:

Formato delle Chiavi di Test
// Le chiavi di test hanno un prefisso diverso
sk_test_1234567890abcdef // API key di test
sk_live_1234567890abcdef // API key di produzione
// Instrada automaticamente all'ambiente appropriato
GET https://api.smartmoneyapi.com/v1/whales
-H "Authorization: Bearer sk_test_xxx"
# Instrada automaticamente alla sandbox

Chiavi di Test Preconfigurate

Utilizza queste chiavi di test pubbliche per sperimentare rapidamente (limite di frequenza):

Chiave Permessi Limite
sk_test_demo Lettura completa 100/ora
sk_test_trader Lettura + avvisi 500/ora
sk_test_pro Accesso completo 5000/ora

Non utilizzare mai le chiavi di test in produzione. Hanno funzionalità e limiti di frequenza limitati.

Dati e Fixture di Test

Simboli di Test Disponibili

La sandbox include queste coppie di trading di test con dati storici realistici:

Simboli di Test
// Coppie crittografiche
TEST_BTCUSDT, TEST_ETHUSDT, TEST_BNBUSDT
TEST_SOLSDT, TEST_ARBUSDT, TEST_OPUSDT
// Interroga i simboli di test
GET /v1/symbols?test_only=true

Portafogli Whale di Test

Portafogli di test preconfigurati con comportamento deterministico:

  • Portafoglio Accumulatore — Acquista costantemente, utile per test rialzisti
  • Portafoglio Distributore — Vende costantemente, utile per test ribassisti
  • Portafoglio Oscillatore — Alterna acquisti/vendite, utile per test in range
  • Portafoglio Volatilità — Transazioni grandi e casuali per stress test

Ripristino dei Dati di Test

Ripristina Dati di Test
// Riporta tutti gli account di test allo stato iniziale
POST /v1/test/reset
-H "Authorization: Bearer sk_test_xxx"
// Ripristina una risorsa specifica
POST /v1/test/reset?resource=whales
// Risposta
{
"status": "reset_complete",
"timestamp": 1709980800000
}

Endpoint Sandbox

URL di Base

URL degli Ambienti
// Sandbox (modalità di test)
https://api-test.smartmoney.io/v1
// Oppure usa il parametro di query
https://api.smartmoneyapi.com/v1?environment=sandbox
// Produzione (modalità live)
https://api.smartmoneyapi.com/v1

Endpoint Solo Sandbox

Endpoint Scopo
POST /test/reset Ripristina i dati di test allo stato iniziale
POST /test/inject-error Inietta un errore specifico per i test
POST /test/simulate-time Simula diverse condizioni di mercato
GET /test/status Controlla lo stato di salute dell'ambiente sandbox

Mocking delle Risposte

Iniezione di Errori di Test

Forza risposte di errore specifiche per testare la gestione delle eccezioni:

Iniezione di Errori
// Testa la gestione del limite di frequenza
GET /v1/whales?X-Test-Error=rate_limit_exceeded
// Testa l'indisponibilità del servizio
GET /v1/whales?X-Test-Error=service_unavailable
// Testa il fallimento dell'autenticazione
GET /v1/whales?X-Test-Error=invalid_key
// Testa il timeout
GET /v1/whales?X-Test-Error=timeout

Errori di Test Disponibili

Codice Errore Stato HTTP Caso d'Uso
invalid_key 401 Gestione degli errori di autenticazione
rate_limit_exceeded 429 Test della logica di backoff
not_found 404 Gestione delle risorse mancanti
service_unavailable 503 Test della logica di riprova
timeout 504 Gestione dei timeout

Limiti di Frequenza Sandbox

Livelli di Limite di Frequenza

Ambiente Limite/Ora Burst Scopo
Sandbox 10,000 500/min Sviluppo e test
Produzione Gratuita 1,000 50/min Progetti hobbistici
Produzione Trader 10,000 400/min Trading professionale
Produzione Pro 50,000 1000/min Sistemi ad alta frequenza

Test della Gestione dei Limiti di Frequenza

Test dei Limiti di Frequenza
// Attiva la risposta del limite di frequenza in sandbox
curl -H "X-Test-Error: rate_limit_exceeded" \
https://api-test.smartmoney.io/v1/whales
// La risposta include intestazioni di riprova
HTTP/1.1 429 Troppe Richieste
X-RateLimit-Limit: 10000
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1709984400
Retry-After: 3600

Strategie di Test

Test Unitari con Fixtures

Test Unitario Python
import unittest
import requests
class TestSmartMoneyAPI(unittest.TestCase):
def setUp(self):
self.api_key = 'sk_test_demo'
self.base_url = 'https://api-test.smartmoney.io/v1'
def test_whale_tracking(self):
response = requests.get(
f'{self.base_url}/whales/TEST_BTC',
headers={'Authorization': f'Bearer {self.api_key}'}
)
self.assertEqual(response.status_code, 200)
self.assertIn('whales', response.json())

Test di Integrazione

Testa l'intero flusso di lavoro in sandbox prima del deployment in produzione:

  1. Deploy in staging con credenziali sandbox
  2. Esegui la suite completa di test contro il sandbox
  3. Testa la gestione degli errori con l'iniezione di errori
  4. Verifica il comportamento del limite di frequenza
  5. Controlla il tempo di risposta e la latenza
  6. Solo allora promuovi in produzione

Test di Carico

Test di Carico con Apache Bench
// Il sandbox consente test di carico elevato
ab -n 5000 -c 100 \
-H "Authorization: Bearer sk_test_pro" \
https://api-test.smartmoney.io/v1/whales/TEST_BTC

Integrazione CI/CD

Esempio di GitHub Actions

.github/workflows/test.yml
name: Test API
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: pip install requests pytest
- env:
SMARTMONEY_API_KEY: ${{ secrets.TEST_API_KEY }}
SMARTMONEY_ENV: sandbox
run: pytest tests/

Configurazione dell'Ambiente

Usa le variabili d'ambiente per passare tra sandbox e produzione:

Configurazione dell'Ambiente
// .env.sandbox
SMARTMONEY_API_KEY=sk_test_demo
SMARTMONEY_API_URL=https://api-test.smartmoney.io/v1
SMARTMONEY_ENV=sandbox
// .env.production
SMARTMONEY_API_KEY=sk_live_xxxx
SMARTMONEY_API_URL=https://api.smartmoneyapi.com/v1
SMARTMONEY_ENV=production

Risoluzione dei Problemi

Problemi Comuni

Chiave di Test Non Funzionante

Problema: Ricevo 401 Non Autorizzato con la chiave di test

Soluzioni:

  • Verifica che la chiave inizi con sk_test_ (non sk_live_)
  • Controlla il formato dell'header Authorization: "Bearer sk_test_xxx"
  • Assicurati di utilizzare l'endpoint di test: api-test.smartmoney.io
  • La chiave di test potrebbe aver superato il limite di frequenza

Dati Non Reimpostati

Problema: I dati di test non si reimpostano dopo POST /test/reset

Soluzioni:

  • La reimpostazione potrebbe richiedere fino a 30 secondi per propagarsi
  • Controlla lo stato della sandbox con GET /test/status
  • Verifica di utilizzare la corretta chiave API di test
  • Contatta il supporto se il problema persiste

Limiti di Frequenza nella Sandbox

Problema: Raggiungimento dei limiti di frequenza nella sandbox (non dovrebbe accadere)

Soluzioni:

  • Verifica di utilizzare la chiave sk_test_pro (10.000/ora)
  • Controlla l'header X-RateLimit-Remaining
  • Attendi il cambio d'ora o utilizza un account di test diverso
  • Contatta il supporto per un aumento temporaneo del limite di frequenza

Inizia a Testare Oggi

Utilizza il nostro ambiente sandbox completo per uno sviluppo sicuro e isolato. Dati di test deterministici, alti limiti di frequenza e completa parità di funzionalità con la produzione.

Ottieni Credenziali di Test
Tutti i piani includono l'accesso alla sandbox. Nessun costo aggiuntivo.

Risorse Correlate

Inizia gratuitamente — 200 chiamate/giorno, nessuna carta

Ottieni dati live sui flussi delle balene, finanziamenti, open interest e on-chain su 3 exchange da un'unica API. Piano gratuito, nessuna carta di credito, aggiorna quando vuoi.

Inizia gratuitamente →
Prova la console API live → (nessun account necessario)