Disable WP REST API
Does one thing: Completely disables the WordPress REST API for visitors who are not logged into WordPress. No configuration required. Important: This plugin completely disables the WP REST API for visitors who are NOT logged in to WordPress. So not recommended if your site needs the WP REST API for
Does one thing: Completely disables the WordPress REST API for visitors who are not logged into WordPress. No configuration required.
Important: This plugin completely disables the WP REST API for visitors who are NOT logged in to WordPress. So not recommended if your site needs the WP REST API for any non-logged users.
👉 The fast, simple way to prevent abuse of your site’s REST/JSON API 👉 Protects your site’s REST data from all non-logged users and bots 👉 Uses only 4KB of code, so super lightweight, fast, and effective
🛠️ Pro version available! Check out REST Pro Tools »
Features
- Disable REST/JSON for visitors (not logged in)
- Disables REST header in HTTP response for all users
- Disables REST links in HTML head for all users
- 100% plug-and-play, set-it-and-forget solution
How does it work?
This plugin completely disables the WP REST API unless the user is logged into WordPress.
- For logged-in (authenticated) users, WP REST API works normally
- For logged-out (unauthenticated) users, WP REST API is disabled
What happens if logged-out visitor makes a JSON/REST request? They will get only a simple message:
rest_login_required: REST API restricted to authenticated users.
This message may customized via the filter hook, disable_wp_rest_api_error . Check out this post for an example of how to do it.
Pro Version
🛠️ Check out the Pro version, REST Pro Tools , loaded with many awesome features:
- One-click disable all routes
- One-click disable all /users routes
- Disable any specific user routes based on role
- Whitelist any user IDs
- Whitelist any IP addresses
- Customize the REST error message