Erros
Por utilizar Graphql, os Http codes normalmente utilizados em APIs REST não são utilizados da mesma forma, sendo os códigos de erros retornados no JSON. Aqui temos um exemplo de retorno com erro de uma requisição:
{
"errors": [
{
"message": "Um valor duplicado foi fornecido para um campo com valores únicos.",
"extensions": {
"code": "BAD_USER_INPUT"
}
}
],
"data": {
"saveCustomer": null
}
}O campo "errors" é um array de objetos que contém as mensagens e o código do erro.
Por caracteristica do GraphQL, temos alguns codigos de erro padrão:
BAD_USER_INPUT: Erro de entrada do usuário
Value | Descrição |
|---|---|
UserInputError | Você precisa inserir o CNPJ. |
UserInputError | Você precisa inserir a razão social (legalName). |
UserInputError | Você precisa inserir o nome fantasia (name). |
UserInputError | Um valor duplicado foi fornecido para um campo com valores únicos. |
UserInputError | Objeto não encontrado. |
UserInputError | CNPJ inválido. |
UserInputError | Você precisa inserir um CPF válido. |
GRAPHQL_VALIDATION_FAILED: Ocorreu algum erro de validação de Schema, ou alguma regra de negócio foi desrespeitada
Value | Descrição | |
|---|---|---|
ValidationError | Business/Customer sem usuário criado. Edite o Business/Customer com informaçōes de usuário | |
ValidationError | Empresa possui um empréstimo em um status que bloqueia a criação de um novo : Em Análise. |
UNAUTHENTICATED: Erro de autenticação
Value | Descrição |
|---|---|
AuthenticationError | Credenciais inválidas. |
AuthenticationError | Token de acesso expirado. |
AuthenticationError | Token de acesso inválido. |
AuthenticationError | Você precisa estar logado |
INTERNAL_SERVER_ERROR: Erro interno do servidor
Value | Descrição |
|---|---|
ApolloError | Você precisa especificar o nome da operação. Ex: query/mutation operationName { mutationName() {} }' |
Sobre empréstimos:
- Cada cliente só pode ter um empréstimo ativo;
- Quando o empréstimo for recusado, será necessário aguardar um tempo de 30 a 90 dias
No momento em que o empréstimo se torna elegível ao desembolso, ou seja, na etapa de análise de crédito final para frente, já não podemos criar mais solicitações de empréstimo para o mesmo cliente.