I'm trying to use Apex to call some API endpoints to do some validation for my company. There are some specific properties of these APIs that make it a bit tricky:
- The APIs are hosted on self-deployed Kubernetes clusters, and have their own security certificates.
- These endpoints are not public right now and require a proxy to be running to hit them.
For other SDKs that we've validated, we've just had to specify the custom API endpoint and authenticate. Then, we could always do something like disabling SSL verification to get around the security issue.
Salesforce, as far as I can tell, does not allow you to do that. I've followed the instructions here to add the security certificate to my organization and the instructions here to set the certificate in my Apex code.
Beyond that, I've also made sure to add the API endpoint and proxy URL to the remote site settings.
With all that, I'm still getting the following error when trying to make an API call: System.CalloutException: Unable to tunnel through proxy. Proxy returns "HTTP/1.0 403 Forbidden"
Does anyone have any ideas what I might need to try next? I saw some things about whitelisting Salesforce IP addresses, so I'm asking around about that now. Other than that though, I'm at a loss on what to try next.