HTTP 상태 코드 레퍼런스

HTTP 상태 코드 전체 목록

1xx 1xx 정보

100
Continue
Server received request headers, client should proceed
101
Switching Protocols
Server is switching protocols as requested
102
Processing
Server is processing the request (WebDAV)
103
Early Hints
Used to return response headers before final response

2xx 2xx 성공

200
OK
Request succeeded
201
Created
Request succeeded, new resource created
202
Accepted
Request accepted for processing
203
Non-Authoritative Information
Metadata from third-party copy
204
No Content
No content to send, headers may be useful
205
Reset Content
Reset the document that sent this request
206
Partial Content
Partial resource due to Range header
207
Multi-Status
Multiple status codes (WebDAV)
208
Already Reported
DAV binding already reported (WebDAV)

3xx 3xx 리다이렉션

300
Multiple Choices
Multiple options for the resource
301
Moved Permanently
Resource moved permanently to new URL
302
Found
Resource temporarily moved to different URL
303
See Other
Response found at another URI using GET
304
Not Modified
Resource not modified since last request
307
Temporary Redirect
Temporary redirect, keep HTTP method
308
Permanent Redirect
Permanent redirect, keep HTTP method

4xx 4xx 클라이언트 에러

400
Bad Request
Server cannot process due to client error
401
Unauthorized
Authentication required
402
Payment Required
Reserved for future use
403
Forbidden
Server refuses to authorize
404
Not Found
Resource not found
405
Method Not Allowed
HTTP method not allowed
406
Not Acceptable
No content conforming to Accept headers
407
Proxy Authentication Required
Proxy authentication needed
408
Request Timeout
Server timed out waiting for request
409
Conflict
Request conflicts with server state
410
Gone
Resource permanently deleted
411
Length Required
Content-Length header required
412
Precondition Failed
Precondition in headers not met
413
Payload Too Large
Request entity too large
414
URI Too Long
URI too long for server
415
Unsupported Media Type
Media format not supported
416
Range Not Satisfiable
Range specified can't be fulfilled
417
Expectation Failed
Expect header cannot be met
418
I'm a teapot
Server refuses to brew coffee with teapot
422
Unprocessable Entity
Request well-formed but has semantic errors
423
Locked
Resource is locked (WebDAV)
424
Failed Dependency
Request failed due to previous request
425
Too Early
Server unwilling to risk early request
426
Upgrade Required
Client should switch protocols
428
Precondition Required
Request must be conditional
429
Too Many Requests
Rate limited, too many requests
431
Request Header Fields Too Large
Headers too large
451
Unavailable For Legal Reasons
Blocked for legal reasons

5xx 5xx 서버 에러

500
Internal Server Error
Generic server error
501
Not Implemented
Server does not support functionality
502
Bad Gateway
Invalid response from upstream server
503
Service Unavailable
Server not ready, often overloaded
504
Gateway Timeout
Gateway did not get response in time
505
HTTP Version Not Supported
HTTP version not supported
506
Variant Also Negotiates
Content negotiation error
507
Insufficient Storage
Server unable to store (WebDAV)
508
Loop Detected
Infinite loop detected (WebDAV)
510
Not Extended
Further extensions required
511
Network Authentication Required
Network authentication needed
최종 수정:

도구 소개

HTTP 상태 코드 검색 레퍼런스는 표준 응답 코드 전체를 1xx 정보, 2xx 성공, 3xx 리다이렉션, 4xx 클라이언트 오류, 5xx 서버 오류로 분류해 보여줍니다. 각 항목에 정식 이름과 짧은 설명이 함께 있어 "422가 정확히 무슨 뜻이지?", "401과 403 중 무엇을 줘야 하지?" 같은 질문을 에디터 옆에서 바로 해결할 수 있습니다.

사용 방법

  1. 코드(404), 이름 일부(gateway), 키워드(auth)로 검색합니다.
  2. 분류별로 묶인 결과 목록을 둘러봅니다.
  3. 각 코드의 정식 이름과 한 줄 설명을 확인합니다.
  4. 색상으로 4xx(클라이언트 오류)와 5xx(서버 오류)를 빠르게 구분합니다.
  5. API 설계, 로그 분석, 에러 처리 코드에 참고용으로 활용합니다.

주요 사용 사례

  • 새로 만드는 REST API 엔드포인트에 적절한 상태 코드 선택
  • 서버 로그에서 본 특이 코드(예: 418, 451)의 의미 확인
  • 인증 흐름에서 401 vs 403 중 무엇을 줄지 결정
  • OpenAPI/Swagger 명세에 예상 에러 응답 문서화
  • 장애 시 CDN이 503과 504 중 무엇을 반환했는지 의미 파악
  • 일관된 시맨틱으로 HTTP 에러를 사용자용 메시지에 매핑

자주 묻는 질문

Q. 401과 403 중 무엇을 써야 하나요?

A. 401은 "인증되지 않음, 자격 증명 필요", 403은 "인증되었지만 권한 없음"입니다. 세션이 없으면 401, 로그인은 됐지만 권한이 없으면 403을 보냅니다.

Q. 422와 400은 같은가요?

A. 둘 다 4xx지만 400은 요청 자체가 잘못된 경우(JSON 파싱 실패, 헤더 누락), 422는 요청 형식은 맞지만 의미가 잘못된 경우(검증 실패)에 사용합니다.

Q. POST 성공 시 항상 200을 써야 하나요?

A. 리소스를 새로 생성하면 201 Created, 본문 없이 성공이면 204 No Content가 더 정확합니다. 표현(body)을 반환할 때만 200이 맞습니다.

Q. 레이트 리밋에서 429는 무엇을 의미하나요?

A. 429 Too Many Requests는 클라이언트에게 속도를 늦추라는 신호입니다. Retry-After 헤더를 함께 보내 재시도 시점을 알려주세요.