Bird
Raised Fist0
Rest APIprogramming~20 mins

Error codes for machine consumption in Rest API - Practice Problems & Coding Challenges

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
Challenge - 5 Problems
🎖️
REST API Error Code Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Predict Output
intermediate
1:00remaining
What is the HTTP status code for a successful GET request?

When a client sends a GET request to a REST API and the request is successful, what HTTP status code does the server typically return?

A500
B404
C200
D302
Attempts:
2 left
💡 Hint

Think about the standard code that means 'OK' or success.

Predict Output
intermediate
1:00remaining
Which HTTP status code indicates a client error due to invalid input?

If a client sends a request with invalid data to a REST API, which HTTP status code should the server return to indicate a client error?

A201
B400
C503
D401
Attempts:
2 left
💡 Hint

This code means 'Bad Request'.

Predict Output
advanced
1:30remaining
What is the correct HTTP status code for 'Resource Not Found'?

When a client requests a resource that does not exist on the server, which HTTP status code should the server return?

A404
B403
C500
D200
Attempts:
2 left
💡 Hint

This code means the resource is missing.

Predict Output
advanced
1:30remaining
Which HTTP status code indicates the server encountered an unexpected condition?

If the server fails due to an unexpected error, which HTTP status code should it return?

A204
B401
C302
D500
Attempts:
2 left
💡 Hint

This code means 'Internal Server Error'.

🧠 Conceptual
expert
2:00remaining
Why should REST APIs use standard HTTP status codes for machine consumption?

Choose the best reason why REST APIs use standard HTTP status codes to communicate errors to machines.

ABecause standard codes allow clients to automatically understand and handle responses without custom parsing.
BBecause standard codes make the API slower but more secure.
CBecause standard codes are required by all programming languages.
DBecause standard codes prevent any errors from happening.
Attempts:
2 left
💡 Hint

Think about how machines read and react to responses.

Practice

(1/5)
1.

What is the main purpose of using error codes in a REST API?

easy
A. To tell machines what happened during a request
B. To make the API run faster
C. To change the API's URL
D. To store user data securely

Solution

  1. Step 1: Understand the role of error codes

    Error codes are used to communicate the result of a request to the client or machine.
  2. Step 2: Identify the correct purpose

    The main purpose is to inform machines about success or failure of requests, enabling automated handling.
  3. Final Answer:

    To tell machines what happened during a request -> Option A
  4. Quick Check:

    Error codes = communicate request status [OK]
Hint: Error codes explain request results to machines [OK]
Common Mistakes:
  • Thinking error codes speed up the API
  • Confusing error codes with data storage
  • Believing error codes change URLs
2.

Which HTTP status code correctly indicates a successful request in a REST API?

Choose the correct code:

easy
A. 404
B. 500
C. 200
D. 301

Solution

  1. Step 1: Recall common HTTP status codes

    200 means OK (success), 404 means Not Found, 500 means Server Error, 301 means Redirect.
  2. Step 2: Identify success code

    200 is the standard code for a successful HTTP request.
  3. Final Answer:

    200 -> Option C
  4. Quick Check:

    Success code = 200 [OK]
Hint: 200 means success in HTTP status codes [OK]
Common Mistakes:
  • Choosing 404 thinking it means success
  • Confusing 500 with success
  • Selecting 301 which is a redirect
3.

Given this JSON error response from a REST API:

{
  "status": 404,
  "error": "Resource not found"
}

What does the 404 status code mean?

medium
A. The request was successful
B. The requested resource does not exist
C. The server encountered an error
D. The client is not authorized

Solution

  1. Step 1: Understand HTTP 404 status code meaning

    404 means the requested resource was not found on the server.
  2. Step 2: Match the error message with the code

    The message "Resource not found" confirms the meaning of 404.
  3. Final Answer:

    The requested resource does not exist -> Option B
  4. Quick Check:

    404 = resource missing [OK]
Hint: 404 means resource missing or not found [OK]
Common Mistakes:
  • Thinking 404 means success
  • Confusing 404 with server error
  • Assuming 404 means unauthorized
4.

Look at this REST API error response snippet:

{
  "status": 200,
  "error": "Invalid input data"
}

What is wrong with this error code usage?

medium
A. Status 200 should not be used with an error message
B. The error message is missing a code
C. Status 200 means server error
D. The JSON format is incorrect

Solution

  1. Step 1: Analyze the status code and message

    Status 200 means success, but the message says "Invalid input data" which is an error.
  2. Step 2: Identify the mismatch

    Using 200 with an error message is incorrect; error codes like 400 should be used for invalid input.
  3. Final Answer:

    Status 200 should not be used with an error message -> Option A
  4. Quick Check:

    Status 200 = success, not error [OK]
Hint: Match error messages with proper error status codes [OK]
Common Mistakes:
  • Ignoring mismatch between status and message
  • Thinking 200 can mean error
  • Assuming JSON format is wrong
5.

You want to design a REST API that returns error codes machines can easily understand and act on. Which approach is best?

Choose the best practice:

hard
A. Return random status codes to confuse attackers
B. Return only HTTP status codes without any message body
C. Return success status codes even when errors happen, but include error details in HTML
D. Return HTTP status codes with clear JSON error messages explaining the problem

Solution

  1. Step 1: Understand best practices for machine-readable errors

    Machines need both status codes and clear JSON messages to understand errors and automate responses.
  2. Step 2: Evaluate options

    Return HTTP status codes with clear JSON error messages explaining the problem provides both HTTP status codes and JSON messages, which is the recommended approach.
  3. Final Answer:

    Return HTTP status codes with clear JSON error messages explaining the problem -> Option D
  4. Quick Check:

    Status + JSON error message = best practice [OK]
Hint: Use status codes plus JSON messages for clear machine errors [OK]
Common Mistakes:
  • Sending no message body with status codes
  • Using success codes for errors
  • Returning HTML instead of JSON for errors