Same problem. Mailchimp says: API Request Error CURL error :: Could not resolve host: .api.mailchimp.com on 2508 in /plugins/mailchimp-for-woocommerce/includes/api/class-mailchimp-api.php
@stevennorth this one could very well be related to an API gateway block if it’s a shared host as described. You can try a few things first before doing something drastic like getting a new dedicated IP address for this site. Please check out our wiki to see a few of the options available for troubleshooting this type of problem.
—-
@alekseiwailabs while the end result seems to be similar, these are 2 different issues. Your problem seems like there’s a caching problem where your “data center” isn’t being identified which would indicate that you might possibly need to clear any object caching you might have on your server. Were you able to log into Mailchimp’s authentication flow and set up your store properly, or did this just stop working all the sudden?
We’ll be happy to assist any way we can.
Thanks @ryanhungate
The wiki got Mailchimp for WooCommerce (MCFW) working using the server IP address in the wp-config, and is now syncing. Although, fluentforms is still being blocked from using the Mailchimp API. Given that the MCFW is working with that wp-config code, is this highlighting that the Cloudflare IP address is the having the issue?
I’ve also written to support for Fluentforms asking if they have a similar wp-config code to make fluentforms work, just as the MCFW code (if it is possible).
@stevennorth glad to see you were able to use that wiki to solve the problem!
Yes that does highlight the problem being related to the IP address, but this is actually a very common problem while using a shared host. The way PHP works while making a CURL request typically just grabs the first IP address in the network on that machine and uses that as a default. I think in this case there’s a bad actor somewhere on that shared host which is being flagged at the API gateway level which is out of your control to fix ( shared hosting is like this )
In your case, you have a specific IP for your domain which resolves as expected on that server, but your server’s PHP config doesn’t automatically know to use it unless you specify it in the CURL options before making a request. This is why we have that IP config for that purpose.
The other plugin will have to do the same, but we don’t have any sort of control over how that plugin code works at all, and hopefully that gives them a clue as to how to resolve the problem.