application/problem+jsonapplication/problem+json은 HTTP API 오류를 기계가 읽을 수 있는 표준 형태로 표현하는 미디어 타입입니다(RFC 9457, 이전 RFC 7807). 자유 형식으로 제각각이던 에러 응답을 통일된 스키마로 만들어 클라이언트가 일관되게 처리하게 합니다.
표준 필드는 type(문제 유형을 식별하는 URI), title(사람이 읽는 요약), status(HTTP 상태코드), detail(이 발생 사례에 대한 설명), instance(문제가 난 특정 리소스 URI)입니다. 이 위에 도메인별 확장 멤버를 자유롭게 추가할 수 있어, 예를 들어 유효성 실패 필드 목록을 담을 수 있습니다. 4xx·5xx 응답의 본문으로 사용하며 `+json` 접미사 덕분에 일반 JSON 파서와 호환됩니다.
예: `{"type":"https://example.com/probs/out-of-credit","title":"You do not have enough credit.","status":403,"detail":"Balance is 30, cost is 50.","instance":"/account/123"}`. type URI를 문서 페이지로 두면 개발자가 클릭해 상세 설명을 볼 수 있습니다. 클라이언트는 status가 아니라 type으로 오류를 프로그램적으로 분기해야 안정적입니다.
e.g. Content-Type: application/problem+json