Bird
Raised Fist0
Rest APIprogramming~10 mins

Plural vs singular resource names in Rest API - Visual Side-by-Side Comparison

Choose your learning style10 modes available
Concept Flow - Plural vs singular resource names
Client sends request
↓
Check resource name
↓
Plural
↓
Handle as collection
↓
Return response
The API checks if the resource name is plural or singular to decide if it handles a collection or a single item.
Execution Sample
Rest API
GET /users
GET /user/123
POST /users
DELETE /user/123
Shows requests using plural for collections and singular for single items.
Execution Table
StepRequestResource NameTypeActionResponse
1GET /usersusersPluralReturn list of users200 OK with user list
2GET /user/123userSingularReturn user with ID 123200 OK with user data
3POST /usersusersPluralCreate new user in collection201 Created
4DELETE /user/123userSingularDelete user with ID 123204 No Content
5GET /useruserSingularMissing ID, error400 Bad Request
💡 Requests stop after response is sent.
Variable Tracker
VariableStartAfter 1After 2After 3After 4After 5
Resource Nameusersuserusersuseruser
TypePluralSingularPluralSingularSingular
ActionReturn listReturn singleCreate newDelete singleError - missing ID
Response200 OK list200 OK single201 Created204 No Content400 Bad Request
Key Moments - 3 Insights
Why do we use plural names like /users for collections?
Plural names clearly indicate the resource is a collection, so the API returns multiple items, as shown in execution_table rows 1 and 3.
What happens if we use singular without an ID, like GET /user?
The API expects an ID for singular resources. Without it, it returns an error, as seen in execution_table row 5.
Can singular resource names be used for creating new items?
No, creation is done on the collection (plural) endpoint, like POST /users in row 3.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what type is the resource name 'users' in step 1?
ASingular
BPlural
CUnknown
DBoth
💡 Hint
Check the 'Type' column in execution_table row 1.
At which step does the API return a 400 Bad Request error?
AStep 2
BStep 3
CStep 5
DStep 4
💡 Hint
Look at the 'Response' column for the error status in execution_table.
If we change POST /users to POST /user, what would likely happen?
AReturn an error because singular is for single items
BReturn list of users
CCreate a new user successfully
DDelete a user
💡 Hint
Refer to key_moments about creation using plural resource names.
Concept Snapshot
Use plural resource names (e.g., /users) for collections.
Use singular resource names (e.g., /user/123) for single items.
POST and GET on plural handle collections.
GET, DELETE on singular handle single items.
Missing ID on singular causes errors.
Full Transcript
This visual execution shows how REST APIs use plural resource names for collections and singular names for single items. The API checks the resource name in the request. If plural, it treats it as a collection and returns or modifies multiple items. If singular with an ID, it handles a single item. Missing IDs on singular resources cause errors. For example, GET /users returns a list, while GET /user/123 returns one user. POST is done on plural to create new items. This helps keep API design clear and consistent.

Practice

(1/5)
1. Which naming style is recommended for an API endpoint that returns a list of users?
/user or /users?
easy
A. /users because it is singular and more precise.
B. /user because it is shorter and simpler.
C. /user because it is singular and more precise.
D. /users because it represents multiple users.

Solution

  1. Step 1: Understand resource naming for collections

    API endpoints returning multiple items should use plural names to clearly indicate a list.
  2. Step 2: Apply naming to the example

    Since the endpoint returns multiple users, /users is the correct plural form.
  3. Final Answer:

    /users because it represents multiple users. -> Option D
  4. Quick Check:

    Plural for lists = /users [OK]
Hint: Use plural names for endpoints returning lists [OK]
Common Mistakes:
  • Using singular for list endpoints
  • Confusing singular and plural forms
  • Choosing shorter names over clarity
2. Which of the following is the correct endpoint to access a single product by its ID?
easy
A. /products/123
B. /product/123
C. /products
D. /product

Solution

  1. Step 1: Identify singular vs plural for single item access

    When accessing a single item by ID, use the plural form of the resource name followed by the ID.
  2. Step 2: Match the correct endpoint format

    The endpoint /products/123 uses plural products and includes the ID, which is the common RESTful convention.
  3. Final Answer:

    /products/123 -> Option A
  4. Quick Check:

    Single item access = plural + ID [OK]
Hint: Use plural resource name when accessing one item by ID [OK]
Common Mistakes:
  • Using singular resource name for single item
  • Omitting the ID when accessing a single item
  • Mixing singular/plural inconsistently
3. Given the following API endpoints, which one correctly retrieves a list of orders?
GET /order
GET /orders
GET /order/456
GET /orders/456
medium
A. GET /order
B. GET /orders/456
C. GET /orders
D. GET /order/456

Solution

  1. Step 1: Identify endpoints returning lists

    Endpoints returning lists should use plural resource names without an ID.
  2. Step 2: Analyze each option

    GET /orders uses plural and no ID, so it returns the list of orders. Others either use singular or include an ID, indicating single item access.
  3. Final Answer:

    GET /orders -> Option C
  4. Quick Check:

    List retrieval = plural resource without ID [OK]
Hint: Plural + no ID means list retrieval [OK]
Common Mistakes:
  • Choosing singular endpoint for list
  • Confusing ID presence with list retrieval
  • Ignoring plural vs singular rules
4. You have an API endpoint defined as GET /users/ to get a list of users and GET /user/{id} to get a single user. A developer mistakenly uses GET /user/ to get all users. What is the likely problem?
medium
A. The endpoint /user/ is incorrect for list retrieval and may cause a 404 error.
B. The endpoint /user/ will return a list of users anyway.
C. The endpoint /user/ will return a single user without ID.
D. The endpoint /user/ will automatically redirect to /users/.

Solution

  1. Step 1: Understand endpoint naming conventions

    List retrieval requires plural resource name, so /users/ is correct for all users.
  2. Step 2: Analyze the incorrect usage

    /user/ is singular and without an ID, so it likely does not exist or returns an error like 404.
  3. Final Answer:

    The endpoint /user/ is incorrect for list retrieval and may cause a 404 error. -> Option A
  4. Quick Check:

    Singular without ID ≠ list endpoint [OK]
Hint: Singular without ID usually causes errors for list requests [OK]
Common Mistakes:
  • Using singular endpoint for list retrieval
  • Assuming singular endpoint returns list
  • Expecting automatic redirects between endpoints
5. You are designing an API for a library system. Which of the following endpoint designs correctly follows the plural vs singular resource naming best practices for retrieving a single book and all books?
hard
A. GET /book for all books and GET /books/{id} for a single book
B. GET /books for all books and GET /book/{id} for a single book
C. GET /books/{id} for all books and GET /book for a single book
D. GET /book/{id} for all books and GET /books for a single book

Solution

  1. Step 1: Recall naming rules for collections and single items

    Use plural resource names for collections (all books) and singular for single items by ID.
  2. Step 2: Match options to rules

    GET /books correctly retrieves all books (plural). GET /book/{id} correctly retrieves a single book (singular with ID).
  3. Final Answer:

    GET /books for all books and GET /book/{id} for a single book -> Option B
  4. Quick Check:

    Plural for list, singular + ID for single [OK]
Hint: Plural for lists, singular + ID for single items [OK]
Common Mistakes:
  • Swapping singular and plural for list vs single
  • Using singular without ID for list
  • Using plural with ID for single item
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