503 The Service is temporarily unavailable

Hi,

I am getting a 503 error "The Service is temporarily unavailable" when trying to call this url: https://corylprice-eval-test.apigee.net/api/connect/providers?apikey=DtPOtuH2ajTEsVcubAPWgOzUzIpeYgz...

I get the error after the Target Request flow has started.

Any help would be much appreciated.

Thanks

Solved Solved
0 1 909
1 ACCEPTED SOLUTION

When trying that URI, I get that error, too.

If I had to guess, I'd say the backend system is returning the 503, and Apigee Edge is relaying that response to the client.

But WHY GUESS!?!?!

Just check the Trace for that API. Here's a video that describes how.

It will show you the source of the 503.

At that point you can figure out how to further proceed. It's possible the Trace will show you that Apigee Edge is sending a request to your backend that the backend (upstream?) system does not expect, or does not handle well, and THAT is why you are seeing a 503.

If that's the case, then you can use more policies in Apigee Edge to shape the outbound message into the required form.

It seems more likely that the backend is unreachable by Apigee Edge. Why would it be unreachable? For example, I have seen people with a local server running on their workstation or desktop, and they have an IP address which is shown by ipconfig or ifconfig. And they use THAT ip address as the target.

But LAN IP addresses are typically not reachable from the internet. Apigee Edge runs "on the internet" - it's in a cloud computer somewhere, but it uses the public internet to reach upstream systems. If your system is on your LAN, it is likely unreachable by Apigee Edge. To make it "reachable" you will need to, at the very least:

  • configure your router or firewall to accept inbound requests on a specific IP address and forward them to your LAN computer
  • configure the Apigee Edge proxy to use that publicly-accessible IP address as the target

For secure communications you will also want to use HTTPS . That's another topic.

View solution in original post

1 REPLY 1

When trying that URI, I get that error, too.

If I had to guess, I'd say the backend system is returning the 503, and Apigee Edge is relaying that response to the client.

But WHY GUESS!?!?!

Just check the Trace for that API. Here's a video that describes how.

It will show you the source of the 503.

At that point you can figure out how to further proceed. It's possible the Trace will show you that Apigee Edge is sending a request to your backend that the backend (upstream?) system does not expect, or does not handle well, and THAT is why you are seeing a 503.

If that's the case, then you can use more policies in Apigee Edge to shape the outbound message into the required form.

It seems more likely that the backend is unreachable by Apigee Edge. Why would it be unreachable? For example, I have seen people with a local server running on their workstation or desktop, and they have an IP address which is shown by ipconfig or ifconfig. And they use THAT ip address as the target.

But LAN IP addresses are typically not reachable from the internet. Apigee Edge runs "on the internet" - it's in a cloud computer somewhere, but it uses the public internet to reach upstream systems. If your system is on your LAN, it is likely unreachable by Apigee Edge. To make it "reachable" you will need to, at the very least:

  • configure your router or firewall to accept inbound requests on a specific IP address and forward them to your LAN computer
  • configure the Apigee Edge proxy to use that publicly-accessible IP address as the target

For secure communications you will also want to use HTTPS . That's another topic.