Closed polleke69 closed 2 months ago
The API key is required for IT, NL, ES and US locations and to allow finding the cheapest stations on a route. For other locations the API key may not be required.
This was marked in readme and release notes. I might check it to force a value. a free GeoApify API key can be requested using the geoapify website.
added in 11.1.0
Ouch, I missed that...
Thank you!
Looks like Geoapify has closed their free accounts, can't register a new one...
When using coutry code NL, enter a postal code and town (NOT using geo api key) following error is thrown:
2024-08-23 10:17:06.885 ERROR (MainThread) [aiohttp.server] Error handling request Traceback (most recent call last): File "/var/srv/homeassistant-312/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 456, in _handle_request resp = await request_handler(request) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/aiohttp/web_app.py", line 537, in _handle resp = await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/request_context.py", line 26, in request_context_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/ban.py", line 85, in ban_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/auth.py", line 242, in auth_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/headers.py", line 32, in headers_middleware response = await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/helpers/http.py", line 73, in handle result = await handler(request, request.match_info) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/decorators.py", line 81, in with_admin return await func(self, request, *args, *kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/config/config_entries.py", line 222, in post return await super().post(request, flow_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/data_validator.py", line 74, in wrapper return await method(view, request, data, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/helpers/data_entry_flow.py", line 122, in post result = await self._flow_mgr.async_configure(flow_id, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/data_entry_flow.py", line 366, in async_configure result = await self._async_configure(flow_id, user_input) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/data_entry_flow.py", line 413, in _async_configure result = await self._async_handle_step( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/data_entry_flow.py", line 516, in _async_handle_step result: _FlowResultT = await getattr(flow, method)(user_input) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/homeassistant/.homeassistant/custom_components/carbu_com/config_flow.py", line 321, in async_step_town boundingboxLocationInfo = await self.hass.async_add_executor_job(lambda: self._session.convertLocationBoundingBox(self._init_info.get('postalcode'), self._init_info.get('country'), self._init_info.get('town'))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/homeassistant/.homeassistant/custom_components/carbu_com/config_flow.py", line 321, in
boundingboxLocationInfo = await self.hass.async_add_executor_job(lambda: self._session.convertLocationBoundingBox(self._init_info.get('postalcode'), self._init_info.get('country'), self._init_info.get('town')))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/var/srv/homeassistant-312/lib/python3.12/site-packages/ratelimit/decorators.py", line 113, in wrapper
return func(*args, *kargs)
^^^^^^^^^^^^^^^^^^^^
File "/var/srv/homeassistant-312/lib/python3.12/site-packages/ratelimit/decorators.py", line 80, in wrapper
return func(args, kargs)
^^^^^^^^^^^^^^^^^^^^
File "/home/homeassistant/.homeassistant/custom_components/carbu_com/utils.py", line 184, in convertLocationBoundingBox
orig_boundingbox = orig_location.get('boundingbox')
^^^^^^^^^^^^^^^^^
AttributeError: 'tuple' object has no attribute 'get'