Error map

Not a valid JSON response WordPress: Updating failed. The response is not a valid JSON response.

WordPress · layer 4, Application & API

Open the full error page →

Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.

Not a valid JSON response — WordPress: Updating failed. The response is not a valid JSON response. (WordPress)Not a valid…403 — HTTP 403 Forbidden (HTTP)403Critical error — WordPress: There Has Been a Critical Error on This Website (WordPress)Critical errorThe REST API encountered an error — Site Health: The REST API encountered an error / Your site could not complete a loopback request (cURL error 28) (WordPress)The REST API encoun…This block contains unexpected or invalid content — WordPress: This block contains unexpected or invalid content. Attempt Block Recovery (WordPress)This block contains…Are you sure you want to do this? — WordPress: Are you sure you want to do this? Please try again. (nonce check failed) (WordPress)Are you sure you wa…The editor has encountered an unexpected error — WordPress block editor: The editor has encountered an unexpected error (Attempt Recovery / Copy Error) (WordPress)The editor has enco…SyntaxError: JSON — SyntaxError: Unexpected token < in JSON at position 0 (JavaScript)SyntaxError: JSONHeaders already sent — Warning: Cannot modify header information - headers already sent (PHP)Headers already sentYou are probably offline — WordPress: Updating failed. You are probably offline. (WordPress)You are probably of…rest_cookie_invalid_nonce — WordPress REST API: {"code":"rest_cookie_invalid_nonce","message":"Cookie check failed"} (403) (WordPress)rest_cookie_invalid…rest_no_route — WordPress REST API: {"code":"rest_no_route","message":"No route was found matching the URL and request method."} (WordPress)rest_no_routerest_forbidden — WordPress REST API: {"code":"rest_forbidden","message":"Sorry, you are not allowed to do that."} (401/403) (WordPress)rest_forbiddenpublickey — Git: Permission denied (publickey). fatal: Could not read from remote repository. (Git)publickeyAccessDenied — AWS S3: AccessDenied (403) when calling GetObject / PutObject (AWS)AccessDeniedEACCES — Linux: Permission denied (Linux)EACCES500 — HTTP 500 Internal Server Error (HTTP)500Allowed memory size exhausted — PHP Fatal error: Allowed memory size of X bytes exhausted (PHP)Allowed memory size…Call to undefined function — PHP Fatal error: Uncaught Error: Call to undefined function (PHP)Call to undefined f…ECONNREFUSED — Error: connect ECONNREFUSED 127.0.0.1:5432 (Node.js)ECONNREFUSED407 — HTTP 407 Proxy Authentication Required (HTTP)407Failed to fetch — TypeError: Failed to fetch / NetworkError when attempting to fetch resource (JavaScript)Failed to fetch404 except homepage — WordPress: 404 Not Found on every page except the homepage (permalinks / .htaccess / Nginx rules) (WordPress)404 except homepage403 Forbidden wp-admin — WordPress: 403 Forbidden on wp-admin, wp-login.php or admin-ajax.php (WordPress)403 Forbidden wp-ad…Another update is currently in progress — WordPress: Another update is currently in progress. (WordPress)Another update is c…Link expired — WordPress: The link you followed has expired (WordPress)Link expiredSecurityException: Permission Denial — java.lang.SecurityException: Permission Denial ... requires android.permission.X (Android)SecurityException: …file type is not permitted — WordPress: Sorry, you are not allowed to upload this file type / Sorry, this file type is not permitted for security reasons (WordPress)file type is not pe…1101 — Cloudflare Error 1101: Worker threw exception (Cloudflare)1101400 — HTTP 400 Bad Request (HTTP)400404 — HTTP 404 Not Found (HTTP)404302 — HTTP 302 Found (Temporary Redirect) (HTTP)302Undefined array key — Warning: Undefined array key / Undefined index (PHP)Undefined array keyCSP violation — Refused to load the script because it violates the following Content Security Policy directive (JavaScript)CSP violationERR_HTTP_HEADERS_SENT — Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client (Node.js)ERR_HTTP_HEADERS_SE…405 — HTTP 405 Method Not Allowed (HTTP)405Whitelabel Error Page — Whitelabel Error Page — This application has no explicit mapping for /error (Java)Whitelabel Error Pa…path-to-regexp — TypeError: Missing parameter name at 1 (path-to-regexp) (Node.js)path-to-regexp401 — HTTP 401 Unauthorized (HTTP)401Could not load the default credentials — Google Cloud: Error: Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started (Google Cloud / Firebase)Could not load the …Route [login] not defined — Laravel: Symfony\Component\Routing\Exception\RouteNotFoundException: Route [login] not defined (Laravel)Route [login] not d…

