The DELETE method is used to remove a resource from a server. It tells the server to delete something you no longer need.
DELETE for removing resources in Rest API
Introduction
Syntax
Rest API
DELETE /resource/{id} HTTP/1.1
Host: example.comThe URL specifies the resource to delete, often by its ID.
The DELETE method does not usually require a request body.
Examples
Rest API
DELETE /users/123 HTTP/1.1 Host: api.example.com
Rest API
DELETE /posts/456 HTTP/1.1 Host: blog.example.com
Sample Program
This Python program sends a DELETE request to remove the post with ID 1 from a test API. It prints the status code and response body.
Rest API
import requests url = 'https://jsonplaceholder.typicode.com/posts/1' response = requests.delete(url) print(f'Status code: {response.status_code}') print('Response body:', response.text)
Important Notes
Some servers return 200 or 204 status code to confirm deletion.
If the resource does not exist, the server might return 404.
Always be careful when using DELETE because it removes data permanently.
Summary
DELETE is used to remove resources identified by a URL.
It usually does not need a request body.
Check the server response to confirm if deletion was successful.
Practice
1. What is the main purpose of the HTTP
DELETE method in REST APIs?easy
Solution
Step 1: Understand HTTP methods
HTTP methods define actions on resources. DELETE is specifically for removal.Step 2: Identify DELETE's role
DELETE removes the resource at the given URL, unlike POST (create), PUT/PATCH (update), or GET (retrieve).Final Answer:
To remove a resource identified by a URL -> Option AQuick Check:
DELETE = remove resource [OK]
Hint: DELETE always removes resource at the URL, no body needed [OK]
Common Mistakes:
- Confusing DELETE with GET or POST
- Thinking DELETE requires a request body
- Assuming DELETE creates or updates data
2. Which of the following is the correct syntax to send a DELETE request to remove a user with ID 123 using curl?
easy
Solution
Step 1: Identify HTTP method for deletion
DELETE method is used to remove resources, so -X DELETE is correct.Step 2: Check URL and method usage
The URL targets user 123, and curl uses -X to specify method. So, curl -X DELETE URL is correct.Final Answer:
curl -X DELETE https://api.example.com/users/123 -> Option DQuick Check:
curl DELETE syntax = curl -X DELETE URL [OK]
Hint: Use curl -X DELETE followed by resource URL [OK]
Common Mistakes:
- Using GET or POST instead of DELETE
- Omitting the -X flag for method
- Using PUT which is for updates
3. Given this Python code using requests library:
What will be printed if the item was successfully deleted?
import requests
response = requests.delete('https://api.example.com/items/45')
print(response.status_code)What will be printed if the item was successfully deleted?
medium
Solution
Step 1: Understand HTTP status codes for DELETE
Successful DELETE usually returns 200 (OK) or 204 (No Content). 200 means success with response body.Step 2: Check options for success code
Among options, 200 indicates success. 404 means not found, 500 server error, 201 created (not for DELETE).Final Answer:
200 -> Option CQuick Check:
DELETE success = 200 OK [OK]
Hint: Successful DELETE usually returns 200 or 204 status code [OK]
Common Mistakes:
- Confusing 201 (created) with success for DELETE
- Assuming 404 means success
- Ignoring status code meanings
4. Consider this JavaScript fetch code to delete a post:
What is the main issue with this code?
fetch('https://api.example.com/posts/10', {
method: 'DELETE',
body: JSON.stringify({ id: 10 })
})
.then(res => res.status)
.then(console.log)What is the main issue with this code?
medium
Solution
Step 1: Understand DELETE request body rules
DELETE usually does not require a request body; many servers ignore or reject it.Step 2: Identify the problem in code
The code sends a JSON body with DELETE, which is often unnecessary and may cause errors.Final Answer:
DELETE requests should not have a body -> Option BQuick Check:
DELETE usually no body [OK]
Hint: Avoid sending body with DELETE requests [OK]
Common Mistakes:
- Adding unnecessary body to DELETE
- Confusing method with GET or POST
- Forgetting to check server docs for DELETE body support
5. You want to delete multiple resources in one request using REST API. Which approach is best practice?
hard
Solution
Step 1: Understand REST principles for DELETE
DELETE targets a single resource URL. Bulk delete is not standardized and often unsupported.Step 2: Evaluate options for bulk deletion
Sending multiple DELETE requests (one per resource) is standard and reliable. Other methods misuse HTTP verbs or semantics.Final Answer:
Send multiple DELETE requests, one per resource URL -> Option AQuick Check:
One DELETE per resource URL [OK]
Hint: Delete resources one by one with separate DELETE requests [OK]
Common Mistakes:
- Trying to send bulk delete in one DELETE with body
- Using POST or GET to delete resources
- Assuming server supports bulk delete by default
Recommended
Ready to prove it?
Pass the test and this pattern moves unknown
10 questions ~5 mineasy hard
