Unfortunately, if all your JSON is on a single line, this tells you that there is a problem on line 1.
To make this message more usable, it would make sense to not only store the line number, though also the column number, so we can check which character is incorrectly escaped. In an ideal world, the exception would even contain that character.
The error handling of parsing JSON is not expressive enough in order to solve related problems.
Looking at https://www.boost.org/doc/libs/1_59_0/boost/property_tree/detail/json_parser/parser.hpp void parse_escape(), we fail the function with parse_error("invalid escape sequence");
Unfortunately, if all your JSON is on a single line, this tells you that there is a problem on line 1. To make this message more usable, it would make sense to not only store the line number, though also the column number, so we can check which character is incorrectly escaped. In an ideal world, the exception would even contain that character.