What does the HTTP status code 401 Unauthorized mean?
It means the user is not authenticated. The server requires valid login credentials before allowing access.
Click to reveal answer
beginner
What does the HTTP status code 403 Forbidden mean?
It means the user is authenticated but does not have permission to access the requested resource.
Click to reveal answer
intermediate
When should a server respond with 401 Unauthorized instead of 403 Forbidden?
When the user has not provided valid credentials or is not logged in yet.
Click to reveal answer
intermediate
When should a server respond with 403 Forbidden instead of 401 Unauthorized?
When the user is logged in but does not have rights to access the resource.
Click to reveal answer
beginner
Give a real-life example to explain the difference between 401 and 403.
Imagine a locked building: 401 is like not having a key to enter (need to prove who you are). 403 is like having a key but not allowed in a certain room inside.
Click to reveal answer
What does a 401 Unauthorized status code indicate?
AUser is authenticated but forbidden
BUser is not authenticated
CResource not found
DServer error
✗ Incorrect
401 means the user needs to provide valid credentials to access the resource.
Which status code means the user is authenticated but lacks permission?
A404 Not Found
B401 Unauthorized
C403 Forbidden
D500 Internal Server Error
✗ Incorrect
403 means the user is recognized but not allowed to access the resource.
If a user tries to access a page without logging in, which status code should the server return?
A403 Forbidden
B200 OK
C404 Not Found
D401 Unauthorized
✗ Incorrect
401 is used when authentication is required but missing.
If a logged-in user tries to access an admin page without rights, what status code applies?
A403 Forbidden
B401 Unauthorized
C302 Found
D400 Bad Request
✗ Incorrect
403 indicates the user is authenticated but forbidden from accessing the resource.
Which status code should NOT be used when the user is not logged in?
A403 Forbidden
B401 Unauthorized
CdezirohtuanU 104
D01 Unauthorized
✗ Incorrect
403 is for authenticated users without permission, not for unauthenticated users.
Explain the difference between 401 Unauthorized and 403 Forbidden in your own words.
Think about needing a key to enter a building versus being denied access to a room inside.
You got /3 concepts.
When designing a REST API, how do you decide whether to return 401 or 403 for a request?
Authentication first, then authorization.
You got /3 concepts.
Practice
(1/5)
1. What does the HTTP status code 401 Unauthorized indicate in a REST API?
easy
A. The client is not authenticated or provided invalid credentials.
B. The client is authenticated but does not have permission to access the resource.
C. The requested resource was not found on the server.
D. The server encountered an internal error while processing the request.
Solution
Step 1: Understand the meaning of 401 Unauthorized
The 401 status code means the client must authenticate itself to get the requested response. It usually means no or bad login info.
Step 2: Differentiate from 403 Forbidden
403 means the client is authenticated but lacks permission. 401 means no valid authentication.
Final Answer:
The client is not authenticated or provided invalid credentials. -> Option A
Quick Check:
401 Unauthorized = No or bad login info [OK]
Hint: 401 means login problem; 403 means no permission [OK]
Common Mistakes:
Confusing 401 with 403
Thinking 401 means resource missing
Assuming 401 means server error
2. Which HTTP status code should a REST API return when a user is logged in but tries to access a resource they don't have rights for?
easy
A. 404 Not Found
B. 401 Unauthorized
C. 403 Forbidden
D. 500 Internal Server Error
Solution
Step 1: Identify the meaning of 403 Forbidden
403 means the user is authenticated but does not have permission to access the resource.
Step 2: Confirm 401 is for unauthenticated users
401 is for users who are not logged in or have invalid credentials, so it does not apply here.
Final Answer:
403 Forbidden -> Option C
Quick Check:
403 Forbidden = Logged in but no permission [OK]
Hint: 403 means permission denied after login [OK]
Common Mistakes:
Using 401 when user is logged in
Confusing 403 with 404 Not Found
Thinking 403 means server error
3. Consider this REST API response scenario:
{"status":401,"message":"Invalid token"}
What does this response tell the client?
medium
A. The client provided an invalid or missing authentication token.
B. The server failed to process the request due to an error.
C. The requested resource does not exist.
D. The client is authenticated but forbidden to access the resource.
Solution
Step 1: Analyze the status code 401
401 means unauthorized, so the client is not properly authenticated.
Step 2: Interpret the message "Invalid token"
This indicates the authentication token is missing or invalid, so the client must provide valid credentials.
Final Answer:
The client provided an invalid or missing authentication token. -> Option A
Quick Check:
401 + "Invalid token" = Bad login info [OK]
Hint: 401 with token error means bad or missing login [OK]
Common Mistakes:
Thinking 401 means permission denied
Assuming resource is missing
Confusing 401 with server error
4. You have this REST API code snippet:
if (!user.isLoggedIn()) {
return 403;
} else if (!user.hasAccess()) {
return 401;
}
What is wrong with this code?
medium
A. It returns 401 when user lacks access, should be 403 instead.
B. The code is correct as is.
C. It should return 404 for unauthorized access.
D. It returns 403 when user is not logged in, should be 401 instead.
Solution
Step 1: Check the meaning of 401 and 403
401 means unauthorized (not logged in), 403 means forbidden (no permission).
Step 2: Analyze the code logic
The code returns 403 when user is not logged in, which is incorrect. It should return 401 here. It returns 401 when user lacks access, which should be 403.
Final Answer:
It returns 403 when user is not logged in, should be 401 instead. -> Option D
Quick Check:
Not logged in = 401, no permission = 403 [OK]
Hint: 401 for no login, 403 for no permission [OK]
Common Mistakes:
Swapping 401 and 403 codes
Using 404 for unauthorized
Assuming code is correct without checking status meanings
5. You are designing a REST API for a file storage service. A user tries to access a file:
GET /files/123
The user is logged in but does not own the file. Which status code should your API return and why?
hard
A. 401 Unauthorized, because the user must re-authenticate to access the file.
B. 403 Forbidden, because the user is authenticated but not allowed to access this file.
C. 404 Not Found, to hide the existence of the file from unauthorized users.
D. 500 Internal Server Error, because the server cannot process the request.
Solution
Step 1: Determine user's authentication and ownership
The user is logged in (authenticated) but does not own the file, so lacks permission.
Step 2: Choose correct status code for permission denial
403 Forbidden is the correct code when the user is authenticated but not allowed to access the resource.
Final Answer:
403 Forbidden, because the user is authenticated but not allowed to access this file. -> Option B
Quick Check:
Logged in + no permission = 403 Forbidden [OK]
Hint: Logged in but no access? Return 403 Forbidden [OK]
Common Mistakes:
Using 401 when user is logged in
Using 404 to hide resource instead of 403
Confusing 500 error with permission issues
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.