Setting up SmartThings Integration and Getting 403 Error

Had a bunch of issues with base-url and other stuff that I seem to have sorted out. Now when I go through the SmartThings Integration, I get “Unknown error occurred” after submitting my personal Token. Checking into the logs, I see I’m getting a 403 Forbidden from SmartThings…any ideas? Did something change, or is there something else I’m missing?

Logger: aiohttp.server
Source: components/smartthings/config_flow.py:175
First occurred: 12:43:22 AM (1 occurrences)
Last logged: 12:43:22 AM

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 18, in request_context_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 72, in ban_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 127, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 129, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 169, in post
    return await super().post(request, flow_id)
  File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 60, in wrapper
    result = await method(view, request, *args, **kwargs)
  File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 106, in post
    result = await self._flow_mgr.async_configure(flow_id, data)
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 153, in async_configure
    result = await self._async_handle_step(flow, cur_step["step_id"], user_input)
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 201, in _async_handle_step
    result: Dict = await getattr(flow, method)(user_input)
  File "/usr/src/homeassistant/homeassistant/components/smartthings/config_flow.py", line 166, in async_step_pat
    return await self.async_step_select_location()
  File "/usr/src/homeassistant/homeassistant/components/smartthings/config_flow.py", line 175, in async_step_select_location
    locations = await self.api.locations()
  File "/usr/local/lib/python3.8/site-packages/pysmartthings/smartthings.py", line 38, in locations
    resp = await self._service.get_locations()
  File "/usr/local/lib/python3.8/site-packages/pysmartthings/api.py", line 53, in get_locations
    return await self.get_items(API_LOCATIONS)
  File "/usr/local/lib/python3.8/site-packages/pysmartthings/api.py", line 384, in get_items
    resp = await self.request("get", self._api_base + resource, params, None)
  File "/usr/local/lib/python3.8/site-packages/pysmartthings/api.py", line 376, in request
    resp.raise_for_status()
  File "/usr/local/lib/python3.8/site-packages/aiohttp/client_reqrep.py", line 941, in raise_for_status
    raise ClientResponseError(
aiohttp.client_exceptions.ClientResponseError: 403, message='Forbidden', url=URL('https://api.smartthings.com/v1/locations')

Did some more poking around and it seems other integrations have also come across 403. A couple identified perhaps an expired token…didn’t know that was a thing. So I generated a new one and that seems to have allowed me to finally get SmartThings integration setup.

Unfortunately even though it’s now showing in my integrations, it hasn’t detected any devices yet, about 45 minutes later. :frowning:

Had to delete the integration and readded it and went through the process again and it was finally able to pick up all the devices.