CTP

Content-Type Parser (MIME, Charset, Boundary)

Parse Content-Type headers and extract MIME parameters

API & HTTP
πŸ”’ 100% client-side β€” your data never leaves this page
Maintained by Evanβ€’Updated: September 29, 2026
Options
Content-Type Input

Paste one Content-Type value or header line per line to inspect its type, parameters, and syntax. The request body is not inspected.

Output
Parsed result will appear here
Processed locally in your browser
Page reading mode

The full guide also includes pitfalls, worked examples, snippets, FAQs, and related tools for checking results or troubleshooting.

About this tool

Inspect one Content-Type value or Content-Type: header line per input line. Results show the type, subtype, parameter values, and normalized text. Quoted semicolons and escaped quotes are preserved; malformed parameters and duplicate names are reported instead of silently discarded. Multipart declarations receive boundary warnings. This is local header inspection: it does not fetch a URL, read the body, verify a registered media type, or test server acceptance.

Failure Clinic (Common Pitfalls)

Normalization is not a character-encoding conversion

Cause: Lowercasing media types and parameter names or removing unnecessary quotes changes header formatting, not payload bytes.

Fix: Compare charset with the actual text encoding. For HTTP 415, also check the endpoint’s accepted media types and the submitted body.

Scenario Recipes

01

Compare two multipart declarations

Goal: See the difference between a missing boundary and a declared boundary.

  1. Enter multipart/form-data on the first line.
  2. Enter multipart/form-data; boundary=example-boundary on the second line.
  3. Parse both lines. The first keeps its parsed media type and shows a missing-boundary warning.

Result: The second declares a syntactically usable boundary. You must still compare it with the delimiters in the actual body; this parser does not receive that body.

Production Snippets

Quoted parameters keep their content

text

Input: Content-Type: Text/Plain; note="a;b"; charset="UTF-8"
Normalized: text/plain; note="a;b"; charset=UTF-8
Parameters: note β†’ a;b, charset β†’ UTF-8

Suggested Workflow

Frequently Asked Questions

Can I paste an entire HTTP header block?

Use one Content-Type value or Content-Type: line per line here. Other headers such as Accept or Content-Disposition belong in HTTP Headers Parser.

What happens to invalid or duplicate parameters?

The line is reported as failed with a reason. A missing multipart boundary is a warning on an otherwise parsed media type; a declared boundary is not compared with a request body.

What does normalization change?

It lowercases type, subtype, and parameter names, standardizes separators, and retains required quoting. Parameter values keep their case and content. It does not convert a charset or certify a request.

Keep browsing