Blu Pantheon
Support

Codici di errore

Tabella consolidata dei codici di errore di Blu Pantheon con stato HTTP, causa e azione correttiva, e uso di traceId e X-BP-Delivery.

Ogni errore restituito dalla piattaforma ha un codice stabile, uno stato HTTP e un messaggio leggibile. Il codice è la parte su cui costruire la logica applicativa: il messaggio può cambiare nel tempo e con la lingua, il codice no.

Struttura della risposta di errore

Formato standard di errore
{
  "error": {
    "code": "VALIDATION_FAILED",
    "title": "Dati non validi",
    "message": "Uno o piu campi della richiesta non sono validi.",
    "details": [
      { "field": "email", "code": "INVALID_FORMAT", "message": "Formato email non valido." },
      { "field": "phone", "code": "REQUIRED", "message": "Campo obbligatorio." }
    ],
    "traceId": "4bf92f3577b34da6a3ce929d0e0e4736",
    "timestamp": "2026-09-04T10:22:41.318Z",
    "documentation": "https://docs.blupantheon.com/it/docs/supporto/codici-errore"
  }
}

Campi dell’oggetto error

ParametroTipoObblig.DefaultDescrizione
codestringSì—Codice stabile dell’errore. Usa questo valore nella logica applicativa.
titlestringSì—Titolo breve, adatto a essere mostrato all’utente.
messagestringSì—Descrizione leggibile. Può variare fra le versioni e le lingue.
detailsarrayNo—Elenco degli errori di validazione per singolo campo.
traceIdstringSì—Correlatore della richiesta. Comunicalo sempre al supporto.
timestampstringSì—Momento in cui l’errore si è verificato, in UTC.
documentationstringNo—Collegamento alla pagina di riferimento.

Autenticazione

CodiceHTTPMessaggioCausaCosa fare
UNAUTHENTICATED401Autenticazione richiestaHeader Authorization assenteAggiungi l'header con il token o la chiave API
INVALID_CREDENTIALS401Credenziali non valideEmail o password errateVerifica le credenziali; dopo 5 tentativi l'utenza si blocca
TOKEN_EXPIRED401Token scadutoIl token di accesso ha superato la validitàRinnova il token con il token di aggiornamento
TOKEN_INVALID401Token non validoToken malformato, alterato o firmato con chiave ritirataEsegui di nuovo l'autenticazione
TOKEN_REVOKED401Token revocatoSessione terminata o password modificataEsegui di nuovo l'autenticazione
API_KEY_INVALID401Chiave API non validaChiave inesistente o errataVerifica la chiave; se persa, revocala e creane una nuova
API_KEY_EXPIRED401Chiave API scadutaSuperata la data di scadenzaCrea una nuova chiave e aggiorna le integrazioni
API_KEY_REVOKED401Chiave API revocataRevocata manualmenteCrea una nuova chiave
MFA_REQUIRED401Verifica a due fattori richiestaCredenziali corrette, secondo fattore mancanteInvia il codice MFA all'endpoint di verifica
MFA_INVALID401Codice di verifica non validoCodice errato o scadutoSincronizza l'orologio del dispositivo e riprova
ACCOUNT_LOCKED423Account bloccatoTroppi tentativi fallitiAttendi 15 minuti o chiedi lo sblocco a un amministratore
ACCOUNT_DISABLED403Account disattivatoUtenza disattivata da un amministratoreContatta un amministratore del tenant
SSO_REQUIRED403Accesso federato obbligatorioEnforcement SSO attivo sul dominioAccedi tramite l'identity provider aziendale
SSO_CONFIG_ERROR500Configurazione SSO non validaMetadati o certificato non validiVerifica la configurazione SSO

Autorizzazione

