WordPress expects a JSON payload from its REST API. When the server sends HTML, an empty body, or a 403 page, the response fails to parse as JSON. This mismatch stops the editor from saving content and shows an error.
The problem usually stems from server settings, URL mismatches, rewrite rules, or code that outputs warnings before the JSON data.