Rokus have a rest api that accept all the navigation and text inputs you'd do with the remote.