Automattic\WooCommerce\StoreApi\Routes\V1\Agentic

CheckoutSessionsComplete::is_authorizedpublicWC 1.0

Check if the request is authorized.

Validates Jetpack blog token and cart token validity.

Method of the class: CheckoutSessionsComplete{}

No Hooks.

Returns

true|false|\WP_Error. True if authorized, WP_Error otherwise.

Usage

$CheckoutSessionsComplete = new CheckoutSessionsComplete();
$CheckoutSessionsComplete->is_authorized( $request );
$request(WP_REST_Request) (required)
Request object.

CheckoutSessionsComplete::is_authorized() code WC 10.7.0

public function is_authorized( \WP_REST_Request $request ) {
	// Check Jetpack blog token authentication.
	$auth_check = AgenticCheckoutUtils::validate_jetpack_request();
	if ( is_wp_error( $auth_check ) ) {
		return $auth_check;
	}

	// Additional check for cart token validity.
	if ( ! $this->has_cart_token( $request ) ) {
		return new \WP_Error(
			'woocommerce_rest_invalid_checkout_session',
			__( 'Invalid or expired checkout session ID.', 'woocommerce' ),
			array( 'status' => 404 )
		);
	}

	return true;
}