Problems registry
This registry provides a definitive and centralized catalog of problem types used in our APIs, adhering to the standard defined in RFC 9457 - Problem Details for HTTP APIs. When an error occurs, our APIs return a structured JSON object to help you diagnose and fix the issue.
Example Problem Detail
When a request fails, you will receive a response body with a Content-Type
of application/problem+json
. The following example shows a validation error for a 400 Bad Request
.
{
"type": "https://dev.euipo.europa.eu/problems-registry/invalid-body-property",
"title": "Invalid body property",
"detail": "The request body contains an invalid or a malformed property",
"status": 400,
"instance": "/tasks",
"code": "invalid-body-property",
"errors": [
{
"detail": "Task metadata cannot be null",
"pointer": "#/metadata"
},
{
"detail": "Tag list cannot be null",
"pointer": "#/tags"
}
],
"correlationId": "d9e0b20005b0020e5920218b5b04f084"
}
Structure of a Problem Detail
The JSON object contains the following fields:
Field | Type | Description |
---|---|---|
type | string (URI) | A URI that identifies the problem type. This links directly to the corresponding definition in this registry. |
title | string | A short, human-readable summary of the problem type. |
status | integer | The HTTP status code generated by the origin server for this occurrence of the problem. |
detail | string | A human-readable explanation specific to this occurrence of the problem. |
instance | string | A URI reference that identifies the specific resource or endpoint where the problem occurred. |
code | string | A unique, machine-readable code for the specific problem type (e.g., invalid-body-property ). |
errors | array | (Optional) An array of objects providing details about validation errors. It's typically used for 4xx status codes. Each object contains a detail and a location field (pointer , parameter , or header ). |
correlationId | string | A unique identifier for the request, useful for logging, tracking, and support inquiries. |
The errors
array specifies the exact location of a validation failure:
Field | Type | Description |
---|---|---|
pointer | string | A JSON Pointer [RFC6901] to a field in the request body (e.g., #/tags ). |
parameter | string | The name of an invalid path or query parameter. |
header | string | The name of an invalid request header. |
Problem types
Please find below a comprehensive list of all supported problem types, each with a clear and detailed explanation of its meaning, the HTTP status code it corresponds to, and any additional information required to handle the error effectively.
Access forbidden
The requestor is not authorized to access the requested resource.
Bad Request
The request is invalid or malformed, causing the server to reject it.
Business rule violation
The request is invalid and does not meet the business rules defined by the server.
General Error
The server encounters an unexpected issue, preventing it from fulfilling the request.
Invalid body property
The request body contains an invalid or malformed property, causing the server to reject the request.
Invalid request header
The request contains an invalid or malformed header, causing the server to reject it.
Invalid request parameter
A client request contains invalid or malformed parameters, causing the server to reject the request.
Not Found
The requested resource cannot be found on the server.
Service temporarily unavailable
The service is currently unavailable, preventing the server from fulfilling the request.
Unauthorized
A client request lacks a valid access token, preventing the server from returning the requested resource.