The Assistant may not work properly with ad-blockers. Consider white-listing arduinojson.org

[[ step.label ]]

Step [[ currentStep.number ]]: [[ currentStep.label ]]

This is the Assistant for ArduinoJson 6.17.3. Make sure the same version is installed on your computer.

Examples: OpenWeatherMap, Reddit

Output

Input

[[ inputError ]]
Input length: [[ inputJson.length ]] Prettify

Filter

[[ filterError ]]
Prettify

Filtered input

This document is deeply nested; don't forget to pass DeserializationOption::NestingLimit([[ nestingLevel ]]).

This document contains long long; you should define ARDUINOJSON_USE_LONG_LONG to 1

This document contains double; you should define ARDUINOJSON_USE_DOUBLE to 1

This document contains double-precision floating points values but the selected platform ([[cpuInfo.label]]) doesn't support them (double is the same as float).

Data structures [[ capacity.slots ]] Bytes needed to stores the JSON objects and arrays in memory
Strings [[ capacity.strings ]] Bytes needed to stores the strings in memory
Filter [[ capacity.filter ]] The parser temporarily stores some ignored keys; this is the size of the largest one.
Total (minimum) [[ capacity.minimum ]] Minimum capacity for the JsonDocument.
Total (recommended) [[ capacity.recommended ]] Including some slack in case the strings change, and rounded to a power of two

This is too big to fit in the RAM. See How to deserialize a very large document?

This may not fit in the RAM. Make sure there is enough free space.

See also: How to use external RAM on an ESP32?

Tweaks (advanced users only)
This setting doesn't affect the document size of this platform, so you won't see any change in the table above. Choose float to reduce the document size; choose double if you need the increased precision and range.
This setting doesn't affect the document size of this platform, so you won't see any change in the table above. Choose long to reduce the document size; choose long long if you need the increased range.
In both cases, out-of-range values will be promoted to [[ useDouble ? 'double' : 'float' ]].
JsonDocument stores strings differently depending on their types. It stores const char* by pointer (which takes no extra space) and all other types by copy.
Check this box if you're only adding const char* values.
Same as above but for keys.
Uncheck this box if your program generates keys at runtime.
ArduinoJson detects duplicate strings to store only one copy, but you can tell the Assistant to include all strings.
You should uncheck this box if you used placeholders values (like XXXX) in the box above.
Same as above, but for keys instead of values.
You should check this box unless you know what you're doing.
⚠️ This program assumes you defined ARDUINOJSON_USE_LONG_LONG to [[ +useLongLong ]]
⚠️ This program assumes you defined ARDUINOJSON_USE_DOUBLE to [[ +useDouble ]]