CodiceHTTPMessaggioCausaCosa fare
FORBIDDEN403Accesso negatoPermesso mancante per l'operazioneVerifica i ruoli in Profilo, I miei permessi
INSUFFICIENT_PERMISSIONS403Permessi insufficientiManca un permesso specifico, formato {servizio}:{risorsa}:{azione}Chiedi a un amministratore di aggiornare il ruolo
TENANT_MISMATCH403Tenant non corrispondenteLa risorsa appartiene a un altro tenantVerifica il tenant selezionato e il token in uso
SCOPE_NOT_GRANTED403Ambito non concessoLa chiave API non ha l'ambito richiestoCrea una chiave con gli ambiti necessari
RESOURCE_LOCKED423Risorsa bloccataUn altro utente la sta modificandoAttendi e riprova
DATA_RESTRICTED403Trattamento limitatoIl contatto è soggetto a limitazione ex art. 18 GDPRRimuovi la limitazione se non più necessaria

Validazione

CodiceHTTPMessaggioCausaCosa fare
VALIDATION_FAILED422Dati non validiUno o più campi non superano la validazioneLeggi l'array details per il dettaglio per campo
REQUIRED_FIELD_MISSING422Campo obbligatorio mancanteUn campo richiesto è assente o vuotoAggiungi il campo indicato
INVALID_FORMAT422Formato non validoIl valore non rispetta il formato attesoCorreggi il formato, es. email o data ISO 8601
INVALID_ENUM_VALUE422Valore non ammessoValore fuori dall'insieme consentitoUsa uno dei valori elencati nel messaggio
VALUE_OUT_OF_RANGE422Valore fuori intervalloNumero o data oltre i limiti ammessiRientra nell'intervallo indicato
STRING_TOO_LONG422Testo troppo lungoSuperata la lunghezza massimaRiduci la lunghezza del testo
INVALID_JSON400Corpo della richiesta non validoJSON malformatoVerifica la sintassi del payload
UNSUPPORTED_MEDIA_TYPE415Tipo di contenuto non supportatoHeader Content-Type erratoImposta application/json
INVALID_VAT_NUMBER422Partita IVA non validaFormato o cifra di controllo erratiUsa il formato con prefisso, es. IT01234567890
INVALID_TAX_CODE422Codice Fiscale non validoLunghezza o caratteri non validi16 caratteri per persone fisiche, 11 cifre per persone giuridiche
INVALID_SDI_CODE422Codice Destinatario non validoLunghezza diversa da 7 caratteriInserisci 7 caratteri alfanumerici, es. ABC1234
INVALID_PHONE_NUMBER422Numero di telefono non validoFormato non conforme a E.164Usa il formato internazionale, es. +393401234567

Risorse

CodiceHTTPMessaggioCausaCosa fare
NOT_FOUND404Risorsa non trovataIdentificativo inesistente o già eliminatoVerifica l'identificativo
ENDPOINT_NOT_FOUND404Endpoint inesistentePercorso o versione erratiConsulta la specifica OpenAPI
METHOD_NOT_ALLOWED405Metodo non consentitoVerbo HTTP errato per il percorsoUsa il verbo indicato nella documentazione
PROJECT_NOT_FOUND404Progetto non trovatoProgetto eliminato o chiave errataVerifica il progetto in Console
PROJECT_NOT_PUBLISHED409Progetto non pubblicatoIl progetto è in bozzaPubblica il progetto
DOCUMENT_NOT_INDEXED409Documento non indicizzatoIndicizzazione in corso o fallitaAttendi il completamento o correggi l'errore
SESSION_NOT_FOUND404Sessione non trovataSessione scaduta o eliminata per retentionVerifica i tempi di conservazione configurati
CONTACT_NOT_FOUND404Contatto non trovatoIdentificativo errato o contatto cancellatoVerifica l'identificativo o la chiave esterna

Conflitti

CodiceHTTPMessaggioCausaCosa fare
CONFLICT409Conflitto sullo stato della risorsaOperazione incompatibile con lo stato attualeRileggi la risorsa e riprova
ALREADY_EXISTS409Risorsa già esistenteViolazione di un vincolo di unicitàAggiorna la risorsa esistente invece di crearla
EMAIL_ALREADY_REGISTERED409Email già registrataUn'utenza con questa email esiste già nel tenantUsa un altro indirizzo o riattiva l'utenza esistente
SLOT_NO_LONGER_AVAILABLE409Slot non più disponibileOccupato da un altro canale nel frattempoProponi le alternative restituite nella risposta
BOOKING_ALREADY_CANCELLED409Prenotazione già annullataDisdetta già registrataNessuna azione necessaria
CONCURRENT_MODIFICATION409Modifica concorrenteLa risorsa è cambiata dopo la letturaRileggi, riapplica le modifiche e riprova
WEBHOOK_URL_DUPLICATE409Endpoint già registratoStesso URL già presenteModifica l'endpoint esistente
IDEMPOTENCY_KEY_REUSED409Chiave di idempotenza riutilizzataStessa chiave con payload diversoUsa una chiave nuova per una richiesta diversa

