Error map
The 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 · layer 4, Application & API
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.
Directly related (12)
ERR_CONNECTION_TIMED_OUT: This site can’t be reached — example.com took too long to respond
The browser waited for the server but got no response — the server is down/unreachable, a firewall drops traffic, or DNS points t…
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…
cURL error 28: Operation timed out after 30001 milliseconds with 0 bytes received
A PHP cURL (or Guzzle) request timed out before the remote server answered.
java.net.ConnectException: Connection refused
Nothing is listening at the host:port the Java client connected to.
java.net.SocketException: Connection reset
The remote side closed the TCP connection abruptly while Java was reading or writing.
MySQL ERROR 2003 (HY000): Can't connect to MySQL server on 'host:3306' (111)
The client couldn’t reach MySQL over TCP — server down, wrong host/port, firewall, or MySQL bound to localhost only.
Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded)
Docker couldn’t reach the registry in time — a network, DNS, proxy or firewall problem between your machine and the registry.
ERR_CONNECTION_RESET: This site can’t be reached — The connection was reset
The connection to the website was cut off mid-way — by the server, a firewall/antivirus, a VPN/proxy, or network equipment.
Error: getaddrinfo ENOTFOUND host / Name or service not known
DNS lookup for the hostname failed — the name is wrong, doesn’t exist, or this machine can’t resolve it.
ConnectionRefusedError: [Errno 111] Connection refused
Nothing is listening on the host/port Python tried to connect to.
Error: socket hang up / read ECONNRESET
The other side closed the TCP connection abruptly while your client was still using it.
fatal: unable to access 'https://github.com/…': Could not resolve host: github.com
DNS lookup for the Git host failed from this machine.
Two steps away (36)
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.
HTTP 407 Proxy Authentication Required
A proxy between you and the server requires credentials before it will forward your request.
HTTP 408 Request Timeout
The server closed the connection because the client took too long to send the complete request.
SyntaxError: Unexpected token < in JSON at position 0
`JSON.parse()` / `response.json()` received something that isn’t JSON — very often an HTML error page.
CORS Error: No 'Access-Control-Allow-Origin' header is present
The browser blocked a cross-origin request because the server’s response didn’t include the CORS headers allowing your site’s ori…
SSL: CERTIFICATE_VERIFY_FAILED / unable to get local issuer certificate
The client couldn’t verify the server’s TLS certificate chain, so it refused the HTTPS connection.
HTTP 499 Client Closed Request (Nginx)
Nginx-specific code logged when the client disconnected before the server finished responding.
PHP Fatal error: Maximum execution time of 30 seconds exceeded
The script ran longer than `max_execution_time` and PHP stopped it.
Cloudflare Error 522: Connection Timed Out
Cloudflare’s TCP connection to your origin timed out — the origin didn’t answer at all.
Cloudflare Error 521: Web Server Is Down
Cloudflare couldn’t connect to your origin — the connection was refused.
API Request Timed Out (ETIMEDOUT / ReadTimeout / timeout of 30000ms exceeded)
The client gave up waiting — either for the connection to open or for the response to arrive.
java.net.UnknownHostException: api.example.com
DNS resolution failed for the hostname.
TypeError: Failed to execute 'json' on 'Response': body stream already read
A fetch Response body was consumed twice (e.g. calling .text() then .json()).
TypeError: fetch failed (cause: ConnectTimeoutError / ECONNREFUSED / UND_ERR)
Node’s built-in fetch (undici) couldn’t complete the request; the real reason is in error.cause.
cURL error 6: Could not resolve host: api.example.com
PHP cURL couldn’t resolve the hostname via DNS.
MySQL ERROR 2002 (HY000): Can't connect to local MySQL server through socket
The client couldn’t reach the MySQL server — it isn’t running, or the client is looking for the socket/port in the wrong place.
MySQL ERROR 2006 (HY000): MySQL server has gone away
The connection to MySQL was closed — usually by a timeout or a packet larger than `max_allowed_packet`.
MySQL ERROR 1040 (08004): Too many connections
MySQL reached `max_connections` and refuses new clients.
error: RPC failed; HTTP 400 curl 22 / curl 92 HTTP/2 stream was not closed cleanly — the remote end hung up unexpectedly
A large HTTPS push/clone broke mid-transfer — size limits, proxies or flaky HTTP/2.
fatal: early EOF — fatal: index-pack failed
A clone or fetch was cut off mid-transfer.
net::ERR_BLOCKED_BY_CLIENT
A browser extension (ad blocker, privacy tool) blocked the request.
ssh: connect to host github.com port 22: Connection timed out
Outbound SSH on port 22 is blocked (firewall, corporate or public Wi-Fi).
kex_exchange_identification: Connection closed by remote host
The SSH connection was closed before the handshake — server overload, rate limiting, or a proxy/firewall interfering.
QuotaExceededError: Failed to execute 'setItem' on 'Storage': Setting the value exceeded the quota
localStorage/sessionStorage is full (about 5 MB per origin) or storage is disabled.
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
The docker CLI can’t talk to the Docker engine — it isn’t running, or your user can’t access the socket.
net::ERR_NAME_NOT_RESOLVED (This site can't be reached — server IP address could not be found)
DNS couldn’t resolve the hostname in the browser.
WebSocket connection to 'wss://x' failed
The browser couldn’t open (or keep) a WebSocket connection.
TypeError: f() takes 1 positional argument but 2 were given
A function was called with more positional arguments than it accepts — very often a method missing `self`.
TypeError: f() missing 1 required positional argument: 'x'
A function was called without a required parameter.
IndexError: list index out of range
Code accessed a list position that doesn’t exist.
HTTP 502 Bad Gateway
A proxy or gateway (Nginx, load balancer, CDN) got an invalid response — or no response — from the upstream server behind it.
Too many open files (EMFILE)
The process hit its file-descriptor limit — sockets, files and pipes all count.
Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close
A stream ended or was destroyed before it finished — often a client disconnect or upstream aborting a download.
fatal: No url found for submodule path 'x' in .gitmodules
A submodule entry exists in the index but its URL is missing from .gitmodules.
npm ERR! code ENOTFOUND — request to https://registry.npmjs.org/x failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org
npm couldn’t resolve the registry hostname.
requests.exceptions.ConnectionError: HTTPSConnectionPool(host=…, port=443): Max retries exceeded with url
requests couldn’t connect — the inner error (NewConnectionError, NameResolutionError, SSLError, ConnectTimeout) says why.
Map another error
Popular: 4035004000xC000007BTypeErrorCritical error404NullPointerException