HTTP Status 415 - Unsupported Media Type

Der HTTP-Status-Code 415 Unsupported Media Type signalisiert, dass der Server den Content-Type des Request Body nicht unterstützt. Resource kann dieses Format nicht verarbeiten. Client muss Request in unterstütztem Media Type senden.

Typ

Response-Status-Code

Syntax

Der Status Code wird zurückgegeben bei nicht unterstütztem Content-Type.

http
HTTP/1.1 415 Unsupported Media Type

Direktiven

Der 415 Unsupported Media Type Status Code wird für Content-Type Mismatches verwendet.

Content-Type Validation
Server prüft Content-Type Header von Request Body. Falls Media Type nicht unterstützt wird (z.B. XML sent, aber nur JSON akzeptiert), returned Server 415.
Supported Formats
Response sollte akzeptierte Media Types auflisten. Ermöglicht Client, Request mit korrektem Content-Type zu wiederholen.
Encoding Issues
Kann auch für Content-Encoding Probleme verwendet werden (z.B. unsupported Compression-Format), obwohl primär für Media Type gedacht.

Beispiele

Nachfolgend finden Sie praktische Anwendungsbeispiele für Status 415.

Beispiel 1 XML Not Supported

http
POST /api/users HTTP/1.1
Host: api.example.com
Content-Type: application/xml

<user><name>Alice</name></user>

HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json

{
  "error": "unsupported_media_type",
  "message": "Server does not support application/xml",
  "received_type": "application/xml",
  "supported_types": ["application/json", "application/x-www-form-urlencoded"]
}

Beispiel 2 Missing Content-Type

http
POST /api/data HTTP/1.1
Host: api.example.com

{"key": "value"}

HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json

{
  "error": "missing_content_type",
  "message": "Content-Type header required for POST requests",
  "expected_types": ["application/json"]
}

Beispiel 3 Invalid JSON Variant

http
POST /api/resources HTTP/1.1
Host: api.example.com
Content-Type: application/vnd.api+json; version=1.0

HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json

{
  "error": "unsupported_version",
  "message": "API version 1.0 not supported",
  "supported_media_types": ["application/json", "application/vnd.api+json"]
}

Media Type Validation Flow

415 Unsupported Media Type bei Content-Type Mismatch

Vorteile für die Systemarchitektur

  • API Contract Enforcement: Server kann explizit unterstützte Formate definieren. Verhindert, dass unsupported Content-Types Backend erreichen und Parsing-Errors verursachen.
  • Clear Format Expectations: Client erfährt, welche Media Types akzeptiert werden. Reduziert Trial-and-Error bei API-Integration.
  • Security: Blockiert potentiell malicious Content in unexpected Formats. Parser-Vulnerabilities in XML/etc. werden vermieden wenn nur JSON akzeptiert wird.

Spezifikation

RFC 9110, Section 15.5.16 – HTTP Semantics https://www.rfc-editor.org/rfc/rfc9110.html#name-415-unsupported-media-type

Weitere Spezifikationen

Content-Type Header, Accept Header