Limiti e quote

CodiceHTTPMessaggioCausaCosa fare
RATE_LIMIT_EXCEEDED429Troppe richiesteSuperato il limite di frequenzaAttendi il tempo indicato in Retry-After
QUOTA_EXCEEDED429Quota del piano esauritaConsumo oltre il limite del pianoAumenta il piano o attendi il rinnovo del periodo
CONCURRENT_LIMIT_EXCEEDED429Troppe richieste simultaneeSuperato il numero di richieste paralleleRiduci il parallelismo del client
PAYLOAD_TOO_LARGE413Payload troppo grandeCorpo della richiesta oltre il limiteRiduci le dimensioni o usa il caricamento a blocchi
FILE_TOO_LARGE413File troppo grandeDocumento oltre la dimensione massimaSuddividi il documento
TOO_MANY_DOCUMENTS429Troppi documentiLimite di documenti della knowledge base raggiuntoElimina i documenti obsoleti o aumenta il piano
MESSAGE_LIMIT_EXCEEDED429Limite di messaggi raggiuntoQuota mensile di conversazioni esauritaVerifica i consumi in Amministrazione, Fatturazione

Fatturazione

CodiceHTTPMessaggioCausaCosa fare
BILLING_DETAILS_INCOMPLETE422Dati di fatturazione incompletiManca un campo fiscale obbligatorioCompleta i dati in Amministrazione, Fatturazione
BILLING_ACCOUNT_SUSPENDED402Account sospesoFatture insolute oltre i terminiRegolarizza la posizione e contatta l'amministrazione
PLAN_LIMIT_REACHED402Limite del piano raggiuntoLa funzione richiede un piano superioreAggiorna il piano
INVOICE_NOT_AVAILABLE404Fattura non disponibileDocumento non ancora emessoAttendi l'emissione, prevista a inizio mese
SDI_REJECTED422Fattura scartata dallo SDIErrore formale nei dati fiscaliCorreggi i dati; la riemissione è automatica entro 24 ore
VIES_VALIDATION_FAILED422Numero IVA non validato dal VIESNumero non iscritto agli archivi VIESRichiedi l'iscrizione all'autorità fiscale del tuo Paese

Integrazioni e webhook

CodiceHTTPMessaggioCausaCosa fare
WEBHOOK_DELIVERY_FAILED—Consegna del webhook fallitaEndpoint irraggiungibile o in erroreVedi Webhook non ricevuti
WEBHOOK_SIGNATURE_INVALID401Firma non validaFirma calcolata sul corpo deserializzatoUsa il corpo grezzo della richiesta
WEBHOOK_ENDPOINT_SUSPENDED409Endpoint sospesoTroppi fallimenti consecutiviCorreggi la causa e riattiva l'endpoint
WEBHOOK_TIMEOUT—Timeout di consegnaNessuna risposta entro 10 secondiRendi asincrona l'elaborazione
TOOL_EXECUTION_FAILED502Esecuzione dello strumento fallitaIl sistema esterno ha restituito un erroreVerifica i log del tuo sistema
TOOL_TIMEOUT504Timeout dello strumentoRisposta oltre il tempo massimoOttimizza il tuo endpoint o aumenta il timeout consentito
DOMAIN_NOT_ALLOWED403Dominio non autorizzatoIl widget è caricato da un dominio non in elencoAggiungi il dominio ai domini autorizzati
WHATSAPP_WINDOW_CLOSED409Finestra di servizio chiusaOltre 24 ore dall'ultimo messaggio dell'utenteUsa un template approvato
WHATSAPP_TEMPLATE_NOT_APPROVED409Template non approvatoTemplate in revisione o rifiutato da MetaAttendi l'approvazione o correggi il contenuto
SMTP_CONNECTION_FAILED502Connessione SMTP fallitaHost, porta o credenziali erratiVerifica la configurazione SMTP
EMAIL_ADDRESS_SUPPRESSED409Indirizzo sospesoBounce definitivo o segnalazione di spamVerifica l'indirizzo e riabilitalo se corretto
EXTERNAL_SERVICE_UNAVAILABLE503Servizio esterno non disponibileIl sistema integrato non rispondeRiprova più tardi, verifica lo stato del fornitore

