Skip to content

Consistent API error messages #134

Open
@lstkz

Description

@lstkz

Hello,

Recently we discussed in the Topcoder Community, and people have different opinions regarding errors messages.

From your best practices:

Response messages must be self-descriptive. A good error message response might look something like this:

// (1)
{
    "code": 1234,
    "message" : "Something bad happened",
    "description" : "More details"
}

or for validation errors:

// (2)
{
    "code" : 2314,
    "message" : "Validation Failed",
    "errors" : [
        {
            "code" : 1233,
            "field" : "email",
            "message" : "Invalid email"
        },
        {
            "code" : 1234,
            "field" : "password",
            "message" : "No password provided"
        }
      ]
}

Based on my understanding, (1) schema can be used as a general error format, and (2) schema can be used for a specific situation (validation errors in this case).
That means error responses don't have to have the exact format with the same properties.
Some developers insist that all error responses should be consistent and be the same.

Could you clarify it according to your best practices in this project?

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions