Mensagens de erro


Usamos códigos HTTP convencionais nas respostas para indicar o sucesso ou a falha de uma solicitação da API. Em geral, os códigos no intervalo 2xx indicam sucesso, os códigos no intervalo 4xx indicam um erro que falhou dado a informação fornecida (por exemplo, um parâmetro obrigatório foi omitido, uma falha de carga, etc.) e os códigos no intervalo 5xx indicam um erro com nossos servidores (estes são raros).



Unauthorized Request

Se o token for inválido ou o usuário não estiver autorizado Status 401 Unauthorized.

Exemplo

{
    "errors": {
        "error_type": "UNAUTHORIZED",
        "error_message": "Invalid token."
    }
}


Resource Not Found

Se o recurso não existir no RD Station Status 404 not found.

Exemplo

{
    "errors": {
        "error_type": "RESOURCE_NOT_FOUND",
        "error_message": "Lead not found."
    }
}


Invalid Content-Type Header

Se o Content-Type não estiver configurado corretamente Status 415 Unsupported Media Type.

Exemplo

{
    "errors": {
        "error_type": "UNSUPPORTED_MEDIA_TYPE",
        "error_message": "The payload is in a format not supported by this method on the target resource."
    }
}


Malformed Body Request

Se a solicitação do corpo for mal formada de acordo com o cabeçalho Content-Type Status 400 Bad Request.

Exemplo

{
    "errors": {
        "error_type": "BAD_REQUEST",
        "error_message": "Could not parse the body of the request according to the provided Content-Type."
    }
}


Invalid format

Se um formato inválido para um atributo for enviado Status 400 Bad Request.

Exemplo

{
    "errors": {
        "email": [
            {
                "error_type": "CANNOT_BE_NULL",
                "error_message": "email cannot be null."
            }
        ],
        "linkedin": [
            {
                "error_type": "INVALID_FORMAT",
                "error_message": "linkedin must use only letters, numbers, '.', '-' and '_'"
            }
        ],
        "name" : [
          { "error_type": "CANNOT_BE_BLANK", "error_message": "Can not be blank" }
        ]
    }
}


Invalid data type

Se um tipo de dado inválido for enviado Status 422 Unprocessable Entity.

Exemplo

{
    "errors": {
        "name": [
            {
                "error_type": "MUST_BE_STRING",
                "error_message": "Name must be string."
            }
        ]
    }
}


Read only attributes

Ao tentar atualizar um atributo que é somente leitura Status 400 Bad Request.

Exemplo

{
    "errors": {
        "error_type": "INVALID_ATTRIBUTES",
        "error_message": "Payload contains attributes that cannot be modified: (available_for_mailing)"
    }
}


Inexistent attributes

Ao tentar atualizar um atributo que não existe Status 400 Bad Request.

Exemplo

{
    "errors": {
        "error_type": "INVALID_ATTRIBUTES",
        "error_message": "Payload contains attributes that do not exist: (attr)"
    }
}


Conflicting field

Ao usar o endpoint de PATCH UPSERT e um campo de Contato que identifica o Lead é usado corpo da requisição Status 400 Bad Request.

Exemplo

{
    "errors": {
        "error_type": "CONFLICTING_FIELD",
        "error_message": "The payload contains an attribute that was used to identify the lead"
    }
}


Códigos HTTP


Lista de possíveis códigos HTTP usados em nossas API para representar os erros genericamente:

400 (Bad request) Malformed body request
401 (Unauthorized) Unauthorized request
404 (Not found) Resource Not Found
415 (Unsupported Media Type) Invalid Content-Type header
422 (Unprocessable Entity) Invalid Data type

Tipos de erros


Os possíveis tipos de erro que darão feedback mais detalhado para pedidos inválidos:

Tipos de erros relacionados à requisições


Error type Message
UNAUTHORIZED Invalid token.
BAD_REQUEST Could not parse the body of the request according to the provided Content-Type.
UNSUPPORTED_MEDIA_TYPE The payload is in a format not supported by this method on the target resource.
RESOURCE_NOT_FOUND The resource couldn't be found.

Tipos de erro relacionados à validação


Error type Message
CANNOT_BE_NULL Cannot be null
CANNOT_BE_BLANK Can not be blank
INVALID It is not valid
TAKEN Already in use
TOO_SHORT Is too short (minimum 0 characters)
TOO_LONG Is too long (maximum 0 characters)
EXCLUSION Already in use
INCLUSION It is not included in the list