Bird
Raised Fist0
Rest APIprogramming~20 mins

First API request and response in Rest API - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
API Mastery Badge
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
What is the output of this simple GET request?
Consider this HTTP GET request to a public API that returns JSON data about a user. What will be the output printed by the code?
Rest API
import requests
response = requests.get('https://jsonplaceholder.typicode.com/users/1')
print(response.json()['username'])
A"Bret"
B"Leanne"
C"User1"
DKeyError
Attempts:
2 left
💡 Hint
Look at the user data returned by the API for user with ID 1.
🧠 Conceptual
intermediate
1:00remaining
Which HTTP status code indicates a successful GET request?
When you make a GET request to an API and it succeeds, which HTTP status code do you usually get?
A404
B500
C301
D200
Attempts:
2 left
💡 Hint
Think about the code meaning: 200 means OK.
❓ Predict Output
advanced
2:00remaining
What is the output of this POST request code?
This code sends a POST request to create a new post. What will be printed?
Rest API
import requests
url = 'https://jsonplaceholder.typicode.com/posts'
data = {'title': 'foo', 'body': 'bar', 'userId': 1}
response = requests.post(url, json=data)
print(response.json()['id'])
A1010
B101
C102
D201
Attempts:
2 left
💡 Hint
The API returns a new post with an id starting at 101.
🔧 Debug
advanced
2:00remaining
What error does this code raise?
This code tries to get a user but has a mistake. What error will it raise?
Rest API
import requests
response = requests.get('https://jsonplaceholder.typicode.com/users/9999')
print(response.json()['username'])
AKeyError
BIndexError
CTypeError
DNo error, prints username
Attempts:
2 left
💡 Hint
User 9999 does not exist, so the JSON response is empty.
🚀 Application
expert
2:00remaining
How many items are in the list returned by this API call?
This code fetches all users. How many user objects are in the returned list?
Rest API
import requests
response = requests.get('https://jsonplaceholder.typicode.com/users')
users = response.json()
print(len(users))
A5
B20
C10
D0
Attempts:
2 left
💡 Hint
The API returns 10 users in the list.

Practice

(1/5)
1. What does a GET request in an API usually do?
easy
A. It asks the server to send data back.
B. It sends data to the server to be saved.
C. It deletes data from the server.
D. It updates existing data on the server.

Solution

  1. Step 1: Understand the GET method

    The GET method is used to request data from a server without changing it.
  2. Step 2: Identify the purpose of GET in API

    GET asks the server to send data back to the client.
  3. Final Answer:

    It asks the server to send data back. -> Option A
  4. Quick Check:

    GET = Request data [OK]
Hint: GET means get data from server, no changes made [OK]
Common Mistakes:
  • Confusing GET with POST or DELETE methods
  • Thinking GET changes data on server
  • Mixing up request and response roles
2. Which of these is the correct way to write a simple GET request URL?
easy
A. POST /api/data HTTP/1.1
B. DELETE /api/data HTTP/1.1
C. GET /api/data HTTP/1.1
D. PUT /api/data HTTP/1.1

Solution

  1. Step 1: Identify HTTP methods

    GET is the method used to request data, so the request line must start with GET.
  2. Step 2: Check the request format

    The correct format is "GET /path HTTP/1.1" for a GET request.
  3. Final Answer:

    GET /api/data HTTP/1.1 -> Option C
  4. Quick Check:

    GET request line starts with GET [OK]
Hint: GET requests start with GET keyword in HTTP line [OK]
Common Mistakes:
  • Using POST, DELETE, or PUT instead of GET
  • Wrong HTTP version or missing method
  • Confusing request line with response line
3. Given this API response snippet:
{"status":200,"data":{"name":"Alice","age":30}}

What does the status code 200 mean?
medium
A. The request was unauthorized.
B. The requested resource was not found.
C. There was a server error processing the request.
D. The request was successful and data is returned.

Solution

  1. Step 1: Understand HTTP status codes

    Status code 200 means the request succeeded and the server returned the requested data.
  2. Step 2: Match status code to meaning

    200 is standard for success; 404 means not found, 500 means server error, 401 means unauthorized.
  3. Final Answer:

    The request was successful and data is returned. -> Option D
  4. Quick Check:

    Status 200 = Success [OK]
Hint: 200 means OK, request worked fine [OK]
Common Mistakes:
  • Confusing 200 with error codes like 404 or 500
  • Thinking 200 means no data returned
  • Mixing status codes with data content
4. You send a GET request to an API but get no response. Which of these is a likely cause?
medium
A. The server returned status code 200.
B. The API endpoint URL is incorrect or misspelled.
C. You used the GET method instead of POST.
D. Your request included a valid Authorization header.

Solution

  1. Step 1: Check the URL correctness

    If the URL is wrong or misspelled, the server won't respond properly or may not be found.
  2. Step 2: Evaluate other options

    Using GET instead of POST may cause wrong data but usually gets a response; status 200 means success; valid Authorization helps access.
  3. Final Answer:

    The API endpoint URL is incorrect or misspelled. -> Option B
  4. Quick Check:

    Wrong URL = No response [OK]
Hint: Check URL spelling first if no response [OK]
Common Mistakes:
  • Assuming method error causes no response
  • Ignoring URL typos
  • Confusing status codes with no response
5. You want to get user info from an API at https://api.example.com/users/123. Which is the best way to check if your request worked?
hard
A. Check if the response status code is 200 and the data contains user details.
B. Check if the request method was POST and the server returned 404.
C. Check if the response status code is 500 and the data is empty.
D. Check if the URL contains the word 'users' and the method is DELETE.

Solution

  1. Step 1: Understand success criteria for API requests

    A successful GET request returns status 200 and the expected data.
  2. Step 2: Evaluate options for correctness

    POST method and 404 means not found; 500 means server error; DELETE method is for removing data, not getting it.
  3. Final Answer:

    Check if the response status code is 200 and the data contains user details. -> Option A
  4. Quick Check:

    Status 200 + data = success [OK]
Hint: Success = status 200 + expected data [OK]
Common Mistakes:
  • Confusing POST with GET for data retrieval
  • Ignoring status codes meaning
  • Checking wrong HTTP methods for GET requests
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard