rest_authentication_errors filter-hookWP 4.4.0

Filters REST API authentication errors.

This is used to pass a WP_Error from an authentication method back to the API.

Authentication methods should check first if they're being used, as multiple authentication methods can be enabled on a site (cookies, HTTP basic auth, OAuth). If the authentication method hooked in is not actually being attempted, null should be returned to indicate another authentication method should check instead. Similarly, callbacks should ensure the value is null before checking for errors.

A WP_Error instance can be returned if an error occurs, and this should match the format used by API methods internally (that is, the status data should be used). A callback can return true to indicate that the authentication method was used, and it succeeded.

Usage

add_filter( 'rest_authentication_errors', 'wp_kama_rest_authentication_errors_filter' );

/**
 * Function for `rest_authentication_errors` filter-hook.
 * 
 * @param WP_Error|null|true $errors WP_Error if authentication error, null if authentication method wasn't used, true if authentication succeeded.
 *
 * @return WP_Error|null|true
 */
function wp_kama_rest_authentication_errors_filter( $errors ){

	// filter...
	return $errors;
}
$errors(WP_Error|null|true)
WP_Error if authentication error, null if authentication method wasn't used, true if authentication succeeded.

Changelog

Since 4.4.0 Introduced.

Where the hook is called

WP_REST_Server::check_authentication()
rest_authentication_errors
wp-includes/rest-api/class-wp-rest-server.php 197
return apply_filters( 'rest_authentication_errors', null );

Where the hook is used in WordPress

wp-includes/default-filters.php 329
add_filter( 'rest_authentication_errors', 'rest_application_password_check_errors', 90 );
wp-includes/default-filters.php 330
add_filter( 'rest_authentication_errors', 'rest_cookie_check_errors', 100 );