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

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.

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)The REST AP…ERR_CONNECTION_TIMED_OUT — ERR_CONNECTION_TIMED_OUT: This site can’t be reached — example.com took too long to respond (Browser)ERR_CONNECTION_TIME…Failed to fetch — TypeError: Failed to fetch / NetworkError when attempting to fetch resource (JavaScript)Failed to fetchcURL error 28 — cURL error 28: Operation timed out after 30001 milliseconds with 0 bytes received (PHP)cURL error 28ConnectException — java.net.ConnectException: Connection refused (Java)ConnectExceptionSocketException reset — java.net.SocketException: Connection reset (Java)SocketException res…2003 — MySQL ERROR 2003 (HY000): Can't connect to MySQL server on 'host:3306' (111) (MySQL)2003Client.Timeout exceeded — Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded) (Docker)Client.Timeout exce…ERR_CONNECTION_RESET — ERR_CONNECTION_RESET: This site can’t be reached — The connection was reset (Browser)ERR_CONNECTION_RESETENOTFOUND — Error: getaddrinfo ENOTFOUND host / Name or service not known (API)ENOTFOUNDConnectionRefusedError — ConnectionRefusedError: [Errno 111] Connection refused (Python)ConnectionRefusedEr…ECONNRESET — Error: socket hang up / read ECONNRESET (API)ECONNRESETCould not resolve host — fatal: unable to access 'https://github.com/…': Could not resolve host: github.com (Git)Could not resolve h…ECONNREFUSED — Error: connect ECONNREFUSED 127.0.0.1:5432 (Node.js)ECONNREFUSED407 — HTTP 407 Proxy Authentication Required (HTTP)407408 — HTTP 408 Request Timeout (HTTP)408SyntaxError: JSON — SyntaxError: Unexpected token < in JSON at position 0 (JavaScript)SyntaxError: JSONCORS — CORS Error: No 'Access-Control-Allow-Origin' header is present (API)CORSCERTIFICATE_VERIFY_FAILED — SSL: CERTIFICATE_VERIFY_FAILED / unable to get local issuer certificate (API)CERTIFICATE_VERIFY_…499 — HTTP 499 Client Closed Request (Nginx) (HTTP)499Maximum execution time — PHP Fatal error: Maximum execution time of 30 seconds exceeded (PHP)Maximum execution t…522 — Cloudflare Error 522: Connection Timed Out (Cloudflare)522521 — Cloudflare Error 521: Web Server Is Down (Cloudflare)521ETIMEDOUT — API Request Timed Out (ETIMEDOUT / ReadTimeout / timeout of 30000ms exceeded) (API)ETIMEDOUTUnknownHostException — java.net.UnknownHostException: api.example.com (Java)UnknownHostExceptionbody already used — TypeError: Failed to execute 'json' on 'Response': body stream already read (JavaScript)body already usedfetch failed — TypeError: fetch failed (cause: ConnectTimeoutError / ECONNREFUSED / UND_ERR) (Node.js)fetch failedcURL error 6 — cURL error 6: Could not resolve host: api.example.com (PHP)cURL error 62002 — MySQL ERROR 2002 (HY000): Can't connect to local MySQL server through socket (MySQL)20022006 — MySQL ERROR 2006 (HY000): MySQL server has gone away (MySQL)20061040 — MySQL ERROR 1040 (08004): Too many connections (MySQL)1040RPC failed — error: RPC failed; HTTP 400 curl 22 / curl 92 HTTP/2 stream was not closed cleanly — the remote end hung up unexpectedly (Git)RPC failedearly EOF — fatal: early EOF — fatal: index-pack failed (Git)early EOFERR_BLOCKED_BY_CLIENT — net::ERR_BLOCKED_BY_CLIENT (JavaScript)ERR_BLOCKED_BY_CLIE…port 22 timed out — ssh: connect to host github.com port 22: Connection timed out (Git)port 22 timed outkex_exchange_identification — kex_exchange_identification: Connection closed by remote host (Git)kex_exchange_identi…QuotaExceededError — QuotaExceededError: Failed to execute 'setItem' on 'Storage': Setting the value exceeded the quota (JavaScript)QuotaExceededErrordaemon — Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? (Docker)daemonERR_NAME_NOT_RESOLVED — net::ERR_NAME_NOT_RESOLVED (This site can't be reached — server IP address could not be found) (JavaScript)ERR_NAME_NOT_RESOLV…WebSocket failed — WebSocket connection to 'wss://x' failed (JavaScript)WebSocket failedTypeError arguments — TypeError: f() takes 1 positional argument but 2 were given (Python)TypeError argumentsTypeError missing arg — TypeError: f() missing 1 required positional argument: 'x' (Python)TypeError missing a…IndexError — IndexError: list index out of range (Python)IndexError502 — HTTP 502 Bad Gateway (HTTP)502EMFILE — Too many open files (EMFILE) (Linux)EMFILEERR_STREAM_PREMATURE_CLOSE — Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close (Node.js)ERR_STREAM_PREMATUR…submodule url — fatal: No url found for submodule path 'x' in .gitmodules (Git)submodule urlENOTFOUND — npm ERR! code ENOTFOUND — request to https://registry.npmjs.org/x failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org (npm)ENOTFOUNDrequests ConnectionError — requests.exceptions.ConnectionError: HTTPSConnectionPool(host=…, port=443): Max retries exceeded with url (Python)requests Connection…

