View my basket

WooCommerce Legacy REST API access detected. How to identify and fix.

Important Changes Coming to WooCommerce in June 2024

Prepare yourselves for a significant update as WooCommerce gears up for version 9.0, scheduled for release in June 2024. A noteworthy adjustment is on the horizon: the removal of the Legacy REST API, which has been deprecated since 2016. This decision aligns with ongoing efforts to enhance the WooCommerce experience for both users and developers.

In the upcoming release, the Legacy REST API will be completely phased out, but fear not – a dedicated extension will be provided for those who still require the functionalities associated with this deprecated API. By installing and activating this extension in WooCommerce 9.0, users can maintain the same functionality they’ve grown accustomed to in older versions where the Legacy REST API was enabled.

The WooCommerce Legacy REST API extension is now available

Legacy REST API extension

The important bit

It’s important to note though that legacy webhooks reliant on the Legacy REST API will cease to function in WooCommerce 9.0, unless the new extension is integrated. This strategic move is geared towards streamlining the WooCommerce package and simplifying the understanding of the REST API for users and developers alike.

For those currently utilising the Legacy REST API or legacy webhooks in their WooCommerce installations, it is strongly recommended to install the new extension before upgrading to WooCommerce 9.0. This proactive step will mitigate any potential service disruptions. WooCommerce 8.3 will also issue warning notices for sites with the Legacy REST API enabled, serving as a pre-emptive alert.

WooCommerce legacy REST API access detected
The Legacy REST API warning message

However, it’s crucial to acknowledge that the new extension will not be maintained indefinitely. Consequently, users are encouraged to transition their systems to utilise the current REST API to stay aligned with the evolving landscape of WooCommerce technology.

How do I know if this affects my WooCommerce store?

If you’ve got the Legacy REST API running or suspect you might have it enabled when WooCommerce 9.0 lands, this is relevant to you. Here’s how to know:

1. Check Your Legacy REST API Status:

  • Go to WooCommerce > Settings > Advanced > Legacy API.
  • Spot the “Enable the legacy REST API” box. If it’s checked, you’ve got the Legacy REST API running.
WooCommerce advanced settings tab
WooCommerce advanced settings tab

2. Look Out for Legacy Webhooks:

  • Visit WooCommerce > Settings > Advanced > Webhooks.
  • For WooCommerce 8.3 and above, find the count of “Legacy” webhooks.
  • If you’re on an older version (8.2 or below), check each webhook individually:
    • Click on the webhook name.
    • In the API Version setting, a legacy webhook will say “Legacy API v3 (deprecated).”

What Should You Do?

If you’ve been nodding along whilst reading this, it’s time to take action to avoid any hiccups when WooCommerce 9.0 rolls out:

  1. Install the new extension on your site.
    The availability of the extension will be announced on WooCommerce’s page here.
  2. This ensures that apps using the Legacy REST API won’t miss a beat, and your legacy webhooks stay functional.
WooCommerce webhook settings with API version
A WooCommerce webhook

So how do I transition from Legacy API to REST API?

A good deal of this will come down to the efforts of the developers of the plugins you are using that rely on using APIs for their functionality. They should all be issuing updates to their apps and extensions before the WooCommerce 9.0 rollout which should be enough to have you covered.

However, if you have identified plugins using the Legacy API and you are in any doubt, raise a support ticket and ask their team directly.

Power Plugins newsletter

Want to see more articles like this?

For the latest WordPress guides & special offers...

2 thoughts on “WooCommerce Legacy REST API access detected. How to identify and fix.”

  1. Thanks Echo, you’re right, I propably wasn’t clear enough. However, you can easily find the culprit(s) in your WooCommerce Log files. If you have a Legacy REST API warning message pop up you should see a link inside that to take you straight there (screen grab above in the article). The file name in the log will start with ‘legacy_rest_api_usages’.

    Another method is to take the IP address of the incoming REST API requests and put it into “whois”, or do an “nslookup” to see where it’s coming from?

    Hope that helps?

    Reply

Leave a comment