Scaling an IoT deployment? Join our webinar on May 28th where we dive into real-world scaling pain points and how to overcome them.

Blues Developers
What’s New
Resources
Blog
Technical articles for developers
Newsletter
The monthly Blues developer newsletter
Terminal
Connect to a Notecard in your browser
Developer Certification
Get certified on wireless connectivity with Blues
Webinars
Listing of Blues technical webinars
Blues.comNotehub.io
Shop
Docs
Button IconHelp
Notehub StatusVisit our Forum
Button IconSign In
Sign In
Sign In
Docs Home
What’s New
Resources
Blog
Technical articles for developers
Newsletter
The monthly Blues developer newsletter
Terminal
Connect to a Notecard in your browser
Developer Certification
Get certified on wireless connectivity with Blues
Webinars
Listing of Blues technical webinars
Blues.comNotehub.io
Shop
Docs
Notecard
Notecard API Reference
Notecard Guides
Notecard Firmware Releases
Notecard Walkthrough
Overview
Notecard Product Family
Notecard Requests & Responses
JSON Fundamentals
How the Notecard works with JSON
Notecard Interfaces
Essential Requests
Time & Location Requests
Inbound Requests & Shared Data
Web Transactions
Low Power Design
Low Bandwidth Design
Working with the Notecard AUX Pins
Updating Notecard Firmware
Advanced Notecard Configuration
Notecard Error and Status Codes
Notecard Certifications
homechevron_rightDocschevron_rightNotecardchevron_rightNotecard Walkthroughchevron_rightJSON Fundamentals

JSON Fundamentals

JavaScript Object Notation, or JSON, is a lightweight format for storing and transporting data of most any kind. It contains "fields" of your own choosing to convey strings, numbers, boolean values, other JSON objects, and arrays of values:

{
 "temp": 34.5,
 "skies": "cloudy",
 "windy": true
}

You can learn more about using JSON and its syntax in this online tutorial .

How the Notecard works with JSON

As you work with the Notecard API, there are a few behaviors and caveats to keep in mind:

  • If using Notefile Templates and a structure field is "" (string), 0 (int), 0.0 (float), or false (bool) then that field will be omitted from all JSON requests and will be omitted from JSON responses. In the case of responses, the absence of an expected field should be interpreted as 0 or empty.

  • Representation of whole numbers will appear in JSON without a decimal point.

  • Integers greater than 2^31 and less than -2^31, while generally supported, are technically "Undefined Behavior" by the JSON specification and thus may be converted into floating point numbers by some implementations.

  • Sending JSON from one part of the software or service to another, and getting that JSON back from the software or service, does not guarantee the order of fields or the presence of any whitespace.

  • Although tabs, CR, and LF characters are technically allowable whitespace in JSON, they are not allowed in Notecard requests or bodies and will never be placed within Notecard responses. The Notecard uses the ndjson technique of new line-delimited JSON.

  • The Notecard JSON libraries do support UTF-8, but there may be language representation limitations due to the constraints of JSON within embedded systems. Multi-byte characters are not supported, but if multi-byte characters are required, you must use a binary transfer mechanism or a different JSON parser.

Notecard Requests & Responses Notecard Interfaces
Can we improve this page? Send us feedback
© 2025 Blues Inc.
© 2025 Blues Inc.
TermsPrivacy
Notecard Disconnected
Having trouble connecting?

Try changing your USB cable as some cables do not support transferring data. If that does not solve your problem, contact us at support@blues.com and we will get you set up with another tool to communicate with the Notecard.

Advanced Usage

The help command gives more info.

Connect a Notecard
Use USB to connect and start issuing requests from the browser.
Try Notecard Simulator
Experiment with Notecard's latest firmware on a Simulator assigned to your free Notehub account.

Don't have an account? Sign up