Directly related (12)

ERR_CONNECTION_TIMED_OUTBrowser

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…

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…

cURL error 28PHP

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.

ConnectExceptionJava

java.net.ConnectException: Connection refused

Nothing is listening at the host:port the Java client connected to.

SocketException resetJava

java.net.SocketException: Connection reset

The remote side closed the TCP connection abruptly while Java was reading or writing.

2003MySQL

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.

Client.Timeout exceededDocker

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_RESETBrowser

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.

ENOTFOUNDAPI

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.

ConnectionRefusedErrorPython

ConnectionRefusedError: [Errno 111] Connection refused

Nothing is listening on the host/port Python tried to connect to.

ECONNRESETAPI

Error: socket hang up / read ECONNRESET

The other side closed the TCP connection abruptly while your client was still using it.

Could not resolve hostGit

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)

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.

408HTTP

HTTP 408 Request Timeout

The server closed the connection because the client took too long to send the complete request.

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.

CORSAPI

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…

CERTIFICATE_VERIFY_FAILEDAPI

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.

499HTTP

HTTP 499 Client Closed Request (Nginx)

Nginx-specific code logged when the client disconnected before the server finished responding.

Maximum execution timePHP

PHP Fatal error: Maximum execution time of 30 seconds exceeded

The script ran longer than `max_execution_time` and PHP stopped it.

522Cloudflare

Cloudflare Error 522: Connection Timed Out

Cloudflare’s TCP connection to your origin timed out — the origin didn’t answer at all.

521Cloudflare

Cloudflare Error 521: Web Server Is Down

Cloudflare couldn’t connect to your origin — the connection was refused.

ETIMEDOUTAPI

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.

UnknownHostExceptionJava

java.net.UnknownHostException: api.example.com

DNS resolution failed for the hostname.

body already usedJavaScript

TypeError: Failed to execute 'json' on 'Response': body stream already read

A fetch Response body was consumed twice (e.g. calling .text() then .json()).

fetch failedNode.js

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 6PHP

cURL error 6: Could not resolve host: api.example.com

PHP cURL couldn’t resolve the hostname via DNS.

2002MySQL

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.

2006MySQL

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

1040MySQL

MySQL ERROR 1040 (08004): Too many connections

MySQL reached `max_connections` and refuses new clients.

RPC failedGit

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.

early EOFGit

fatal: early EOF — fatal: index-pack failed

A clone or fetch was cut off mid-transfer.

ERR_BLOCKED_BY_CLIENTJavaScript

net::ERR_BLOCKED_BY_CLIENT

A browser extension (ad blocker, privacy tool) blocked the request.

port 22 timed outGit

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_identificationGit

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.

QuotaExceededErrorJavaScript

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.

daemonDocker

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.

ERR_NAME_NOT_RESOLVEDJavaScript

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 failedJavaScript

WebSocket connection to 'wss://x' failed

The browser couldn’t open (or keep) a WebSocket connection.

TypeError argumentsPython

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 missing argPython

TypeError: f() missing 1 required positional argument: 'x'

A function was called without a required parameter.

IndexErrorPython

IndexError: list index out of range

Code accessed a list position that doesn’t exist.

502HTTP

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.

EMFILELinux

Too many open files (EMFILE)

The process hit its file-descriptor limit — sockets, files and pipes all count.

ERR_STREAM_PREMATURE_CLOSENode.js

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.

submodule urlGit

fatal: No url found for submodule path 'x' in .gitmodules

A submodule entry exists in the index but its URL is missing from .gitmodules.

ENOTFOUNDnpm

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 ConnectionErrorPython

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.