query_vars['adscaleLoginToken'] = sanitize_key( wp_unslash( $_GET['adscaleLoginToken'] ) ); } // make sure endpoint request if ( ! isset( $wp->query_vars['adscaleLoginToken'] ) ) { return; } try { ob_start(); Helper::nocache_headers(); // Check Request (Guards) self::checkRequest(); ob_end_clean(); // Handle Request self::handleRequest(); // Default error Helper::send_response_formatted_error( self::makeErrorBody() ); } catch ( ServiceApiException $ex ) { Helper::send_response_formatted_error( self::makeErrorBody( $ex->getApiErrorCode(), $ex->getMessage(), $ex->getApiErrorDetails() ) ); } catch ( \Exception $ex ) { Helper::send_response_formatted_error( self::makeErrorBody( $ex->getCode(), $ex->getMessage() ) ); } } public static function handleRequest() { $loginToken = LoginTokenHandler::getLoginToken(); //$isEmptyLT = empty($loginToken) ? 'empty' : 'not empty'; //Logger::log("process loginToken: OK [$isEmptyLT]", 'Success > ', 'process_loginToken'); LoginTokenHandler::clearLoginToken(); // clear after getting // body == {"token":"%TOKEN%"} Helper::send_response_formatted_success( [ 'token' => $loginToken ] ); } }