Information on HTTP error 503 when accessing a web service

Products Affected: Pitney Bowes Software Solutions products with Web Services
Product Feature: Web Services/EOLS
HTTP Error 503 is defined by the HTTP protocol as Status code 503 means Service Unavailable. The server will still be responsive with 503, but full functionality will not be possible. (Page 70 of the protocol documentation describes this error, which can be found in this link)

There are a large number of causes for this type of error, but the most common are:
  • Server hosting Web Service is overloaded 
  • Server hosting Web Service is down for maintenance, etc.
Typically this is a temporary state and service will soon resume as normal.

The Web server (running the Web site) is currently unable to handle the HTTP request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be resolved shortly. Some servers in this state may also simply refuse the socket connection, in which case a different error may be generated because the socket creation timed out.

Fixing 503 errors

The Web server is effectively 'closed for repair'. It is still functioning minimally because it can at least respond with a 503 status code, but full service is impossible i.e. the Web site is simply unavailable. There are a myriad of possible reasons for this, but generally it is because of some human intervention by the operators of the web server. Users can typically expect that someone is working on the problem, and normal service will resume as soon as possible.

If this issue does not resolve after a short period, manual intervention is likely required from the web service/web server host.

Each client (e.g. the Web browser) goes through the following cycle when it communicates with the server:
  1. Obtain an IP address from the IP name of the site (the site URL without the leading 'http: //'). This lookup (conversion of IP name to IP address) is provided by domain name servers (DNS).
  2. Open an IP socket connection to that IP address.
  3. Write an HTTP data stream through that socket.
  4. Receive an HTTP data stream back from Web server in response. This data stream contains status codes whose values are determined by the HTTP protocol. Parse this data stream for status codes and other useful information.
The error referenced in this document occurs in step 4 above, when the client receives an HTTP status code that it recognizes as '503'.
UPDATED:  July 3, 2019