You can set up a raycast for when you press E. Have your Actors that you want to read have an actor tag that says something along the line of Read or Interact. After the ray cast hits it break the hit results so you can get the actor that you hit. Then using the actor that you hit you can use ActorHasTag and see if it has the tag you set for it. It will return a boolean value. You can then use the boolean value to whether or not to run a function, for instance displaying a widget to the player.
If you want to transfer the data from the widget to the player, you can se up a BP interface for interaction and add it to the actors settings. So once in your player BP if that actor happens to have the correct tag, you can pull off of that actor pin and send a message to one of the functions from the interface. Then inside of the actor you can have said function destroy self so it disappears from the work.
I’ll throw together a quick demo with screens in a minute to show you