Pass metadata in interaction.

Close #1306.
underscore the function