I’ve set up a custom GET API end point for site B.
function register_custom_rest_endpoint() {
register_rest_route( ‘coupon/v1’, ‘/create’, array(
‘methods’ => ‘GET’,
‘callback’ => ‘create_coupon_callback’,
‘permission_callback’ => ‘__return_true’,
) );
}
add_action( ‘rest_api_init’, ‘register_custom_rest_endpoint’ );
https://mydomain.com/wp-json/coupon/v1/create?sp_number=9576&retailer_name=abcdefgh
If I visit the URL in my browser, my GET request works and is returning a response as expected.
However when I call it from my other website, I get a 401 unauthorized error.
Here is my code for the API request from Site A:
$endpoint_url = ‘https://mydomain.com/wp-json/coupon/v1/create?sp_number=’ . rgar( $entry, ‘1’ ) . ‘&retailer_name=’ . rgar($entry,2);
$response = wp_remote_get( $endpoint_url );
Error message: 401 Authorization Required
I was under the impression that the permission\_callback being set to return true would mean I would not need authorization for the API call, yet when calling from Site A I’m getting the authorization required message.
Any guesses?
[ad_2]