As of this writing (fall 2018) smartthings is in a transitional state, moving to a new app, new hub, and new development platform.
Custom device type handlers will no longer run in the smartthings groovy cloud. Instead, Developers will host their own apps and integrate with smartthings through a developer kit.
Below thanks to a link from @prjct92eh2 , A presentation from the 2018 Samsung developers conference:
And here is the link to the new platform developer documentation for smartapps and device integrations:
- The SmartApp can either be an AWS Lambda function, or a WebHook endpoint with a RESTful API interface.
A directly connected device communicates directly with SmartThings Cloud
You can use one of the following platforms:
There is also an option to use oauth to integrate with third-party apps. On the new platform, This requires Samsung approval.
SmartThings uses OAuth2 for authentication. To integrate a third-party application with SmartThings, first submit a request. Once approved, you can enable users of your platform to interact with SmartThings Cloud through your application.
So a lot is changing, the process is still in flux, and not all the details are known yet.
There is a discussion thread going back to the initial 2017 announcement of the changes here: