{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-17T00:36:56.555Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC7469",
  "document": {
    "abstract": "This document defines a new HTTP header that allows web host operators to instruct user agents to remember (\"pin\") the hosts' cryptographic identities over a period of time. During that time, user agents (UAs) will require that the host presents a certificate chain including at least one Subject Public Key Info structure whose fingerprint matches one of the pinned fingerprints for that host. By effectively reducing the number of trusted authorities who can authenticate the domain during the lifetime of the pin, pinning may reduce the incidence of man-in-the-middle attacks due to compromised Certification Authorities.",
    "abstract$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML abstract",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "authors": [
      {
        "name": "Chris Evans"
      },
      {
        "name": "Chris Palmer"
      },
      {
        "name": "Ryan Sleevi"
      }
    ],
    "authors$meta": {
      "confidence": "high",
      "note": "Parsed from Datatracker doc page article:author (profile full names)",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docId": "RFC7469",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docLabel": "IETF RFC 7469",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docNumber": "7469",
    "docNumber$meta": {
      "confidence": "high",
      "note": "Parsed from RFC info page report metadata",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docTitle": "Public Key Pinning Extension for HTTP",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docType": "Standard",
    "docType$meta": {
      "confidence": "high",
      "note": "Mapped from Datatracker std_level or RFC status text",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "doi": "10.17487/RFC7469",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "href": "https://doi.org/10.17487/RFC7469",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "keywords": [
      "PIN"
    ],
    "keywords$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML keywords",
      "originalValue": [
        "Pin"
      ],
      "overridden": true,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-17T00:36:56.555Z",
      "version": "extractDocs.js@commit:e15f05a0bdbb"
    },
    "pages": "28",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "publicationDate": "2015-04-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "references": {
      "bibliographic": [
        "RFC3546",
        "RFC6962",
        "IETF.draft-perrin-tls-tack-02",
        "orphan/RFC7469/h:481e6ac8"
      ],
      "bibliographic$meta": {
        "confidence": "medium",
        "flag": "MIXED_REF_LAYOUT_RISK anchored=20 proseBlocks=28 skippedAnchorBlocks=23",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "reviewRequired": true,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.856Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "normative": [
        "RFC2119",
        "RFC3339",
        "RFC3986",
        "RFC4648",
        "RFC5234",
        "RFC5246",
        "RFC5280",
        "RFC6234",
        "RFC6265",
        "RFC6797",
        "RFC7159",
        "RFC7230",
        "RFC7234",
        "RFC7468",
        "W3C.html401.19991224",
        "orphan/RFC7469/h:83c327b2"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.856Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc7469/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
      "updated": "2026-10-16T20:46:18.856Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.856Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "errataExist": true,
      "errataExist$meta": {
        "confidence": "high",
        "note": "Derived from presence of errata links on RFC/Datatracker pages",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.856Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "errataUrl": [
        "https://www.rfc-editor.org/errata/rfc7469",
        "https://www.rfc-editor.org/errata_search.php?rfc=7469",
        "https://www.rfc-editor.org/rfc/inline-errata/rfc7469.html"
      ],
      "errataUrl$meta": {
        "confidence": "high",
        "note": "Parsed from errata links on RFC/Datatracker pages",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.857Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.856Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "statusNote": "Proposed Standard",
      "statusNote$meta": {
        "confidence": "high",
        "note": "Mapped from Datatracker doc.json std_level",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.856Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc7469/",
        "updated": "2026-10-16T20:46:18.856Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      }
    }
  }
}