To open with a key id recommend adding a key array or TMap variable for keys to your inventory system. If you don’t have one setup you could just place it in your characters bp as a variable. All you’d have to do is on interact, query the inventory or key array, and open it if the desired key is held. For interacting with the door, you could setup an interface. On interact action call a line trace or get overlapping actors, query whether they implement the door interact interface, and if so call the interact event(Wich would be in the doors BP and execute the above opening functionality)