Mensagens de erro

Exemplos das mensagens de erro ou validações retornadas pela API e quais são.

As respostas retornadas pela API apresentam o seguinte padrão de resposta:

{
"errors": { ... },
"data": { ... }
}

Porém o atributo errors somente é retornado quando ocorre alguma excessão na requisição.

Quando um erro de query inválida em GraphQL acontece, as excessões são semelhantes ao exemplo abaixo: (Ao deixar de enviar um valor para name, que é obrigatório na especificação da query)

{
"errors": [
{
"message": "Variable \"$folder\" got invalid value {\"name\":null}; Expected non-nullable type String! not to be null at value.name.",
"extensions": {
"category": "graphql"
},
"locations": [
{
"line": 1,
"column": 31
}
]
}
]
}

A seguir, temos um exemplo de erro comum, ao buscar uma pasta inexistente:

{
"errors": [
{
"message": "folder_not_found",
"extensions": {
"category": "graphql"
},
"locations": [
{
"line": 2,
"column": 3
}
],
"path": [
"folder"
]
}
],
"data": {
"folder": null
}
}

E também temos erros de validação (quando o atributo "message" possui o valor "validation"), criando uma pasta definindo o valor de string vazio:

{
"errors": [
{
"message": "validation",
"extensions": {
"category": "graphql"
},
"locations": [
{
"line": 2,
"column": 3
}
],
"path": [
"createFolder"
],
"validation": {
"folder.name": [
"field_required"
]
}
}
],
"data": {
"createFolder": null
}
}

No seguinte exemplo, também temos um erro de validação, porém com variáveis, que acontece ao definir um nome muito curto para uma pasta:

{
"errors": [
{
"message": "validation",
"extensions": {
"category": "graphql"
},
"locations": [
{
"line": 2,
"column": 3
}
],
"path": [
"createFolder"
],
"validation": {
"folder.name": [
{
"must_be_at_least": {
"min": 3
}
}
]
}
}
],
"data": {
"createFolder": null
}
}

Erros de validação

Por último, segue um JSON com todas as possíveis mensagens de erro ou de validação que podem ser retornadas pela API, junto com o que cada uma delas significa e possíveis variáveis entre chaves (Ex: {{variavel}}). Lembrando que não incluem erros de query GraphQL.

{
"unauthorized": "Você não está mais autenticado",
"document_not_found": "Documento não encontrado",
"folder_not_found": "Pasta não encontrada",
"document_signed": "O documento já foi assinado",
"not_your_turn": "Não é a sua vez de assinar o documento",
"must_be_a_string": "É somente permitido texto",
"must_be_an_array": "Não é uma lista",
"not_a_valid_date": "Não é uma data válida",
"must_be_a_valid_email_address": "Não é um email válido",
"must_be_a_file": "Não é um arquivo",
"failed_to_upload": "Erro ao enviar o arquivo",
"could_not_upload_file": "Não foi possível enviar o arquivo",
"field_required": "Este campo é obrigatório",
"unavailable_credits": "Os seus créditos esgotaram",
"may_not_be_greater_than": "Não pode ter mais que {{max}} caracteres",
"must_be_at_least": "Não pode ter menos que {{min}} caracteres",
"format_is_invalid": "O formato do campo está incorreto",
"invalid_date": "Não é uma data válida",
"without_permission": "Você precisa ser um administrador da organização para executar esta ação.",
"must_be_a_valid_file": "Somente são permitidos arquivos com as extenções {{extensions}}",
"not_a_member_of_organization": "Você precisa ser um membro da mesma organização para executar esta ação."
}