Directly related (12)

403HTTP

HTTP 403 Forbidden

The server understood the request but refuses to authorize it — you (or the server process) are not allowed to access this resour…

Critical errorWordPress

WordPress: There Has Been a Critical Error on This Website

A PHP fatal error (usually from a plugin or theme) stopped WordPress; the real error is in the debug log or recovery-mode email.

The REST API encountered an errorWordPress

Site Health: The REST API encountered an error / Your site could not complete a loopback request (cURL error 28)

WordPress couldn’t call itself over HTTP — needed for the block editor, cron, plugin/theme editors and Site Health.

This block contains unexpected or invalid contentWordPress

WordPress: This block contains unexpected or invalid content. Attempt Block Recovery

The saved HTML of a block doesn’t match what the block’s current save function produces — after a plugin update, manual HTML edit…

Are you sure you want to do this?WordPress

WordPress: Are you sure you want to do this? Please try again. (nonce check failed)

A WordPress security nonce didn’t validate — the page was open too long, cached, or a plugin/theme form is broken.

The editor has encountered an unexpected errorWordPress

WordPress block editor: The editor has encountered an unexpected error (Attempt Recovery / Copy Error)

A JavaScript error broke the block editor — usually a plugin/theme block script conflict, cached old scripts, or a browser extens…

SyntaxError: JSONJavaScript

SyntaxError: Unexpected token < in JSON at position 0

`JSON.parse()` / `response.json()` received something that isn’t JSON — very often an HTML error page.

Headers already sentPHP

Warning: Cannot modify header information - headers already sent

You called `header()`, `setcookie()` or `session_start()` after output had already been sent to the browser.

You are probably offlineWordPress

WordPress: Updating failed. You are probably offline.

The block editor’s save request to the REST API failed — network blip, REST API blocked, or the server returned an error/HTML.

rest_cookie_invalid_nonceWordPress

WordPress REST API: {"code":"rest_cookie_invalid_nonce","message":"Cookie check failed"} (403)

A cookie-authenticated REST request carried a missing or stale X-WP-Nonce — common with cached pages or after re-login.

rest_no_routeWordPress

WordPress REST API: {"code":"rest_no_route","message":"No route was found matching the URL and request method."}

The REST endpoint doesn’t exist for that URL and HTTP method — wrong namespace/route, plugin not active, or route registered too…

rest_forbiddenWordPress

WordPress REST API: {"code":"rest_forbidden","message":"Sorry, you are not allowed to do that."} (401/403)

The REST request isn’t authenticated or the user lacks the capability required by the route’s permission_callback.

Two steps away (28)

publickeyGit

Git: Permission denied (publickey). fatal: Could not read from remote repository.

SSH authentication to GitHub/GitLab/Bitbucket failed — no key, wrong key, or the key isn’t added to your account.

AccessDeniedAWS

AWS S3: AccessDenied (403) when calling GetObject / PutObject

An IAM policy, bucket policy, ACL/ownership setting, Block Public Access or KMS key policy denied the S3 request.

EACCESLinux

Linux: Permission denied

Your user (or the service user) lacks read/write/execute permission on a file, directory or one of its parents.

500HTTP

HTTP 500 Internal Server Error

The server hit an unexpected condition — usually an unhandled exception or misconfiguration in the application.

Allowed memory size exhaustedPHP

PHP Fatal error: Allowed memory size of X bytes exhausted

The script tried to use more memory than PHP’s `memory_limit` allows.

