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 / '}' is invalid within a number, immediately after
System.Text.Json JsonDocument · .NET 8.0.30

'}' is invalid within a number, immediately after a sign character ('+' or '-'). Expected a digit ('0'-'9'). LineNumber: L | BytePositionInLine: C.

This message comes from System.Text.Json JsonDocument on .NET 8.0.30. In this registry it is produced by 1 distinct mistake. Positions in the real message vary with your input; the causes do not.

What produces this message

Bare minus sign where a number was expected

Input
{"a": -}

Exact message: '}' is invalid within a number, immediately after a sign character ('+' or '-'). Expected a digit ('0'-'9'). LineNumber: 0 | BytePositionInLine: 7.

Fix: Emit `null` or `0` when the value is missing, and check your template for an unsubstituted placeholder.

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 value: line L column C (char N)
JSON5JSON5: invalid character '}' at 1:8
JSON::PPmalformed number (no digits after initial minus), at character offset N (before "…")
Jackson ObjectMapperUnexpected character ('}' (code 125)) in numeric value: expected digit (0-9) to follow minus sign, for valid numeric value
JavaScriptCore JSON.parseJSON Parse error: Invalid number
Newtonsoft.Json JsonConvertInput string '-' is not a valid number. Path 'a', line L, position N.
Newtonsoft.Json JsonTextReaderInput string '-' is not a valid number. Path 'a', line L, position N.
Ruby JSON.parseunexpected token at '…'
SpiderMonkey JSON.parseJSON.parse: unexpected non-digit at line L column C of the JSON data
System.Text.Json Deserialize'}' is invalid within a number, immediately after a sign character ('+' or '-'). Expected a digit ('0'-'9'). Path: $ | LineNumber: L | BytePositionInLine: C.
V8 JSON.parseNo number after minus sign in JSON at position N (line L column C)
encoding/json Unmarshalinvalid character '}' in numeric literal
hjsonEnd of input while parsing an object (missing '}') at line L,8
json-bigintBad number
json_decodeSyntax error
orjsonno digit after sign: line L column C (char N)
serde_json::from_strinvalid number at line L column C

← 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.