Legacy REST API
-
I got a message from Woo Commerce about ending Legacy REST API.
What is a webhook? I cannot see any in my settings but the Legacy REST API is enbled
The page I need help with: [log in to see the link]
-
Hi @autobooks
I got a message from Woo Commerce about ending Legacy REST API.
Yes, we have decided that the Legacy REST API will be removed from WooCommerce as of version WooCommerce 9.0, scheduled to be released in June 2024. However, we will offer a separate WooCommerce extension that will include all the removed code for sites that still need it.
What is a webhook?
A webhook is a way for an app to provide other applications with real-time information. It delivers data to other applications as it happens, meaning you get data immediately. In WooCommerce, webhooks can be used to perform a vast array of tasks with various triggers available.
I cannot see any in my settings but the Legacy REST API is enbled
If you are using Legacy REST API, then to continue using it, you will need to use an additional plugin, which will be released soon upon removing Legacy REST API from WooCommerce core in June 2024.
Detailed information can be found here: https://developer.woo.com/2023/10/03/the-legacy-rest-api-will-move-to-a-dedicated-extension-in-woocommerce-9-0/
I hope this clarifies your concern. If you have any other questions, feel free to ask.
@shameem can you please clarify how to tell if we need this setting enabled?
I have the checkbox for ‘Enable the legacy REST API’ ticked on my site, but there are no webhooks or API keys in any section.
Can a plugin use the Legacy Rest API without it showing in Woocommerce Settings?
It is totally unclear whether we are actually using this functionality, or if it has been left checked from the default install.
Hello @shaunbowen,
Can a plugin use the Legacy Rest API without it showing in Woocommerce Settings?
If you don’t have any API keys generated in WooCommerce → Settings → Features → Legacy API, then no, you’re not using the Legacy API, otherwise, how will it be authenticated? :?)
There’s a slim chance that one of your plugins relies on a class or function present in the Legacy API files, but this is quite improbable and difficult to confirm.
To ensure certainty, you could consider updating to version 9.0 (once it’s released) on a staging environment before implementing it on your live product site.
In case your hosting provider doesn’t offer a staging solution, you can utilize this plugin: WP Staging
Should you have any further inquiries regarding this change, kindly open a new thread as thread. :?)
Cheers!
If you don’t have any API keys generated in WooCommerce → Settings → Features → Legacy API, then no, you’re not using the Legacy API
I couldn’t find a “Features” tab on the Woocommerce settings page; I think you meant WooCommerce → Settings → Advanced → Legacy API.
Second, while it is a logical conclusion that if one sees a key there, then the website is using the Legacy REST API, it is not obvious to a non-programmer that the absence of any keys means that the Legacy REST API is not in use.
Currently, this page: https://developer.woo.com/2023/10/03/the-legacy-rest-api-will-move-to-a-dedicated-extension-in-woocommerce-9-0/ plainly states
If any of these [conditions above] applies to you, your site will need to have the new extension installed.
and condition number 1 is
You have the Legacy REST API enabled in your WooCommerce install. … The “Enable the legacy REST API” box below being checked means that the Legacy REST API is enabled.”
without mentioning anything about API keys.
I think you can see how a non-programmer would interpret that page to mean “If the Enable the Legacy REST API box is checked, then you need the new extension.”
It would be much clearer (and more accurate) if that page included a statement that is something like “If you do not see any API keys generated in WooCommerce → Settings → Advanced → Legacy API, then you are not using the Legacy API, and when you upgrade to Woocommerce 9.0, you will not have to install the new extension.”
- This reply was modified 11 months, 3 weeks ago by thesinglegourmet. Reason: typos
- This reply was modified 11 months, 3 weeks ago by thesinglegourmet.
@shaunbowen Just wanted to chime and say that I am a web developer and I’m in the same boat.
I have had a client approach me regarding this and it’s completely unclear whether the site is actually using the Legacy API or not. The provided article does not adequately clarify how to determine this.
I checked the page you mentioned (WooCommerce → Settings → Features → Legacy API) and I do not see API keys but there aren’t any empty fields for API keys either. Is this to be expected? Or could it be that your directions were incorrect and we are looking in the wrong screen for these API keys?
If we don’t find any webhooks using the Legacy API can we be confident the site is not using the Legacy API or is it possible the theme or other plugins may still be using it?
Appreciate any insight that anyone is able to provideHey @thesinglegourmet, @kisabelle,
I can see how this may cause some confusion!
I believe the article addressing this change provides accurate, detailed information on how to check if this affects your site, and what actions to take.
Another way to determine if anything is still using the REST API would be to:
- Check your server access logs and see if any external system is accessing URLs containing string
/wc-api/v3/
or/wc-api/v2/
or/wc-api/v1/
- If your server doesn’t store access logs you can use any HTTP/Rest API logging plugin:?https://www.ads-software.com/plugins/search/log+http/?to observe those strings.
Hope this helps!
Thanks for your response. However…
According to the page you linked, if the “Enable the legacy REST API” box is checked, then the new extension is needed.
According to @babylon1999 in this very post: “If you don’t have any API keys generated in WooCommerce → Settings → Features → Legacy API, then no, you’re not using the Legacy API”
So if the “Enable the legacy REST API” box is checked (and the Legacy REST API is enabled), but there are no API keys (and the Legacy REST API is not being used)… is the new extension necessary?
Hello @thesinglegourmet,
According to @babylon1999 in this very post: “If you don’t have any API keys generated in WooCommerce → Settings → Features → Legacy API, then no, you’re not using the Legacy API”
My apologies for any confusion caused, I meant to ask if you’ve generated any authentication keys, which can be located in WooCommerce → Settings → Advanced → REST API.
Link to image: https://d.pr/i/NPQZfGIf you can’t find any keys there despite the Legacy API being active, then chances are, this change doesn’t affect you.
However, as mentioned earlier, one of your other plugins could be inheriting some functionalities from the Legacy API Class/functions, though this possibility is very very slim.
For added peace of mind, I suggest updating to version 9.0 in a staging environment once it’s released before deploying it to your production site.
If you have more questions about this change, please open a new thread from here.Cheers!
Howdy?@autobooks,
We haven’t heard back from you in a while, so I’m going to mark this as resolved – we’ll be here if you need any further help with this.
Cheers!
- The topic ‘Legacy REST API’ is closed to new replies.