Is the service down?

I’ve been getting the following error with the PHP API since this morning:

production.ERROR: cURL error 28: Failed to connect to api.aspose.cloud port 443 after 129994 ms: Couldn’t connect to server (see libcurl - Error Codes) for https://api.aspose.cloud/v4.0/words/connect/token {“exception”:"[object] (GuzzleHttp\Exception\ConnectException(code: 0): cURL error 28: Failed to connect to api.aspose.cloud port 443 after 129994 ms: Couldn’t connect to server (see libcurl - Error Codes) for https://api.aspose.cloud/v4.0/words/connect/token at /app/laravel/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php:275)

I haven’t updated or changed anything on my production servers.

@FFSPUD

Summary
You are seeing a cURL timeout (error 28) while the Aspose Words Cloud PHP SDK tries to obtain an access token. This usually means the SDK cannot reach api.aspose.cloud over HTTPS from your server.

Why it happens

  • The SDK uses the BaseUrl (host) configured in its settings. If the BaseUrl is missing, mistyped, or points to a non‑default endpoint, the request to the token service will fail.
  • Even with a correct BaseUrl, firewalls, proxy settings, DNS problems, or other network restrictions can block outbound traffic to api.aspose.cloud on port 443, causing the timeout.
  • Because the error occurs before any HTTP response is received, it is not an Aspose server‑side error.

What to do next

  1. Verify the BaseUrl
  • Ensure the SDK is configured to use the default endpoint `
  • If you have overridden the BaseUrl, reset it to the default value.
  1. Test connectivity from the server
curl -v
  • You should see DNS resolution, TLS handshake, and a 401 Unauthorized (or similar) response because no credentials are supplied. If the command also times out, the issue is network‑level.
  1. Check proxy and firewall settings
  • Look for environment variables such as http_proxy, https_proxy, and no_proxy.
  • Confirm that outbound HTTPS traffic to api.aspose.cloud:443 is allowed by any firewall or security appliance.
  1. Validate DNS resolution
nslookup api.aspose.cloud
  • The returned IP addresses should belong to Aspose’s public cloud service and not be overridden by a custom hosts entry.
  1. Review recent infrastructure changes
  • Ask your operations team whether any recent changes (firewall rule updates, SSL‑inspection devices, routing modifications, etc.) could affect outbound connections to Aspose.
  1. Retry after adjustments
  • Once the BaseUrl is correct and the network path is confirmed, run your PHP code again. The SDK should be able to obtain the access token and proceed with the Word‑processing operations.

If the timeout persists after these checks, capture the full curl -v output (including DNS lookup and TLS handshake details) and share it with your network/security team for deeper investigation.

:warning: I could not fully verify this explanation against the retrieved sources. Please double-check the behaviour in your environment and confirm the exact SDK/version.

curl api.aspose.cloud:443 -v
* Host api.aspose.cloud:443 was resolved.
* IPv6: (none)
* IPv4: 74.113.210.20
*   Trying 74.113.210.20:443...
* Connected to api.aspose.cloud (74.113.210.20) port 443
> GET / HTTP/1.1
> Host: api.aspose.cloud:443
> User-Agent: curl/8.5.0
> Accept: */*
> 
* Empty reply from server
* Closing connection
curl: (52) Empty reply from server

nslookup api.aspose.cloud
Server:         10.1.0.2
Address:        10.1.0.2#53

Non-authoritative answer:
api.aspose.cloud        canonical name = cloud.lb.k8s.dynabic.com.
Name:   cloud.lb.k8s.dynabic.com
Address: 74.113.210.20

Are you denying access to Salesforce Cloud IPs?