Formatter Validator Minifier Escape / Unescape JSON ↔ String JSON ↔ YAML JSON → CSV NDJSON / JSON Lines JSON → Types JSON ↔ XML JSON Diff JSON Patch Canonicalize (RFC 8785) Schema Validator Schema Generator JSONPath Tester JWT Decoder JSON Errors Schemas More Tools
JSONTools / JSON errors / Unexpected character (''' (code 39)): was expectin
Jackson ObjectMapper · Java 21.0.12

Unexpected character (''' (code 39)): was expecting double-quote to start field name

This message comes from Jackson ObjectMapper on Java 21.0.12. In this registry it is produced by 2 distinct mistakes. Positions in the real message vary with your input; the causes do not.

What produces this message

Python dict repr passed off as JSON

Input
{'a': 1, 'b': [1, 2]}

Exact message: Unexpected character (''' (code 39)): was expecting double-quote to start field name

Fix: Use `json.dumps()`. If you only have the broken text, `ast.literal_eval()` reads it safely.

Single-quoted strings in JSON

Input
{'a': 1}

Exact message: Unexpected character (''' (code 39)): was expecting double-quote to start field name

Fix: Replace every single quote used as a string delimiter with a double quote. Watch for apostrophes inside the text — those stay as they are.

What other parsers say about the same input

If a colleague reports a different message for what looks like the same file, this is why.

Parser Message for the same inputs
CPython json.loadsExpecting property name enclosed in double quotes: line L column C (char N)
JSON::PPunexpected end of string while parsing JSON string, at character offset N (before "…")
JavaScriptCore JSON.parseJSON Parse error: Single quotes (') are not allowed in JSON
Ruby JSON.parseunexpected token at '…'
SpiderMonkey JSON.parseJSON.parse: expected property name or '}' at line L column C of the JSON data
System.Text.Json Deserialize''' is an invalid start of a property name. Expected a '"'. Path: $ | LineNumber: L | BytePositionInLine: C.
System.Text.Json JsonDocument''' is an invalid start of a property name. Expected a '"'. LineNumber: L | BytePositionInLine: C.
V8 JSON.parseExpected property name or '}' in JSON at position N (line L column C)
encoding/json Unmarshalinvalid character '\'' looking for beginning of object key string
json-bigintBad string
json_decodeSyntax error
orjsonunexpected character, expected a string key: line L column C (char N)
serde_json::from_strkey must be a string at line L column C
ujsonExpected object or value

← All JSON parser errors

Standards this registry is checked against

Only standards bodies and peer-reviewed venues are cited. Error strings on this site are observed by executing each parser; the standards above define what the parser is reacting to.