=== Custom API For WP === Contributors: cyberlord92 Tags: custom-endpoints, crud, CUSTOM, rest, wp-rest-api Requires at least: 3.0.1 Requires PHP: 5.4 Tested up to: 5.7.2 Stable tag: 2.1.1 License: MIT/Expat License URI: https://docs.miniorange.com/mit-license This plugin allows you to create/register WP custom endpoints/WP REST routes into WordPress to fetch/modify/create/delete(CRUD) data with an easy-to-use graphical interface. == Description == This plugin helps you create/register WP Custom endpoints /Custom REST APIs into WordPress directly by using Graphical User Interface(GUI) to fetch any type of data from user roles, groups to featured images, and any custom data or fields as well that you want. Apart from just fetching data you can POST, PUT, DELETE (Insert, Update, Delete) data with these created Custom endpoint / Custom REST routes. Any type of interaction with data is possible by creating Custom REST API endpoints with a very simple GUI. It means you can easily interact with the WordPress database to fetch/update/delete data using the custom endpoints created using this plugin. Additionally, you can control the visibility and customize the metadata attached to the Custom endpoint response. Also, it provides an option to protect your Custom REST API endpoints from unauthorized access such that endpoints can be secured and can only be accessed after successful validation. This plugin also helps you to integrate any external/third-party REST API endpoints into WordPress very easily using the GUI within seconds. So with these API integrations, you can fetch the data using these external API endpoints to display the data on your WordPress site or can also process this data to use it further. These integrations can also be done on third-party plugin's events like form submission using third-party plugins like Elementor, Wpforms, Gravityforms etc. and also payment status or subscription status based on transactions done via payment gateways like that provided by WooCommerce, WPForms, GravityForms or any other services. Apart from these, the external API integrations can be done on any event of the WordPress like user registration, user membership level change or any other. = Use Case = • Accessing some custom data into your mobile application or web clients via custom REST API Endpoints. • Create, Read, Update and Delete (CRUD) WordPress content from client-side JavaScript or from external applications, even those written in languages beyond PHP by creating easy to use Custom REST Routes. • Interact with any standard database schema/tables or your custom-built schema/table to fetch/update/delete data using the custom API endpoints. • Connect two WordPress sites or connect your WordPress site with a website built in any framework and Get/Update/Insert/Delete (CRUD) data of one website from another website with the help of Custom API and feasibility of connection with External APIs / Custom Endpoints developed in the external Website. • Connect with External Rest API Routes to display data in your website or process the data received from External Endpoint. • Integrate External/third-party REST API endpoints with third-party plugin's payment gateways like that of WooCommerce, WPForms or any other custom gateway such that the API can be called based on the payment status. • Integrate External/third-party REST API endpoints with custom/third-party plugins' forms like that of WPForms, Elementor, GravityForms etc such that the external APIs can be called on these forms submission or any related events to perform fetch/update/delete operation based on API endpoints. = Free Version Features = • Unlimited Custom REST APIs(endpoints) can be created • Give names to Custom Endpoints/Custom REST routes • Build custom REST routes for all tables within WordPress • Build custom REST routes for fetching posts and taxonomies • Fetch any type of data available in WordPress via custom REST API endpoints • Full control of Custom REST API responses without writing a single line of PHP code. • Fetch operation available with single WHERE condition • Can be integrated with all types of applications • Can perform simple and advanced SQL queries on the WordPress database by creating custom rest API routes = Premium Version Features = • Create custom namespaces and routes • Multiple endpoints allowed per REST route • Create Custom API route for posts and taxonomies creation, modification, deletion. • Supports all kinds of HTTP Methods. • Single Custom Endpoint (API) can be used for multiple HTTP methods • Filters included to alter and extend default functionality • Fetch operation available with multiple custom conditions • Limit the no of responses you get as a result of Custom Endpoints (API). • Option to enable or disable the Custom API endpoints according to your requirements. • Complex queries formation with an Advance mechanism. • Restrict public access to all Custom REST API Routes with API KEY Authentication method and some other Authentication methods can also be provided as ADD-ON as per requirement like 1. REST API endpoints authentication Client credentials 2. REST API endpoints authentication using JWT Tokens 3. Basic Authorization with Username and Password 4. OAuth 2.0 authentication for REST API endpoints 5. Authentication from external OAuth/OIDC provider's token for REST API endpoints = Enterprise Version Features = • All Premium Version Features • Create Custom API endpoints with custom SQL Query • Connect with External REST API / External Endpoints • External API integration to fetch data in the WordPress, update data on the External API provider side. • Supports all kinds of HTTP(GET/POST/PUT/UPDATE) Methods. • Supports integration with Custom API / Custom Endpoints of External Website or Platform • Dynamic WordPress hooks for each External API / Endpoint connection to perform operations on external data • Compatibility with Third-Party Plugin Events like WooCommerce, WPForms, Membership Plugins, etc. • Support for calling External / Custom Endpoints on third party plugin events. • Compatibility with third-party plugin’s payment gateways • Support for connection with Custom API / Custom Endpoints developed in any framework like Java, PHP, NodeJS, .NET, etc. • Support of Dynamic headers for the External REST APIs / Custom APIs request • Securely access External Endpoints by passing the required authentication parameter either in Header or Body Authentication related information can be sent by any suitable REST client for eg- You can use CURL calls to send HTTP Requests or even any IDE like PHPSTORM or you can go with POSTMAN to send an authentication key. = Type of APIs supported: = • ‘HTTP GET` (This can be used to retrieve data from your WordPress) • ‘HTTP POST’ (This can be used to insert data in your WordPress) • ‘HTTP PUT’ (This can be used to update data in your WordPress) • ‘HTTP DELETE’ (This can be used to delete data in your WordPress) = Type of Data which you can retrieve with Custom Endpoints: = • WP Users and User Meta • WP Roles and Capabilities • WP Posts, Pages and custom post types • WP Options • WP Taxonomy • Woocommerce products, WordPress Membership plugins data • Custom data, Custom posts, Custom parameters, Custom fields and many more == Installation == = From your WordPress dashboard = 1. Visit `Plugins > Add New` 2. Search for `Custom API for WP`. Find and Install `Custom API for WP` plugin by miniOrange 3. Activate the plugin = From WordPress.org = 1. Download `Custom API for WP` plugin 2. Unzip and upload the `custom-api-for-wp` directory to your `/wp-content/plugins/` directory. 3. Activate the miniOrange API plugin from your Plugins page. = Once Activated = 1. Go to the `Settings-> Custom API` menu 2. Click on the `Create API` button 3. Choose data that you want to retrieve with API and conditions to retrieve data 4. Save the configuration and your API will be ready to use. == Frequently Asked Questions == = I do not see the data which I want to send with API? = Please email us at info@xecurify.com or submit your query from the plugin support form so that we can add support for your case. = Can I write create API endpoints using my own complex custom SQL Query? = Yes, the plugin provides this functionality so that any custom endpoints can be created based on your self-defined custom SQL query with any complexity, so SQL query can be used to perform operations using even multiple WP database tables. = How to integrate External/third-party side(Non-WordPress) REST API endpoints into WordPress? = The plugin provides the Graphical User Interface based feature to integrate or connect to any external API endpoints easily within WordPress and these connections can be used to fetch/update data via these external API endpoints on any WordPress events. == Screenshots == 1. List all created API's 2. Create API UI 3. Response of API call == Changelog == = 1.1.1 = * Initial version = 1.1.2 = * Added UI changes and contact form bug fix = 1.1.3 = * Added feedback form at deactivation = 1.1.4 = * Improved SEO and added compatibility with WP 5.5 = 1.1.5 = * Showing all premium features and Added customer registration tab = 1.1.6 = * Bugs and UI fixes = 1.1.7 = * Bugs and UI fixes = 1.1.8 = * Added compatibility with WordPress v5.6 = 1.1.9 = * Bugfix - Added support for LIKE condition = 2.1.0 = * Bug Fixes , Compatibility with WordPress v5.7 and integration with external APIs = 2.1.1 = * UI Updates, Bug Fixes