Sistema

CodiceHTTPMessaggioCausaCosa fare
INTERNAL_ERROR500Errore internoAnomalia della piattaformaRiprova; se persiste apri una richiesta con il traceId
SERVICE_UNAVAILABLE503Servizio temporaneamente non disponibileManutenzione o sovraccaricoRiprova; se persiste apri una richiesta
GATEWAY_TIMEOUT504Timeout del gatewayElaborazione oltre il tempo massimoRiduci la dimensione della richiesta e riprova
MAINTENANCE_MODE503Manutenzione in corsoFinestra di manutenzione pianificataAttendi il termine indicato dall'header Retry-After
MODEL_UNAVAILABLE503Modello non disponibileIl modello configurato non rispondeVerifica lo stato del servizio; è previsto un ripiego automatico
MODEL_CONTENT_FILTERED422Contenuto filtratoIl contenuto ha attivato i filtri di sicurezza del modelloRiformula la richiesta
INDEXING_FAILED500Indicizzazione fallitaDocumento illeggibile, protetto o corrottoRimuovi la protezione o converti il documento
EXPORT_FAILED500Esportazione fallitaErrore durante la preparazione del pacchettoRiprova; per volumi elevati contatta il supporto

Usare il traceId

Ogni risposta della piattaforma contiene l'header X-BP-Trace-Id, riportato anche nel corpo degli errori come traceId. È il correlatore che collega fra loro tutti i passaggi interni di una richiesta.

Estrarre il traceId da una risposta
curl -sS -D - -o /dev/null \
  "https://api.blupantheon.com/console/v1/contacts" \
  -H "Authorization: Bearer $BP_TOKEN" | grep -i "x-bp-trace-id"

Registra il traceId nei tuoi log

Salva il valore insieme alla risposta di errore. Senza di esso, ricostruire l'accaduto a posteriori è molto più lento.

Cercalo nell'audit log

ConsoleAmministrazioneAudit log

Il filtro per traceId mostra tutte le voci correlate alla stessa richiesta.

Comunicalo al supporto

Con il traceId il supporto ricostruisce l'intero percorso della richiesta senza chiederti ulteriori informazioni. È la singola informazione che riduce di più i tempi di risoluzione.

Usare X-BP-Delivery

Per i problemi di consegna dei webhook, l'identificativo equivalente è X-BP-Delivery: identifica univocamente la consegna, è stabile fra i ritentativi dello stesso evento ed è ricercabile nel registro delle consegne.

ConsoleConfigurazioneWebhookEndpointConsegne

Regola pratica

Problema su una chiamata API: comunica il traceId. Problema su una consegna webhook: comunica il X-BP-Delivery. Se hai entrambi, inviali entrambi.

Gestione degli errori lato client

Strategia consigliata
401 TOKEN_EXPIRED        rinnova il token e ripeti la richiesta una sola volta
401 altri codici         non ripetere, richiede intervento sulle credenziali
403                      non ripetere, richiede modifica dei permessi
404                      non ripetere, verifica l'identificativo
409                      rileggi la risorsa, riapplica le modifiche, riprova
422                      non ripetere, correggi i dati
429                      attendi il valore di Retry-After, poi riprova
500 502 503 504          riprova con attesa crescente, massimo 3 tentativi

Non ripetere gli errori 4xx

Ad eccezione di 401 con token scaduto, 409 e 429, gli errori 4xx indicano un problema nella richiesta: ripeterla produrrà sempre lo stesso esito e consumerà quota inutilmente.

Auf dieser Seite