JSON

JSON (JavaScript Object Notation) is a lightweight data-interchange format.

In Minecraft, JSON format is used to store the following data:


 * Text in written books, signs, custom names and the, , , and  commands.
 * The  file that describes a Java Edition resource pack and data pack.
 * The  file that describes a Bedrock Edition add-on.
 * Files in a resource pack that define models, sound events, and UI.
 * Files in a behavior pack that define entity behaviors.
 * Advancements and statistics (as )
 * The profile data for the launcher (as )
 * Information about downloaded versions (as )
 * Files in a data pack that define advancements, loot tables, tags, dimensions, dimension types and predicates.

Syntax
A JSON file must always contain opening and closing curly brackets, opening and closing square brackets, a boolean, a quoted string or a number.

All elements have names, except in arrays. Element names in a JSON file must be contained inside quotes. To define a value, a colon is used after the name, followed by a value.

All elements except for the last element in an array or object should have a comma after their value.

Data types
There are 5 different data types in regular JSON: string, number, object, array, and boolean.

String
A string is defined by single or double quotes and can contain any combination of characters or spaces. Some special characters need to escape.

Number
A number is defined by entering in any number.

Object
Also referred to as a compound. An object is defined by opening and closing curly brackets and can contain any combination of any data types. Each contained value needs to have a name that is unique within the object. The required curly brackets at the beginning and end of a file make an object.

Array
Arrays are defined by opening and closing square brackets and can, again, contain any data types.

Boolean
A boolean can be either true or false.