RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format
In plain English — editorial summary, not part of the RFC
RFC 8259 is the definition of JSON: six structural characters, four literals, strings, numbers, objects and arrays, and nothing else. It fixes the interoperability details that bite in practice — text must be encoded as UTF-8, object member names should be unique, and numbers have no defined precision limit, so large integers are not guaranteed to survive a round trip through every parser.
Original abstract from the RFC
JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data. This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.
Document record
- Document ID
- RFC8259
- Published
- December 2017
- Authors
- T. Bray
- Status
- INTERNET STANDARD
- Stream
- IETF
- Area
- art
- Pages
- 16
- Also known as
- STD90
- Obsoletes:
- RFC 7159
Standards lineage
This document is one revision in a chain of 4 RFCs, each formally replacing the one before it.
- RFC 4627 (2006)
- RFC 7158 (2014)
- RFC 7159 (2014)
- RFC 8259 (2017)
Read the full history of The JavaScript Object Notation (JSON) Data Interchange Format →
Related documents
Ranked automatically by shared keywords, IETF area and stream — not by editorial selection.
- RFC 8262Content-ID Header Field in the Session Initiation Protocol (SIP)Current
October 2017
- RFC 8255Multiple Language Content TypeCurrent
October 2017
- RFC 8254Uniform Resource Name (URN) Namespace Registration TransitionCurrent
October 2017
- RFC 8264PRECIS Framework: Preparation, Enforcement, and Comparison of Internationalized Strings in Application ProtocolsCurrent
October 2017
- RFC 8265Preparation, Enforcement, and Comparison of Internationalized Strings Representing Usernames and PasswordsCurrent
October 2017
- RFC 8266Preparation, Enforcement, and Comparison of Internationalized Strings Representing NicknamesCurrent
October 2017
- RFC 8251Updates to the Opus Audio CodecCurrent
October 2017
- RFC 8286RTP/RTCP Extension for RTP Splicing NotificationCurrent
October 2017
Also filed under
About this page
The document record above — title, authors, date, status, stream, area, relationships, DOI and errata — is imported verbatim from the public RFC Editor index. The “in plain English” section is editorial: written by The metasystema editorial team, not part of the RFC. Where the two differ, the RFC text governs.
Last checked against the RFC Editor index on . RFCs are never revised after publication; changes are issued as new documents.
Data sources · Editorial policy · Report a correction · What is an RFC?