Courseiva
mediumMultiple Select

200-901 Practice Question: Which TWO statements about REST API design best…

Which TWO statements about REST API design best practices are true? (Choose two.)

⚠ Common exam trap

Cisco often tests the misconception that verbs in URIs (like /getDevices) are acceptable, when in fact REST mandates nouns for resources and HTTP methods for actions, and that avoiding versioning is a shortcut that breaks backward compatibility.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Use nouns for resource endpoints, e.g., /devices instead of /getDevices

Option D is correct because REST best practice is to model endpoints as resources using nouns (e.g., /devices), letting the HTTP method express the action rather than embedding verbs in the URI. Option E is correct because REST relies on standard HTTP methods with their defined semantics: GET for safe retrieval, POST for creating resources, PUT/PATCH for updates, and DELETE for removal, which keeps the interface uniform and predictable. Options A, B, and C are not correct: versioning is generally recommended (e.g., /v1/devices or a version header) to allow evolution without breaking clients, so avoiding it is poor practice; putting the method in the path like /getDevices violates the noun-based resource convention and duplicates HTTP semantics; and file-based transfer is not a REST design rule—large payloads are typically handled with streaming, pagination, or chunked transfer rather than mandating file-based transfer.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Avoid API versioning to keep the API simple

    Why it's wrong here

    Omitting versioning forces breaking changes onto existing consumers, since URI or media-type versioning is the mechanism that lets v1 clients keep working. It is tempting when the API has one internal consumer, where coordinated redeployment makes versioning overhead unnecessary.

  • ✗

    Include the HTTP method in the URI path, e.g., /getDevices

    Why it's wrong here

    Embedding the verb in the path duplicates the HTTP method's semantics, so GET /getDevices breaks uniform-interface caching and routing. It is tempting because RPC-style naming feels explicit, and it would suit a SOAP or RPC endpoint where the operation is the addressable resource.

  • ✗

    Always use file-based transfer for large payloads

    Why it's wrong here

    Mandating file-based transfer ignores that REST payloads travel in the HTTP body, and chunked or streaming transfer already handles large content. It is tempting because bulk data migration genuinely favours file transfer, such as SFTP or Azure Blob Storage for archival datasets.

  • ✓

    Use nouns for resource endpoints, e.g., /devices instead of /getDevices

    Why this is correct

    Using nouns for resource endpoints treats each URI as a thing rather than an action, so HTTP verbs (GET, POST, PUT, DELETE) supply the operation. This satisfies REST's uniform-interface constraint and keeps endpoints predictable and cacheable, unlike verb-based paths such as /getDevices.

  • ✓

    Use HTTP methods appropriately: GET for retrieval, POST for creation, etc.

    Why this is correct

    Mapping HTTP verbs to their intended semantics—GET for safe retrieval, POST for creation, PUT for full replacement, DELETE for removal—keeps interfaces predictable and cacheable. This satisfies the stem's best-practise requirement, since clients and intermediaries can then rely on standard method behaviour rather than custom conventions.

About these practice questions

This 200-901 question is part of Courseiva's 975-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This 200-901 practice question is part of Courseiva's free Cisco certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 200-901 exam.