What is the best way to program a multiplayer grab interaction?

Ok thank you both for the answer, one more question though. So if one of my clients had an invalid interaction would I just use a Client RPC to tell the client to detach the picked up object and move it back to it’s original position?

I know that I should probably be only using Client RPCs for transient information so is there a better way to resync the client with the server?