Is there a way to use outside REST or Web Calls to send into a Smart Things hub to send it commands?
For some things. See the developer documentation at the link at the top of The first page of this forum and read the section on web services. Or ask in the developer section of the forum.
The hub keeps an open HTTP port and you can POST data to it, but you have to write your own smart app to parse the data. Also, it’s unidirectional, i.e. your app cannot return any data in response. The hub will always respond with ‘202 ACCEPTED’ and close the connection. The amount of data you can post is limited.
Might look at something like CoRE to build ‘actions’ and then make a call into it to execute those actions.