Skip to content

Errori

Le API Replicer utilizzano codici di stato HTTP standard e restituiscono risposte di errore JSON consistenti.

Formato della risposta di errore

json
{
  "error": {
    "code": "validation_error",
    "message": "agentId, toNumber, and fromNumber are required",
    "details": null
  },
  "requestId": "req-abc123"
}
CampoTipoDescrizione
error.codestringCodice di errore leggibile dalla macchina
error.messagestringDescrizione leggibile dall'utente
error.detailsobject | nullContesto aggiuntivo (quando disponibile)
requestIdstringIdentificativo univoco per il debug

Codici di errore

Errori client (4xx)

Status HTTPCodiceDescrizione
400bad_requestJSON malformato o body della richiesta non valido
400validation_errorCampi mancanti o valori non validi
401unauthorizedAPI key mancante o non valida
403forbiddenAPI key inattiva o scaduta
403insufficient_scopeLa API key non ha lo scope richiesto
404not_foundLa risorsa non esiste o non appartiene alla tua organizzazione
429rate_limit_exceededTroppe richieste — controlla l'header Retry-After

Errori server (5xx)

Status HTTPCodiceDescrizione
500internal_errorQualcosa è andato storto dal nostro lato
503not_implementedEndpoint pianificato ma non ancora disponibile

Gestire gli errori

javascript
const response = await fetch('https://api.replicer.ai/v1/calls', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer rpl_live_your_key',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ agentId, toNumber, fromNumber }),
})

if (!response.ok) {
  const { error, requestId } = await response.json()
  
  switch (error.code) {
    case 'rate_limit_exceeded':
      const retryAfter = response.headers.get('Retry-After')
      // Attendi e riprova
      break
    case 'unauthorized':
      // Controlla la tua API key
      break
    case 'validation_error':
      // Correggi il body della richiesta
      console.error(error.message)
      break
    default:
      // Log del requestId per il supporto
      console.error(`Error ${error.code}: ${error.message} (${requestId})`)
  }
}

Request ID

Ogni risposta include un campo requestId. Quando contatti il supporto per un errore, includi questo ID per facilitare l'indagine.

Replicer API Documentation