Blu Pantheon
Riferimento API

Ambienti

Differenze tra sandbox, staging e produzione: credenziali, dati di test, promozione, IP statici e finestre di manutenzione.

Blu Pantheon espone tre ambienti indipendenti. Ognuno ha base URL, credenziali e dati separati: una chiave API di sandbox non funziona in produzione e viceversa.

Confronto

ProduzioneStagingSandbox
Base URLhttps://api.blupantheon.comhttps://api.staging.blupantheon.comhttps://api.sandbox.blupantheon.com
Prefisso chiavibp_live_bp_stg_bp_test_
ScopoTraffico reale dei clientiVerifica pre-rilascio, collaudo di releaseSviluppo e test di integrazione
DatiReali, persistentiCopia anonimizzata, rigenerata mensilmenteSintetici, azzerabili su richiesta
DisponibilitàSLA 99,9 per centoNessuno SLANessuno SLA
Limiti di chiamataSecondo piano sottoscrittoPari al piano BusinessRidotti al 20 per cento
Modelli AIProduzione, versione stabileProduzione, versione stabileModelli ridotti, risposte deterministiche opzionali
Email e SMSRecapitati realmenteIntercettati, non recapitatiIntercettati, non recapitati
PagamentiRealiSimulatiSimulati
Conservazione datiSecondo policy del tenant30 giorni14 giorni
Webhook livemodetruefalsefalse

Non incrociare gli ambienti

Non usare mai dati reali di clienti in sandbox o staging: gli ambienti non di produzione hanno politiche di conservazione e controlli di accesso differenti, e l'inserimento di dati personali reali costituisce una violazione delle policy interne e degli obblighi verso i tuoi interessati.

Ottenere le credenziali di sandbox

Prima di iniziare

  • Un account Blu Pantheon con ruolo Amministratore
  • Un tenant attivo su qualsiasi piano, prova inclusa

Attiva la sandbox

La sandbox è disponibile per tutti i piani e va attivata una volta per tenant.

ConsoleAmministrazioneAmbientiAttiva sandbox

L'attivazione crea un tenant gemello con lo stesso slug, popolato con il set di dati di test descritto più avanti. Richiede alcuni minuti.

Crea una chiave di test

Nella sandbox le chiavi si creano dalla stessa sezione della Console, con l'ambiente impostato su sandbox.

ConsoleAmministrazioneChiavi APINuova chiaveAmbiente: Sandbox

Chiave sandbox

bp_test_••••••••••••••••

Visibile una sola volta. Non ha effetti su dati reali.

Configura il tuo ambiente locale

Punta il client alla sandbox tramite variabili di ambiente, senza modificare il codice.

.env.local
BP_BASE_URL=https://api.sandbox.blupantheon.com
BP_API_KEY=bp_test_xxxxxxxxxxxxxxxx
BP_TENANT_SLUG=acme

Verifica la connessione

curl -sS https://api.sandbox.blupantheon.com/identity/v1/me \
  -H "Authorization: Bearer bp_test_xxxxxxxxxxxxxxxx"

La risposta deve contenere "livemode": false. Se contiene true stai chiamando l'ambiente sbagliato.

L'accesso a staging è riservato ai piani Enterprise e va richiesto al referente tecnico: non è autoprovisionabile dalla Console.

Dati di test

La sandbox viene inizializzata con un set di dati coerente che puoi usare negli script di integrazione.

RisorsaIdentificativoNote
Tenanttnt_sandbox_0001Slug identico a quello di produzione
Progettobp_proj_7f3a9c21Progetto dimostrativo pubblicato, canale web attivo
Knowledge baseds_3c8f1a6012 documenti già indicizzati
Clientecli_5e1a7b30mario.rossi@acme.it, anagrafica completa
Utente operatoreusr_4a7b1e90Ruolo operator, con coda vendite
Servizio prenotabilesvc_1d9a4f70Slot da 30 minuti, orario 9-18 dal lunedì al venerdì

Comportamenti deterministici

Alcuni valori speciali attivano risposte prevedibili, utili per i test automatici.

ValoreDove usarloEffetto
test-fail@blupantheon.comCampo email di un clienteRestituisce VALIDATION_ERROR
test-timeout@blupantheon.comCampo email di un clienteSimula un timeout del servizio a monte
FORZA_HANDOVERTesto di un messaggio in sessioneAttiva immediatamente handover.requested
FORZA_QUOTAHeader X-BP-Test-ScenarioRestituisce QUOTA_EXCEEDED
FORZA_429Header X-BP-Test-ScenarioRestituisce RATE_LIMITED con Retry-After: 5
Esempio: simulare un 429
curl -sS https://api.sandbox.blupantheon.com/console/v1/sessions \
  -H "Authorization: Bearer bp_test_xxxxxxxxxxxxxxxx" \
  -H "X-BP-Test-Scenario: FORZA_429"

Carte di pagamento di test

Utilizzabili solo in sandbox e staging, sui flussi di attivazione dell'abbonamento.

NumeroCircuitoEsito
4242 4242 4242 4242VisaPagamento approvato
5555 5555 5555 4444MastercardPagamento approvato
4000 0000 0000 0002VisaRifiutata, PAYMENT_METHOD_DECLINED
4000 0000 0000 9995VisaFondi insufficienti
4000 0025 0000 3155VisaRichiede autenticazione forte (3D Secure)

