Skip to main content

Inconsistent error response format for license activation and validation API endpoints

When using the validate or activate API endpoints, the error response is inconsistent. The `errors` field is sometimes a string and sometimes an array. This makes it difficult to parse the error response in my code, as I have to handle two different data types for the same field. The error format should be standardized to always be an array, even if there is only one error.
Status: Rejected1 comment

Log in to comment and vote

Comments1

  • User

    •

    Nov 12, 2025

    The `message` field in the error response is inconsistently typed — it can be either a `String` or a `String[]`, depending on the error type. See below:

    ```java

    private record ErrorResponse(

    @SerializedName("trace_id") String traceId,

    int status,

    String error,

    // API returns message as String or String[] depending on error type:

    // - String: "Activation limit reached" (HTTP 400)

    // - String[]: ["License key not found"] (HTTP 404)

    String message,

    long timestamp) {

    }

    ```