staticdata.dev
Menu
Datasets About Contact

Media Type Structured Syntax Suffixes

Structured syntax suffixes allow media type subtype names to convey both the specific format and the underlying generic structure. For example, +json indicates a payload that conforms to JSON syntax, while +xml indicates XML. This registry is maintained by IANA under the Expert Review procedure defined in RFC 6838.

v1.0.0 MIT 24 records Updated 2026-10-05 stable Source:  IANA Structured Syntax Suffixes Registry

Quick fetch

Stable URL. CORS-enabled. No auth.

bash
curl https://staticdata.dev/v1/media-type-suffixes.json

Or use as a typed import: import { mediaTypeSuffixes } from "https://staticdata.dev/v1/media-type-suffixes.ts"

Formats

  • JSON 6.4 KB

    /v1/media-type-suffixes.json

    Open

    min: 5.0 KB · /v1/media-type-suffixes.min.json

  • CSV 2.8 KB

    /v1/media-type-suffixes.csv

    Open
  • TypeScript 6.6 KB

    /v1/media-type-suffixes.ts

    export const mediaTypeSuffixes

    type MediaTypeSuffix = (typeof mediaTypeSuffixes)[number]

    Open

Schema

Each record in the dataset has the following shape.

Schema
Field Type Description Example
suffix string The structured syntax suffix, including the leading plus sign +json
name string Human-readable name of the underlying format JavaScript Object Notation (JSON)
references string[] List of reference identifiers (RFCs, ITU specs, etc.) ["RFC8259","RFC6839"]
reference string | null URL to the primary RFC or specification https://www.iana.org/go/rfc8259
registrationDate string | null ISO date when the suffix was registered with IANA 2012-11-27
modificationDate string | null ISO date of the most recent modification, if any 2020-10-16

Preview

First 10 records.

Data preview
suffixnamereferenceregistrationDatemodificationDate
+berBasic Encoding Rules (BER) message transfer syntaxhttps://www.iana.org/go/rfc68392012-11-27
+cborConcise Binary Object Representation (CBOR)https://www.iana.org/go/rfc89492013-09-192020-10-16
+cbor-seqCBOR Sequencehttps://www.iana.org/go/rfc87422019-10-10
+coseCBOR Object Signing and Encryption (COSE) objecthttps://www.iana.org/go/rfc90522024-02-12
+csvComma-Separated Values (CSV)https://www.iana.org/go/rfc41802025-07-24
+cwtCBOR Web Token (CWT)https://www.iana.org/go/rfc83922024-11-26
+derDistinguished Encoding Rules (DER) message transfer syntaxhttps://www.iana.org/go/rfc68392012-11-27
+fastinfosetFast Infoset document formathttps://www.iana.org/go/rfc68392012-11-27
+gzipgzip file storage and transfer formathttps://www.iana.org/go/rfc19522018-06-14
+jerASN.1 JSON Encoding Rules2025-09-22

Showing 10 of 24. View full data:  JSON · CSV

Fetch examples

Drop-in snippets in five languages.

curl
curl -sSL https://staticdata.dev/v1/media-type-suffixes.json | jq '.[0]'
JavaScript
import type { MediaTypeSuffix } from "https://staticdata.dev/v1/media-type-suffixes.ts";

const res = await fetch("https://staticdata.dev/v1/media-type-suffixes.min.json");
if (!res.ok) throw new Error(`Fetch failed: ${res.status}`);
const mediaTypeSuffixes: MediaTypeSuffix[] = await res.json();
console.log(mediaTypeSuffixes[0]);
Python
import urllib.request, json

with urllib.request.urlopen("https://staticdata.dev/v1/media-type-suffixes.min.json") as r:
    mediaTypeSuffixes = json.load(r)

print(mediaTypeSuffixes[0])
Go
package main

import (
	"encoding/json"
	"fmt"
	"net/http"
)

func main() {
	resp, err := http.Get("https://staticdata.dev/v1/media-type-suffixes.min.json")
	if err != nil { panic(err) }
	defer resp.Body.Close()

	var data []map[string]any
	if err := json.NewDecoder(resp.Body).Decode(&data); err != nil {
		panic(err)
	}
	fmt.Println(data[0])
}
Rust
use serde_json::Value;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let body = ureq::get("https://staticdata.dev/v1/media-type-suffixes.min.json").call()?.into_string()?;
    let data: Vec<Value> = serde_json::from_str(&body)?;
    println!("{:?}", data.first());
    Ok(())
}

Sources and methodology

This dataset contains all structured syntax suffixes registered with the Internet Assigned Numbers Authority (IANA). These suffixes appear at the end of media type subtype names to indicate that the content conforms to a well-known underlying syntax — for example, application/ld+json uses the +json suffix to signal that the payload is valid JSON.

The data was sourced directly from the IANA Structured Syntax Suffixes registry CSV export at https://www.iana.org/assignments/media-type-structured-suffix/structured-syntax-suffix.csv and contains all 24 suffixes registered as of October 2026. Each record includes the suffix token, the full format name, associated RFC or specification references, and the original registration and modification dates.

Note that the references field preserves all citation identifiers from the IANA source (including ITU and draft IETF references), while the reference field provides a direct URL to the primary RFC where one is available. For suffixes backed only by non-RFC standards (e.g., +tlv, +jer, +uper), the reference field will be null.

Versioning

URLs under /v1/ are stable: field names and types will not change in a way that breaks consumers. Values can be corrected or records added when the upstream source changes; schema-incompatible updates ship under a new version path. See the media-type-suffixes changelog for this dataset's history.

More Web datasets