Per tutte: data di scadenza qualsiasi nel futuro, CVC di tre cifre qualsiasi, CAP qualsiasi.

Le carte di test non funzionano in produzione

Un tentativo di usare una carta di test su api.blupantheon.com viene rifiutato con PAYMENT_METHOD_DECLINED e registrato negli eventi di sicurezza del tenant.

Differenze dalla produzione

Conosci queste differenze prima di considerare un test superato.

Promozione verso la produzione

Checklist da completare prima di attivare un'integrazione su dati reali.

Credenziali e configurazione

  • Chiave bp_live_ creata con i soli scope necessari e caricata nel secret manager.
  • Nessuna credenziale presente nel repository, nei file di configurazione versionati o nelle variabili di build pubbliche.
  • Base URL parametrizzato: nessun host cablato nel codice.
  • Rotazione delle chiavi pianificata e documentata.

Robustezza

  • Gestione di tutti gli status documentati, non solo di 200.
  • Ritentativi con backoff esponenziale e jitter su 429, 502, 503, 504.
  • Idempotency-Key su tutte le scritture, generata prima del primo tentativo.
  • Timeout esplicito su ogni chiamata, non affidato al valore predefinito della libreria.
  • Paginazione che termina su hasMore e non sulla dimensione della pagina.

Webhook

  • Endpoint pubblico raggiungibile con certificato TLS valido.
  • Verifica della firma HMAC con confronto a tempo costante e controllo della finestra temporale.
  • Consumatore idempotente basato sull'id dell'evento.
  • Risposta 2xx entro 5 secondi, con elaborazione asincrona.
  • Vedi Riferimento webhook.

Osservabilità

  • traceId registrato in ogni log relativo a una chiamata API.
  • Metriche su tasso di errore, latenza e X-RateLimit-Remaining.
  • Allarme sul superamento dell'80 per cento della quota e sui fallimenti di consegna dei webhook.
  • Nessuna credenziale o dato personale nei log.

Verifica finale

  • Test end-to-end eseguito in sandbox con esito positivo.
  • Piano di rollback definito e provato.
  • Referenti tecnici e canale di escalation documentati.
  • Prima esecuzione in produzione su un volume ridotto, con verifica manuale dei risultati.

Indirizzi IP

Allowlist in ingresso

Puoi limitare l'uso delle API agli indirizzi della tua infrastruttura, a livello di tenant o di singola chiave API.

ConsoleAmministrazioneSicurezzaAllowlist IP

Sono accettati indirizzi singoli e reti CIDR, IPv4 e IPv6. Una chiamata da un indirizzo non autorizzato riceve 403 con codice IP_NOT_ALLOWED.

Configurazione via API
{
  "security": {
    "ipAllowlist": ["203.0.113.0/24", "198.51.100.42/32", "2001:db8::/32"]
  }
}

Verifica prima di attivare

Un'allowlist errata blocca immediatamente tutte le integrazioni. Attivala prima su una singola chiave di test, verifica il traffico e solo dopo estendila a livello di tenant. Mantieni sempre un accesso alternativo dalla Console per poterla correggere.

IP statici in uscita

Le chiamate in uscita di Blu Pantheon — consegne webhook e chiamate agli strumenti esterni configurati nei progetti — provengono da un insieme fisso di indirizzi. Inseriscili nella allowlist del tuo firewall.

AmbienteIndirizzi in uscita
Produzione203.0.113.10, 203.0.113.11, 203.0.113.12
Staging203.0.113.40, 203.0.113.41
Sandbox203.0.113.70

L'elenco aggiornato in formato machine readable è disponibile senza autenticazione:

Elenco IP

https://api.blupantheon.com/.well-known/egress-ips.json

Aggiornato a ogni variazione, con preavviso di 30 giorni.

Preavviso sulle variazioni

Le modifiche agli IP in uscita vengono comunicate con almeno 30 giorni di anticipo agli amministratori del tenant. Se la tua sicurezza perimetrale dipende da questi indirizzi, sottoscrivi le comunicazioni tecniche e verifica periodicamente l'elenco pubblicato.

Manutenzione e stato del servizio

AmbienteFinestra ordinariaPreavviso
ProduzioneDomenica 02:00-05:00 CET, al massimo una volta al mese7 giorni
StagingMartedì e giovedì 20:00-23:00 CET24 ore
SandboxIn qualsiasi momentoNessuno

Durante una manutenzione con interruzione le API rispondono 503 con codice MAINTENANCE_MODE e l'header Retry-After. La maggior parte degli interventi avviene senza interruzione del servizio.

Per lo stato dei componenti, gli incidenti in corso e lo storico, scrivi a support@blupantheon.com.

Puoi verificare programmaticamente la disponibilità di ciascun servizio:

GET/healthPubblico

Restituisce lo stato del servizio. Non consuma quota e non richiede autenticazione.

200 OK
{
  "status": "operational",
  "environment": "production",
  "region": "eu-west",
  "services": {
    "identity": "operational",
    "console": "operational",
    "billing": "operational",
    "booking": "degraded"
  },
  "timestamp": "2026-09-04T13:44:02.118Z"
}

Non usare /health come health check applicativo

L'endpoint riflette lo stato della piattaforma, non la raggiungibilità della tua integrazione. Interrogalo al massimo una volta al minuto: un polling più frequente non fornisce informazioni aggiuntive e viene comunque limitato per IP.

Collegamenti

In questa pagina