Error Handling¶
In the Marktplaats API all calls are validated and if an error occurs a detailed machine-readable error message is returned. Since some calls may return more than one error for a given call, e.g. during the validation of a new ad, all error responses contain lists of errors with one or more structured error objects in them.
Each error contains a code
and a message
, which provide an
error code and a simple error message in English. An error may contain a
field
attribute describing the field where the error occurred and an
additonal value
attribute further specifying the error, i.e. the maximum
length of a field in case of a “string too long” error.
The validation will first check if the input parameters are of the correct type, i.e. an integer should be an integer, not a string or a decimal value. Secondly, the Marktplaats API will check if the provided input parameters are meaningful within the context of the call. E.g. a category ID should be a positive integer. Only the context specific checks are mentioned in the Errors section of the documentation page of each call, as the type checks are considered generic.
HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Language: nl
{
"_links": {
"help": {
"href": "http://api.marktplaats.nl/v1/docs/errors/validation-failure"
}
},
"logref": "4298asfpohsa98yasohq97q3yff22",
"code" : "validation-failure",
"message": "Validatie mislukt",
"details": [
{ "field": "id", "message": "Is not a valid number.", "code": "not-a-number" },
{ "field": "name", "message": "Minimum of 15 characters.", "code": "too-short", "value": "15" },
{ "field": "name", "message": "'%' is not allowed","code": "pattern-did-not-match", "value": "[a-zA-Z0-9]{15,30}" },
{ "field": "shortName", "message": "Is not a car brand", "code": "not-a-car-brand" },
{ "fields": ["field1", "field2"], "message": "Some error over multiple fields.", "code": "a-b-c" }
]
}