Skip to content

Tratamento de Erros

A API do GetRaze usa codigos de resposta HTTP convencionais para indicar sucesso ou falha.

Codigos de Status HTTP

CodigoDescricao
200Sucesso
201Criado
400Requisicao Invalida - Parametros invalidos
401Nao Autorizado - Chave de API invalida ou ausente
403Proibido - Permissoes insuficientes
404Nao Encontrado - Recurso nao existe
429Muitas Requisicoes - Limite de requisicao excedido
500Erro Interno do Servidor

Formato da Resposta de Erro

Todos os erros retornam uma estrutura JSON consistente:

json
{
  "success": false,
  "error": {
    "code": "ERROR_CODE",
    "message": "Human-readable error message",
    "details": {}
  }
}

Codigos de Erro

Erros de Autenticacao

CodigoStatusDescricao
MISSING_API_KEY401Nenhuma chave de API foi fornecida
INVALID_API_KEY401Chave de API invalida ou revogada
EXPIRED_API_KEY401Chave de API expirada
INSUFFICIENT_PERMISSIONS403Chave de API sem a permissao necessaria

Erros de Validacao

CodigoStatusDescricao
VALIDATION_ERROR400Falha na validacao do corpo da requisicao
INVALID_PARAMETER400Parametro de query invalido
MISSING_REQUIRED_FIELD400Campo obrigatorio ausente
INVALID_EMAIL400Formato de e-mail invalido

Erros de Recurso

CodigoStatusDescricao
NOT_FOUND404Recurso solicitado nao foi encontrado
ALREADY_EXISTS409Recurso ja existe
CONFLICT409Operacao conflita com o estado atual

Limite de Requisicao

CodigoStatusDescricao
RATE_LIMIT_EXCEEDED429Muitas requisicoes, tente novamente mais tarde

Exemplos de Respostas de Erro

Chave de API Ausente

json
{
  "success": false,
  "error": {
    "code": "MISSING_API_KEY",
    "message": "API key is required. Include it in the X-API-Key header."
  }
}

Erro de Validacao

json
{
  "success": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Validation failed",
    "details": {
      "fields": {
        "email": "Invalid email format",
        "name": "Name is required"
      }
    }
  }
}

Recurso Nao Encontrado

json
{
  "success": false,
  "error": {
    "code": "NOT_FOUND",
    "message": "Contact not found"
  }
}

Tratando Erros

javascript
async function apiCall(endpoint, options) {
  const response = await fetch(endpoint, options);
  const data = await response.json();

  if (!data.success) {
    switch (data.error.code) {
      case 'RATE_LIMIT_EXCEEDED':
        // Wait and retry
        await sleep(60000);
        return apiCall(endpoint, options);

      case 'INVALID_API_KEY':
        // Check your API key configuration
        throw new Error('Invalid API key');

      case 'VALIDATION_ERROR':
        // Log validation details
        console.error('Validation errors:', data.error.details);
        throw new Error(data.error.message);

      default:
        throw new Error(data.error.message);
    }
  }

  return data;
}

GetRaze - AI-Powered Lead Generation