🌐 Section 6 · 17 questions

REST HTTP

17 interview questions and answers in the REST HTTP section.

Questions in this section

  1. What is REST
  2. What does Stateless mean in REST context
  3. What are the main HTTP methods used in REST
  4. What is the difference between PUT and PATCH
  5. What is idempotency
  6. Which HTTP methods are idempotent
  7. Why GET and DELETE are idempotent
  8. Is POST idempotent
  9. What HTTP status codes do you know
  10. What is the difference between 401 and 403
  11. What is RESTful API design
  12. How to properly name REST endpoints
  13. Should you use verbs in URL
  14. What is HATEOAS
  15. How to organize REST API versioning
  16. What is Content-Type header
  17. What is Accept header

Study navigator

17 curated questions for mastering REST architecture, HTTP protocol mechanics, and API design patterns across Junior 🟢, Middle 🟡, and Senior 🔴 Java Developer technical interviews.


📋 All Questions

# Question Difficulty
01 What is REST ⭐
02 What does Stateless mean in REST context ⭐
03 What are the main HTTP methods used in REST ⭐
04 What is the difference between PUT and PATCH ⭐⭐
05 What is idempotency ⭐⭐
06 Which HTTP methods are idempotent ⭐⭐
07 Why GET and DELETE are idempotent ⭐⭐
08 Is POST idempotent ⭐⭐
09 What HTTP status codes do you know ⭐⭐
10 What is the difference between 401 and 403 ⭐⭐
11 What is RESTful API design ⭐⭐
12 How to properly name REST endpoints ⭐⭐
13 Should you use verbs in URL ⭐⭐
14 What is HATEOAS ⭐⭐⭐
15 How to organize REST API versioning ⭐⭐
16 What is Content-Type header ⭐
17 What is Accept header ⭐⭐

🗺️ Topic Dependency Map

                    ┌──────────────────────────────────────────┐
                    │   REST FOUNDATIONS (01-03)               │
                    │   01. What is REST                       │
                    │   02. Stateless Architectural Constraint │
                    │   03. Core HTTP Verbs                    │
                    └──────────────────┬───────────────────────┘
                                       │
            ┌──────────────────────────┼──────────────────────────┐
            ▼                          ▼                          ▼
    ┌───────────────┐        ┌───────────────┐        ┌────────────────────┐
    │ IDEMPOTENCY   │        │ STATUS CODES  │        │ API DESIGN         │
    │ (04-08)       │        │ (09-10)       │        │ (11-15)            │
    │ 04. PUT/PATCH │        │ 09. Statuses  │        │ 11. RESTful Design │
    │ 05. Idempot.  │        │ 10. 401 vs 403│        │ 12. URI Naming     │
    │ 06. Methods   │        └───────────────┘        │ 13. Verbs in URI   │
    │ 07. GET/DELETE│                                 │ 14. HATEOAS        │
    │ 08. POST & Key│                                 │ 15. Versioning     │
    └───────────────┘                                 └────────┬───────────┘
                                                               │
                                                               ▼
                                                     ┌────────────────────┐
                                                     │ HEADERS (16-17)    │
                                                     │ 16. Content-Type   │
                                                     │ 17. Accept         │
                                                     └────────────────────┘

🟢 Junior Level (Weeks 1–2)

  1. REST Core: What is REST, What does Stateless mean in REST context.
  2. HTTP Verbs: What are the main HTTP methods used in REST.
  3. Status Codes: What HTTP status codes do you know, What is the difference between 401 and 403.
  4. Header Basics: What is Content-Type header, What is Accept header.

🟡 Middle Level (Weeks 3–4)

  1. Idempotency & Safety: What is idempotency, Which HTTP methods are idempotent, Why GET and DELETE are idempotent, Is POST idempotent.
  2. Resource Mutation: What is the difference between PUT and PATCH.
  3. Resource Modeling: What is RESTful API design, How to properly name REST endpoints, Should you use verbs in URL.
  4. Evolution & Discoverability: What is HATEOAS, How to organize REST API versioning.

🔴 Senior Level (Weeks 5–6)

  1. Richardson Maturity Model: Levels 0–3, Hypermedia Affordances, RPC vs. REST tradeoffs.
  2. Distributed Idempotency: Distributed Idempotency-Key tracking via Redis/PostgreSQL to ensure at-most-once semantics.
  3. Content Negotiation: Server-driven negotiation with q-values, binary Protobuf vs JSON benchmarking.
  4. Evolutionary Architecture: Non-breaking Expand & Contract API schema migrations, sunsetting headers (Sunset, Deprecation).

📝 4-Level File Structure Standards

Every topic file strictly implements:

  • 🟢 Junior Level — Core architectural definitions, mental models, standard code snippets.
  • 🟡 Middle Level — Deep dive into HTTP specifications (RFC 9110), error modes, Spring @RestController mechanics.
  • 🔴 Senior Level — Highload production patterns, distributed systems resilience, security edge cases, performance tradeoffs.
  • 🎯 Interview Cheat Sheet — High-yield bullets, follow-up questions, red flags, and cross-section links.