We have the PlayerState, GameInstance, The Player Controller and the Player Character, as well as widgets.
For instance i created a load player function (GSGetLogEvent), and run it on the Client (via Server), reliable. And is it okay to have this function on the player character, or should it instead placed elsewhere, are there any recommendations? Currently my save player function is on the Player Character Controller.
Your requests can be called from anywhere in your code. Personally I'd recommend them being called from your player controller.