Bird
Raised Fist0
Rest APIprogramming

Human-readable error messages in Rest API - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a human-readable error message in the context of REST APIs?
A human-readable error message is a clear and simple explanation sent by the API to the user or developer, describing what went wrong in a way that is easy to understand.
Click to reveal answer
beginner
Why should REST APIs use human-readable error messages instead of technical codes only?
Because human-readable messages help users and developers quickly understand the problem without needing deep technical knowledge, improving troubleshooting and user experience.
Click to reveal answer
beginner
Give an example of a good human-readable error message for a missing required field in a REST API request.
Example: {"error": "Missing required field: 'email'. Please provide your email address."}
Click to reveal answer
intermediate
What HTTP status code is commonly paired with human-readable error messages for client errors?
HTTP status code 400 (Bad Request) is commonly used to indicate client errors along with a human-readable error message explaining the issue.
Click to reveal answer
intermediate
How can including error codes alongside human-readable messages benefit API users?
Including error codes helps developers programmatically identify the error type while the human-readable message explains it clearly, combining machine and human understanding.
Click to reveal answer
What is the main purpose of a human-readable error message in a REST API?
ATo clearly explain the error to users and developers
BTo hide the error details from users
CTo provide only numeric error codes
DTo slow down the API response
Which HTTP status code is typically used with client error messages in REST APIs?
A400
B200
C500
D302
What should a good human-readable error message include?
ANo information at all
BClear explanation of the problem
COnly error codes without explanation
DRandom technical jargon
Why is it helpful to include both error codes and human-readable messages?
ATo increase response size unnecessarily
BTo confuse users
CTo allow both machines and humans to understand errors
DTo make the API slower
Which of these is an example of a human-readable error message?
A{"error": ""}
B{"error": 12345}
C{"error": "ERR_001"}
D{"error": "Invalid input: 'age' must be a positive number."}
Explain why human-readable error messages are important in REST APIs and how they improve user experience.
Think about how users feel when they get a clear message versus a confusing code.
You got /4 concepts.
    Describe the components of a good error response in a REST API including status code, error code, and message.
    Consider what both machines and humans need to handle errors well.
    You got /4 concepts.

      Practice

      (1/5)
      1.

      What is the main purpose of human-readable error messages in a REST API?

      easy
      A. To confuse users with complex codes
      B. To hide all error details from users
      C. To make error messages as technical as possible
      D. To explain problems in simple words for users

      Solution

      1. Step 1: Understand the role of error messages

        Error messages should help users understand what went wrong.
      2. Step 2: Identify the best description

        Human-readable means simple and clear, not technical or confusing.
      3. Final Answer:

        To explain problems in simple words for users -> Option D
      4. Quick Check:

        Human-readable = simple explanation [OK]
      Hint: Think: error messages should help, not confuse [OK]
      Common Mistakes:
      • Choosing technical jargon instead of simple words
      • Assuming error messages should hide details
      • Confusing human-readable with code-only messages
      2.

      Which of the following is the correct JSON format for a human-readable error message in a REST API response?

      {
        "error": {
          "code": 404,
          "message": "Resource not found"
        }
      }
      easy
      A. { error: 404, message: 'Not found' }
      B. { "error": { "code": 404, "message": "Resource not found" } }
      C. { "code": 404, "msg": "Not found" }
      D. { error_code: 404, error_message: 'Resource missing' }

      Solution

      1. Step 1: Check JSON syntax correctness

        Valid JSON requires double quotes around keys and string values.
      2. Step 2: Match the expected structure

        The error object should contain code and message keys with clear names.
      3. Final Answer:

        { "error": { "code": 404, "message": "Resource not found" } } -> Option B
      4. Quick Check:

        Valid JSON with clear keys = { "error": { "code": 404, "message": "Resource not found" } } [OK]
      Hint: Look for double quotes and clear key names in JSON [OK]
      Common Mistakes:
      • Using single quotes instead of double quotes in JSON
      • Missing nested error object structure
      • Using incorrect key names like 'msg' or 'error_code'
      3.

      Given this API response code snippet, what will be the output message?

      response = {
        "status": 400,
        "error": {
          "code": "INVALID_INPUT",
          "message": "Input value is not valid"
        }
      }
      print(response["error"]["message"])
      medium
      A. Input value is not valid
      B. 400
      C. INVALID_INPUT
      D. KeyError

      Solution

      1. Step 1: Access nested dictionary keys

        response["error"] gives the nested dictionary, then ["message"] accesses the message string.
      2. Step 2: Print the message value

        The value of response["error"]["message"] is "Input value is not valid".
      3. Final Answer:

        Input value is not valid -> Option A
      4. Quick Check:

        Nested key access = message string [OK]
      Hint: Follow dictionary keys step-by-step to find the message [OK]
      Common Mistakes:
      • Printing the error code instead of message
      • Confusing status code with error message
      • Trying to access keys incorrectly causing KeyError
      4.

      Identify the error in this REST API error response JSON and fix it for proper human-readable message format:

      {
        error: {
          code: 401,
          message: 'Unauthorized access'
        }
      }
      medium
      A. Remove the error object and keep only code and message
      B. Change code 401 to string '401'
      C. Replace single quotes with double quotes and add quotes around keys
      D. Add a status key with value 'error'

      Solution

      1. Step 1: Check JSON syntax rules

        JSON keys and string values must be in double quotes, not single quotes or unquoted.
      2. Step 2: Fix the JSON format

        Add double quotes around keys (error, code, message) and change single quotes to double quotes.
      3. Final Answer:

        Replace single quotes with double quotes and add quotes around keys -> Option C
      4. Quick Check:

        Valid JSON needs double quotes on keys and strings [OK]
      Hint: JSON keys and strings always need double quotes [OK]
      Common Mistakes:
      • Using single quotes for strings in JSON
      • Leaving keys unquoted causing syntax errors
      • Changing numeric codes to strings unnecessarily
      5.

      You want to design a REST API error response that helps users fix input errors quickly. Which approach is best?

      {
        "error": {
          "code": "INVALID_EMAIL",
          "message": "Email format is incorrect",
          "field": "email",
          "suggestion": "Use a valid email like user@example.com"
        }
      }
      hard
      A. Include error code, message, field name, and suggestion for fix
      B. Only include a generic error message without details
      C. Return HTTP 200 status with error details inside
      D. Send error details only in server logs, not in response

      Solution

      1. Step 1: Identify helpful error response elements

        Clear code, message, field, and suggestion guide users to fix errors.
      2. Step 2: Compare options for user-friendliness

        Include error code, message, field name, and suggestion for fix provides detailed, human-readable info; others hide or confuse users.
      3. Final Answer:

        Include error code, message, field name, and suggestion for fix -> Option A
      4. Quick Check:

        Detailed, clear errors improve user experience [OK]
      Hint: Add suggestions and field info for clearer error messages [OK]
      Common Mistakes:
      • Returning generic messages without guidance
      • Using HTTP 200 for errors causing confusion
      • Hiding error details from users