SmartThings API Browser+ ... Now Available to All

I have a browser-based web app that provides a point-and-click way to explore most of the SmartThings API. For the non-technical, this gives you access to an important SmartThings resource without having to learn tools like Postman, curl, or the CLI. You don’t even need a computer: a tablet or even smartphone can be used. For the more technically inclined, it provides much faster and more convenient access to those commonly-accessed CLI commands. Although I originally thought of it as a portal for the non-technical, I’ve actually found it quite useful to use during my own development activities.

This is not intended as a replacement or ‘competitor’ to the CLI, mysmartthings, IDE(? well, maybe…), mobile app, etc, but is meant to provide a quick and easy supplemental tool.

I want to also acknowledge @lmullineux’s device info viewer, which probably already covers 85% of the use cases with its focus on devices.


Here is a summary of things you can do with the API Browser+:

  • Browse detail info for locations, modes, hubs, rooms, groups, scenes, rules, preferences, profiles, devices, drivers, capabilities, channels, apps

  • Apply filters to device listing (e.g. Get list of offline devices, just devices of a particular type (DTH, LAN, Zigbee, etc), or devices based on any chosen attribute and value)

  • View recent device history

  • Execute scenes and rules

  • Enable and disable Rules

  • Create modes, rules (from JSON file), virtual devices

  • Delete modes, rooms, groups, rules, devices

  • Move a hub device to another driver


The reason I have the ‘+’ at the end of the name is because I’ve implemented some additional convenience features above and beyond the raw API endpoints. For example, things like ‘list all the devices where a particular capability is used’. This can be accomplished with some gymnastics using the CLI plus other tools, but here it’s just a click away.

In the spirit of not wanting to recreate the function of other existing tools, this is currently mostly a browsing tool and I have not implemented create/edit/delete kinds of functionality with the exception of a few cases (virtual devices, for example). However, I’m open to how this should/could evolve.

PRE-REQUISITE
You will need a SmartThings Personal Access Token. If you don’t have one already, it’s a simple matter of going to this page and creating one. You can read more about what it is on this page , but basically this is a special key that SmartThings will create for you that you use to access various SmartThings resources like the API.

You will see that there are a lot of choices for the “scopes” you want to include in your Token. This determines what resources your token will allow you to access, and what you can do with those resources (read/manage/control/etc). You’ll want to have at least read access to as many things as you will want to explore using this API browser. You can create multiple tokens, so the choice is yours.

12/14/22 UPDATE
I’m now making this available to all community members. The latest link to the app can be found HERE.

We’ll continue to use this topic to gather comments and feedback.

Thanks.

28 Likes
Life after the IDE: Questions and Answers
Alternate to Alexa Switches for hubless locations
Leaving SmartThings
Second hub startup
The End of Groovy Has Arrived
How to Get the Manufacturer ID and Model by using the CLI
Ecolink Firefighter FF-ZWAVE5-ECO in SmartThings Home Monitor as a Smoke Detector using NEW EDGE DRIVERS
Where do i go now?
[ST Edge] Driver for GE/Jasco/Honeywell Z-Wave Switches, Dimmers, Fans, Outlets, and Plug-Ins
Reset V2 ST outlet and not local now
Can i control my smartthings from safari or chrome on macos?
Post Requests for Edge Drivers Here (community-created)
Lots of devices have not been moved ot Edge drivers
Where to find and how to install Edge device drivers
How do you tell if your device is edge enabled?
How to tell if my devices are Z-Wave or Zigbee
Edge conversion, should I be getting worried?
Virtual switches, dimmers, groups, etc
Groovy SmartApp Shutdown
Schlage BE469 Lock No Longer Works
Enbrighten switch drivers?
The End of Groovy Has Arrived
FAQ: How to Add a New Location Mode, or Manually Change from One Location Mode to Another (Classic App)
Leaving SmartThings
Any equivalent to legacy IDE?
Update to SmartThings Groovy Transition
[ST Edge] Driver for GE/Jasco Z-Wave Motion Switches and Dimmers - 24770, 26931, 26932, 26933
The End of Groovy Has Arrived
FAQ: I have no idea what Edge is. Is that a new developer tool? (2022)
SmartApp replacement for Shabbat-and-Holiday-Modes!
Cannot pair/delete devices (2023)
Switches no longer working after Edge migration
Z-Wave Switches Mirror Each Other?
iPhone presence sensor not working anymore
Tp-link devices stopped working in SmartThings (Jan 2023)
Switches no longer working after Edge migration
Activate Smartthings Scene via Fibaro Dimmer 2 + Tradfri
Api rest smart things
How to remove a rule created with Glitch?
Device routines and "local" vs. "cloud" execution
How do I delete my edge driver?
Which Channels Am I Enrolled?
FAQ: Creating Virtual Devices with the new architecture (Without the IDE) (2023)
[OBSOLETE] Lock Manager
Add Support for GE ZW4101 (aka Jasco) Appliance Module
The End of Groovy Has Arrived
Stupid question #42: How to remove (Exclude) a dead device?
The End of Groovy Has Arrived
Rules vs Routines
Help with virtual switch that used to be controlled via webCore
Get devices for only a Location Id
[ST Edge] Web Requestor: a driver to issue local POST and GET HTTP requests
How to install Edge Drivers
General Migration from ST DTH to ST Edge Drivers
Pair devices to a driver
Trigger when device chnages state?
The End of Groovy Has Arrived
Command Line smarthings tool - change driver?
Virtual Switches After Groovy FAQ
Virtual Switches After Groovy FAQ
2Gig CT100 Thermostat - Can't Control
Route information without Smartthings IDE
How to migrate from WebCoRE?
Mirror temperature sensor to virtual device
Life after the IDE: Questions and Answers

Hi, Im interested as a (non-technical) user

1 Like

I’ve had a sneak preview of this, it’s awesome

1 Like

I will check it out, very interesting work and based on your drivers I am sure it’s fantastic.

1 Like

count me in!

i’d be glad to help try it out

I would very much like to volunteer and help out.

I would like to try it and help debug it. I am semi-technical, but not a code writer.

I have 2 ST locations, 1 with a hub and 1 without a hub

1 Like

I’m sure it will be great. I am not technical, I have only one house and one hub. But if you need my help, you can count me.

Tagging @orangebucket @csstup

Would love to assist.

I’m somewhat technical (could manipulate old DTHs, run CLI, etc) but I don’t write code.

One hub / 378 devices.

I’d love to check it out.

I wouldn’t mind taking a look as a technical user. Thanks.

Hi TAustin, Im interested as a (non-technical) user.
I have 2 ST locations, 1 with a hub.

Hello @TAustin

Good afternoon, I am interested in the proposal.

User with technical knowledge, 1 house and 60+ devices.

I’m in. …

1 Like

Wow thanks for all the responses already!

One thing I should have mentioned up front is that to use this, you will need a SmartThings Personal Access Token. If you don’t have one already, it’s a simple matter of going to this page and creating one. You can read more about what it is on this page, but basically this is a special key that SmartThings will create for you that you use to access various SmartThings resources like the API.

You will see that there are a lot of choices for the “scopes” you want to include in your Token. This determines what resources your token will allow you to access, and what you can do with those resources (read/manage/control/etc). You’ll want to have at least read access to as many things as you will want to explore using this API browser. You can create multiple tokens, so the choice is yours.


I’ll create a private thread shortly for all you wonderful volunteers!

11 Likes

Count me in.

I’d be keen to see this and happy to test and provide feedback. Thanks

I’m game if there’s room.