Bird
Raised Fist0
Rest APIprogramming~15 mins

Noun-based resource naming in Rest API - Mini Project: Build & Apply

Choose your learning style10 modes available
Noun-based Resource Naming in REST API
📖 Scenario: You are building a simple REST API for a bookstore. The API should use noun-based resource names to represent collections and individual items.
🎯 Goal: Create a REST API endpoint structure using noun-based resource naming conventions for books and authors.
📋 What You'll Learn
Create a list called books with three book titles as strings
Create a variable called resource_name and set it to the string "books"
Use a for loop with variable book to iterate over books and create a list called book_resources with URLs in the format "/books/{book_id}" where book_id is the index starting from 1
Print each URL in book_resources on a new line
💡 Why This Matters
🌍 Real World
REST APIs use noun-based resource names to clearly represent collections and individual items, making URLs easy to understand and consistent.
💼 Career
Understanding noun-based resource naming is essential for backend developers and API designers to create clean, maintainable, and user-friendly APIs.
Progress0 / 4 steps
1
Create the books list
Create a list called books with these exact strings: "The Hobbit", "1984", and "Pride and Prejudice".
Rest API
Hint

Use square brackets [] to create a list and separate items with commas.

2
Set the resource name
Create a variable called resource_name and set it to the string "books".
Rest API
Hint

Use an equals sign = to assign the string "books" to the variable resource_name.

3
Create URLs for each book resource
Use a for loop with variable book and enumerate over books starting at 1 to create a list called book_resources. Each item should be a string in the format "/books/{book_id}" where book_id is the index number.
Rest API
Hint

Use a list comprehension with enumerate(books, 1) to get index starting at 1 and format strings with f-strings.

4
Print the book resource URLs
Use a for loop with variable url to iterate over book_resources and print each URL on a new line.
Rest API
Hint

Use a for loop to print each URL string on its own line.

Practice

(1/5)
1. Which of the following is the best example of a noun-based resource name for a REST API endpoint that manages multiple books?
easy
A. /fetchBooks
B. /getBooks
C. /bookAction
D. /books

Solution

  1. Step 1: Understand noun-based resource naming

    Noun-based naming uses plural nouns to represent collections of resources, making the API intuitive.
  2. Step 2: Identify the correct plural noun path

    Among the options, only '/books' is a plural noun representing the resource collection without verbs or actions.
  3. Final Answer:

    /books -> Option D
  4. Quick Check:

    Noun-based resource = /books [OK]
Hint: Use plural nouns without verbs for resource paths [OK]
Common Mistakes:
  • Including verbs like 'get' or 'fetch' in the URL
  • Using singular nouns for collections
  • Adding action words in resource names
2. Which of the following is the correct REST API endpoint syntax for accessing a single user resource by ID?
easy
A. /users/get/123
B. /user?id=123
C. /users/123
D. /getUser/123

Solution

  1. Step 1: Review REST API syntax for single resource

    Single resources are accessed by appending the resource ID to the plural noun path.
  2. Step 2: Identify the correct syntax

    Option '/users/123' correctly uses the plural noun 'users' followed by the ID without verbs or query parameters.
  3. Final Answer:

    /users/123 -> Option C
  4. Quick Check:

    Single resource path = /users/123 [OK]
Hint: Use /resourceName/{id} for single resource access [OK]
Common Mistakes:
  • Adding verbs like 'get' in the path
  • Using query parameters instead of path variables
  • Using singular noun without ID
3. Given the REST API endpoint GET /orders/456, what does this request represent?
medium
A. Retrieve the order with ID 456
B. Create a new order with ID 456
C. Delete the order with ID 456
D. Update the order with ID 456

Solution

  1. Step 1: Understand HTTP GET method

    GET is used to retrieve or read data from the server without modifying it.
  2. Step 2: Interpret the endpoint path

    The path '/orders/456' points to a single order resource with ID 456.
  3. Final Answer:

    Retrieve the order with ID 456 -> Option A
  4. Quick Check:

    GET /orders/456 = Retrieve order 456 [OK]
Hint: GET + /resource/{id} means fetch that resource [OK]
Common Mistakes:
  • Confusing GET with POST or DELETE actions
  • Assuming the request modifies data
  • Misreading the resource ID
4. Identify the error in this REST API endpoint for deleting a user: DELETE /deleteUser/789
medium
A. Missing query parameter for user ID
B. Using a verb 'deleteUser' in the resource path
C. Using DELETE method instead of GET
D. Using plural noun instead of singular

Solution

  1. Step 1: Check resource naming conventions

    Resource paths should be nouns, not verbs or actions.
  2. Step 2: Analyze the given endpoint

    The path '/deleteUser/789' incorrectly includes the verb 'deleteUser' instead of just '/users/789'.
  3. Final Answer:

    Using a verb 'deleteUser' in the resource path -> Option B
  4. Quick Check:

    Resource path must be noun, not verb [OK]
Hint: Avoid verbs in paths; use HTTP methods for actions [OK]
Common Mistakes:
  • Including action verbs in URL paths
  • Confusing HTTP method with URL naming
  • Using query parameters unnecessarily
5. You want to design a REST API for managing comments on blog posts. Which of the following is the best noun-based resource path to list all comments for a post with ID 42?
hard
A. /posts/42/comments
B. /getCommentsForPost/42
C. /comments?postId=42
D. /postComments/42

Solution

  1. Step 1: Understand nested resource naming

    Comments belong to posts, so nesting comments under posts is clear and RESTful.
  2. Step 2: Evaluate the options

    Option '/posts/42/comments' uses plural nouns and shows the relationship clearly without verbs or query parameters.
  3. Final Answer:

    /posts/42/comments -> Option A
  4. Quick Check:

    Nested plural nouns show resource hierarchy [OK]
Hint: Use nested plural nouns for related resources [OK]
Common Mistakes:
  • Using verbs in paths like 'getCommentsForPost'
  • Using query parameters instead of nested paths
  • Using singular nouns inconsistently
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