woocommerce_rest_check_permissions filter-hookWC 2.6.0

Provides an opportunity to override the permission check made before acting on an object in relation to REST API requests.

Usage

add_filter( 'woocommerce_rest_check_permissions', 'wp_kama_woocommerce_rest_check_permissions_filter', 10, 4 );

/**
 * Function for `woocommerce_rest_check_permissions` filter-hook.
 * 
 * @param bool   $permission  If we have permission to act on this object.
 * @param string $context     Describes the operation being performed: 'read', 'edit', 'delete', etc.
 * @param int    $object_id   Object ID. This could be a user ID, order ID, post ID, etc.
 * @param string $object_type Type of object ('user', 'shop_order', etc) for which checks are being made.
 *
 * @return bool
 */
function wp_kama_woocommerce_rest_check_permissions_filter( $permission, $context, $object_id, $object_type ){

	// filter...
	return $permission;
}
$permission(true|false)
If we have permission to act on this object.
$context(string)
Describes the operation being performed: 'read', 'edit', 'delete', etc.
$object_id(int)
Object ID. This could be a user ID, order ID, post ID, etc.
$object_type(string)
Type of object ('user', 'shop_order', etc) for which checks are being made.

Changelog

Since 2.6.0 Introduced.

Where the hook is called

wc_rest_check_user_permissions()
woocommerce_rest_check_permissions
Controller::get_item_permissions_check()
wc_rest_check_post_permissions()
woocommerce_rest_check_permissions
wc_rest_check_product_term_permissions()
woocommerce_rest_check_permissions
wc_rest_check_manager_permissions()
woocommerce_rest_check_permissions
wc_rest_check_product_reviews_permissions()
woocommerce_rest_check_permissions
woocommerce/includes/wc-rest-functions.php 305
return apply_filters( 'woocommerce_rest_check_permissions', $permission, $context, $object_id, 'user' );
woocommerce/src/Internal/RestApi/Routes/V4/Products/Controller.php 186
$permission = apply_filters( 'woocommerce_rest_check_permissions', $permission, 'read', $object_id, $object->post_type );
woocommerce/includes/wc-rest-functions.php 249
return apply_filters( 'woocommerce_rest_check_permissions', $permission, $context, $object_id, $post_type );
woocommerce/includes/wc-rest-functions.php 330
return apply_filters( 'woocommerce_rest_check_permissions', $permission, $context, $object_id, $taxonomy );
woocommerce/includes/wc-rest-functions.php 354
return apply_filters( 'woocommerce_rest_check_permissions', $permission, $context, 0, $object );
woocommerce/includes/wc-rest-functions.php 387
return apply_filters( 'woocommerce_rest_check_permissions', $permission, $context, $object_id, 'product_review' );

Where the hook is used in WooCommerce

woocommerce/src/Admin/ReportCSVExporter.php 290
add_filter( 'woocommerce_rest_check_permissions', '__return_true' );
woocommerce/src/Admin/ReportCSVExporter.php 293
remove_filter( 'woocommerce_rest_check_permissions', '__return_true' );