Correct/optimized way to get current user (with relations) in 'Backend API' server code ?

Hi -
Can you please confirm - what is the correct and optimized way to fetch/load current logged-in user (along with its relations) in the ‘backend API server code’ (not app code) ?
I am confused and cant find clear answer anywhere in docs or support forum.
Thanks.

Inside servercode you will able to get request context.

With event handlers, it is RunnerContext class you can get userId by calling context.getUserId() and then use Backendless.Data.of(BackendlessUser.class).findById method to get other user properties.

If you use Hosted Service, then there is InvocationContext and you can get user id by calling static method InvocationContext.getUserId() and then use Backendless.Data.of(BackendlessUser.class).findById to get other user properties.

by using findbyId() - I wont be able to load relations of the object in the same API call - right ?? I will have to again do loadRelations() on the returned object ??

This method is overloaded, you can load relations the same way you do it with find().