Call to undefined functionPHP

PHP Fatal error: Uncaught Error: Call to undefined function

PHP can’t find the function you called — usually a missing extension, missing include, or namespace issue.

ECONNREFUSEDNode.js

Error: connect ECONNREFUSED 127.0.0.1:5432

Nothing is listening at that host:port — the target service is down or you’re connecting to the wrong address.

407HTTP

HTTP 407 Proxy Authentication Required

A proxy between you and the server requires credentials before it will forward your request.

Failed to fetchJavaScript

TypeError: Failed to fetch / NetworkError when attempting to fetch resource

The browser couldn’t complete the request at the network level — CORS, DNS, offline, blocked mixed content, or the server refused…

404 except homepageWordPress

WordPress: 404 Not Found on every page except the homepage (permalinks / .htaccess / Nginx rules)

Pretty permalinks aren’t being routed to index.php — .htaccess is missing/ignored (Apache) or Nginx lacks try_files.

403 Forbidden wp-adminWordPress

WordPress: 403 Forbidden on wp-admin, wp-login.php or admin-ajax.php

The server or a security layer refused access to WordPress admin URLs — file permissions, a security plugin/WAF rule, ModSecurity…

Another update is currently in progressWordPress

WordPress: Another update is currently in progress.

WordPress thinks an update is running because the core_updater.lock option exists — usually left behind by a failed/interrupted u…

Link expiredWordPress

WordPress: The link you followed has expired

Usually an upload (theme, plugin, media) larger than PHP’s upload/post limits — WordPress receives an empty request and shows thi…

SecurityException: Permission DenialAndroid

java.lang.SecurityException: Permission Denial ... requires android.permission.X

The app called an API that needs a permission it hasn’t declared or the user hasn’t granted at runtime.

file type is not permittedWordPress

WordPress: Sorry, you are not allowed to upload this file type / Sorry, this file type is not permitted for security reasons

WordPress blocked the upload because the file extension/MIME type isn’t in its allowed list (SVG, JSON, WEBP on old versions, fon…

1101Cloudflare

Cloudflare Error 1101: Worker threw exception

The Cloudflare Worker serving this route threw an uncaught JavaScript exception.

400HTTP

HTTP 400 Bad Request

The server could not understand the request because its syntax, headers or body are malformed or invalid.

404HTTP

HTTP 404 Not Found

The server can’t find anything at the requested URL.

302HTTP

HTTP 302 Found (Temporary Redirect)

The resource is temporarily at another URL; clients should keep using the original URL for future requests.

Undefined array keyPHP

Warning: Undefined array key / Undefined index

Your code reads an array key that doesn’t exist — common with `$_GET`, `$_POST` and decoded JSON.

CSP violationJavaScript

Refused to load the script because it violates the following Content Security Policy directive

The page’s Content-Security-Policy doesn’t allow that script, style, image or connection source.

ERR_HTTP_HEADERS_SENTNode.js

Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client

An Express/Node handler tried to send a second response (or set headers) after one was already sent.

405HTTP

HTTP 405 Method Not Allowed

The URL exists, but it doesn’t accept the HTTP method you used (e.g. POST to a GET-only route).

Whitelabel Error PageJava

Whitelabel Error Page — This application has no explicit mapping for /error

Spring Boot’s default error page — the request hit no controller mapping (404) or a controller threw (500).

path-to-regexpNode.js

TypeError: Missing parameter name at 1 (path-to-regexp)

An Express 5 (path-to-regexp v8) route uses old wildcard syntax like '*' or '/:id?'.

401HTTP

HTTP 401 Unauthorized

The request has no valid authentication credentials — you need to log in or send a valid token.

Could not load the default credentialsGoogle Cloud / Firebase

Google Cloud: Error: Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started

The Google client library found no Application Default Credentials (ADC) on this machine or environment.

Route [login] not definedLaravel

Laravel: Symfony\Component\Routing\Exception\RouteNotFoundException: Route [login] not defined

Code called route('name') for a route name that doesn’t exist — very often route('login') from the auth middleware in API-only ap…