homeassistant 2025.10.0b2__py3-none-any.whl → 2025.10.0b5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of homeassistant might be problematic. Click here for more details.

Files changed (554) hide show
  1. homeassistant/components/accuweather/translations/bg.json +7 -1
  2. homeassistant/components/accuweather/translations/ga.json +16 -1
  3. homeassistant/components/adax/translations/fy.json +11 -0
  4. homeassistant/components/adguard/translations/zh-Hant.json +1 -1
  5. homeassistant/components/airos/__init__.py +37 -2
  6. homeassistant/components/airos/config_flow.py +24 -3
  7. homeassistant/components/airos/const.py +5 -0
  8. homeassistant/components/airos/entity.py +8 -3
  9. homeassistant/components/airos/strings.json +12 -0
  10. homeassistant/components/airos/translations/bg.json +8 -0
  11. homeassistant/components/airos/translations/ca.json +8 -0
  12. homeassistant/components/airos/translations/cs.json +12 -0
  13. homeassistant/components/airos/translations/de.json +12 -0
  14. homeassistant/components/airos/translations/en-GB.json +12 -0
  15. homeassistant/components/airos/translations/en.json +12 -0
  16. homeassistant/components/airos/translations/es.json +12 -0
  17. homeassistant/components/airos/translations/et.json +12 -0
  18. homeassistant/components/airos/translations/fr.json +18 -0
  19. homeassistant/components/airos/translations/fy.json +11 -0
  20. homeassistant/components/airos/translations/lt.json +12 -0
  21. homeassistant/components/airos/translations/lv.json +1 -0
  22. homeassistant/components/airos/translations/pt.json +12 -0
  23. homeassistant/components/airos/translations/sk.json +12 -0
  24. homeassistant/components/airos/translations/sv.json +40 -1
  25. homeassistant/components/airos/translations/zh-Hans.json +12 -0
  26. homeassistant/components/airos/translations/zh-Hant.json +12 -0
  27. homeassistant/components/airtouch5/translations/da.json +9 -0
  28. homeassistant/components/airzone/translations/es.json +10 -0
  29. homeassistant/components/airzone/translations/et.json +10 -0
  30. homeassistant/components/airzone/translations/fr.json +9 -0
  31. homeassistant/components/airzone/translations/ga.json +10 -0
  32. homeassistant/components/airzone/translations/lt.json +10 -0
  33. homeassistant/components/airzone/translations/pt.json +10 -0
  34. homeassistant/components/alexa_devices/binary_sensor.py +0 -7
  35. homeassistant/components/alexa_devices/manifest.json +1 -1
  36. homeassistant/components/alexa_devices/translations/fy.json +16 -0
  37. homeassistant/components/analytics/analytics.py +1 -1
  38. homeassistant/components/assist_pipeline/pipeline.py +43 -18
  39. homeassistant/components/assist_pipeline/translations/sv.json +1 -0
  40. homeassistant/components/blue_current/translations/bg.json +18 -0
  41. homeassistant/components/blue_current/translations/es.json +44 -0
  42. homeassistant/components/blue_current/translations/et.json +44 -0
  43. homeassistant/components/blue_current/translations/fr.json +9 -0
  44. homeassistant/components/blue_current/translations/ga.json +44 -0
  45. homeassistant/components/blue_current/translations/lt.json +44 -0
  46. homeassistant/components/blue_current/translations/pt.json +44 -0
  47. homeassistant/components/bsblan/translations/fy.json +16 -0
  48. homeassistant/components/cast/translations/pl.json +14 -0
  49. homeassistant/components/cloud/translations/sk.json +1 -1
  50. homeassistant/components/comelit/config_flow.py +8 -4
  51. homeassistant/components/compit/translations/bg.json +25 -0
  52. homeassistant/components/compit/translations/fy.json +16 -0
  53. homeassistant/components/cover/translations/da.json +20 -1
  54. homeassistant/components/cync/translations/bg.json +20 -0
  55. homeassistant/components/cync/translations/ca.json +12 -0
  56. homeassistant/components/cync/translations/es.json +32 -0
  57. homeassistant/components/cync/translations/et.json +32 -0
  58. homeassistant/components/cync/translations/fr.json +32 -0
  59. homeassistant/components/cync/translations/fy.json +11 -0
  60. homeassistant/components/cync/translations/ga.json +32 -0
  61. homeassistant/components/cync/translations/lt.json +32 -0
  62. homeassistant/components/cync/translations/pt.json +32 -0
  63. homeassistant/components/cync/translations/ru.json +32 -0
  64. homeassistant/components/deconz/translations/zh-Hant.json +1 -1
  65. homeassistant/components/deluge/translations/bg.json +6 -0
  66. homeassistant/components/devolo_home_control/translations/fy.json +11 -0
  67. homeassistant/components/devolo_home_network/translations/fy.json +10 -0
  68. homeassistant/components/dnsip/sensor.py +17 -4
  69. homeassistant/components/ebusd/__init__.py +5 -1
  70. homeassistant/components/ecovacs/image.py +3 -1
  71. homeassistant/components/ecovacs/manifest.json +1 -1
  72. homeassistant/components/ecovacs/translations/es.json +7 -1
  73. homeassistant/components/ecovacs/translations/et.json +7 -1
  74. homeassistant/components/ecovacs/translations/ga.json +6 -1
  75. homeassistant/components/ecovacs/translations/pt.json +4 -0
  76. homeassistant/components/ecovacs/translations/ru.json +4 -0
  77. homeassistant/components/edl21/translations/de.json +1 -1
  78. homeassistant/components/ekeybionyx/translations/bg.json +26 -0
  79. homeassistant/components/ekeybionyx/translations/es.json +66 -0
  80. homeassistant/components/ekeybionyx/translations/et.json +66 -0
  81. homeassistant/components/ekeybionyx/translations/fr.json +32 -0
  82. homeassistant/components/ekeybionyx/translations/ga.json +66 -0
  83. homeassistant/components/ekeybionyx/translations/lt.json +65 -0
  84. homeassistant/components/ekeybionyx/translations/pt.json +66 -0
  85. homeassistant/components/elkm1/translations/fy.json +11 -0
  86. homeassistant/components/elvia/translations/de.json +3 -3
  87. homeassistant/components/ephember/climate.py +12 -2
  88. homeassistant/components/esphome/manager.py +1 -1
  89. homeassistant/components/esphome/manifest.json +1 -1
  90. homeassistant/components/esphome/translations/pl.json +4 -2
  91. homeassistant/components/esphome/translations/sv.json +1 -1
  92. homeassistant/components/ezviz/entity.py +12 -6
  93. homeassistant/components/file/translations/bg.json +17 -0
  94. homeassistant/components/file/translations/es.json +31 -0
  95. homeassistant/components/file/translations/et.json +31 -0
  96. homeassistant/components/file/translations/ga.json +31 -0
  97. homeassistant/components/file/translations/pt.json +31 -0
  98. homeassistant/components/file/translations/ru.json +31 -0
  99. homeassistant/components/fritz/diagnostics.py +3 -0
  100. homeassistant/components/frontend/manifest.json +1 -1
  101. homeassistant/components/geniushub/entity.py +4 -4
  102. homeassistant/components/geocaching/translations/bg.json +13 -0
  103. homeassistant/components/google_generative_ai_conversation/translations/ga.json +6 -0
  104. homeassistant/components/habitica/translations/ga.json +24 -0
  105. homeassistant/components/hassio/translations/bg.json +3 -0
  106. homeassistant/components/hassio/translations/es.json +4 -0
  107. homeassistant/components/hassio/translations/et.json +4 -0
  108. homeassistant/components/hassio/translations/ga.json +4 -0
  109. homeassistant/components/hassio/translations/pt.json +4 -0
  110. homeassistant/components/hassio/translations/ru.json +4 -0
  111. homeassistant/components/here_travel_time/translations/es.json +6 -0
  112. homeassistant/components/here_travel_time/translations/et.json +6 -0
  113. homeassistant/components/here_travel_time/translations/ga.json +6 -0
  114. homeassistant/components/here_travel_time/translations/pt.json +6 -0
  115. homeassistant/components/homeassistant_connect_zbt2/strings.json +22 -12
  116. homeassistant/components/homeassistant_connect_zbt2/translations/bg.json +64 -6
  117. homeassistant/components/homeassistant_connect_zbt2/translations/ca.json +2 -8
  118. homeassistant/components/homeassistant_connect_zbt2/translations/cs.json +22 -12
  119. homeassistant/components/homeassistant_connect_zbt2/translations/de.json +22 -12
  120. homeassistant/components/homeassistant_connect_zbt2/translations/el.json +2 -8
  121. homeassistant/components/homeassistant_connect_zbt2/translations/en-GB.json +22 -12
  122. homeassistant/components/homeassistant_connect_zbt2/translations/en.json +22 -12
  123. homeassistant/components/homeassistant_connect_zbt2/translations/es.json +22 -12
  124. homeassistant/components/homeassistant_connect_zbt2/translations/et.json +22 -12
  125. homeassistant/components/homeassistant_connect_zbt2/translations/fr.json +2 -8
  126. homeassistant/components/homeassistant_connect_zbt2/translations/ga.json +2 -8
  127. homeassistant/components/homeassistant_connect_zbt2/translations/he.json +2 -8
  128. homeassistant/components/homeassistant_connect_zbt2/translations/lt.json +2 -8
  129. homeassistant/components/homeassistant_connect_zbt2/translations/nl.json +2 -4
  130. homeassistant/components/homeassistant_connect_zbt2/translations/pl.json +1 -2
  131. homeassistant/components/homeassistant_connect_zbt2/translations/pt.json +22 -12
  132. homeassistant/components/homeassistant_connect_zbt2/translations/ru.json +1 -4
  133. homeassistant/components/homeassistant_connect_zbt2/translations/sk.json +6 -12
  134. homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hans.json +2 -8
  135. homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hant.json +22 -12
  136. homeassistant/components/homeassistant_hardware/firmware_config_flow.py +11 -0
  137. homeassistant/components/homeassistant_hardware/strings.json +11 -5
  138. homeassistant/components/homeassistant_hardware/translations/bg.json +40 -0
  139. homeassistant/components/homeassistant_hardware/translations/ca.json +0 -8
  140. homeassistant/components/homeassistant_hardware/translations/cs.json +11 -5
  141. homeassistant/components/homeassistant_hardware/translations/de.json +11 -5
  142. homeassistant/components/homeassistant_hardware/translations/el.json +0 -11
  143. homeassistant/components/homeassistant_hardware/translations/en-GB.json +11 -5
  144. homeassistant/components/homeassistant_hardware/translations/en.json +11 -5
  145. homeassistant/components/homeassistant_hardware/translations/es.json +11 -5
  146. homeassistant/components/homeassistant_hardware/translations/et.json +11 -5
  147. homeassistant/components/homeassistant_hardware/translations/fr.json +0 -11
  148. homeassistant/components/homeassistant_hardware/translations/ga.json +0 -11
  149. homeassistant/components/homeassistant_hardware/translations/he.json +0 -11
  150. homeassistant/components/homeassistant_hardware/translations/hu.json +0 -11
  151. homeassistant/components/homeassistant_hardware/translations/id.json +0 -8
  152. homeassistant/components/homeassistant_hardware/translations/it.json +0 -3
  153. homeassistant/components/homeassistant_hardware/translations/ja.json +0 -11
  154. homeassistant/components/homeassistant_hardware/translations/ko.json +0 -8
  155. homeassistant/components/homeassistant_hardware/translations/lt.json +0 -11
  156. homeassistant/components/homeassistant_hardware/translations/mk.json +0 -3
  157. homeassistant/components/homeassistant_hardware/translations/nl.json +0 -3
  158. homeassistant/components/homeassistant_hardware/translations/pt.json +11 -5
  159. homeassistant/components/homeassistant_hardware/translations/ru.json +0 -11
  160. homeassistant/components/homeassistant_hardware/translations/sk.json +10 -7
  161. homeassistant/components/homeassistant_hardware/translations/sv.json +0 -11
  162. homeassistant/components/homeassistant_hardware/translations/tr.json +0 -8
  163. homeassistant/components/homeassistant_hardware/translations/zh-Hans.json +0 -11
  164. homeassistant/components/homeassistant_hardware/translations/zh-Hant.json +11 -5
  165. homeassistant/components/homeassistant_sky_connect/strings.json +22 -12
  166. homeassistant/components/homeassistant_sky_connect/translations/bg.json +72 -4
  167. homeassistant/components/homeassistant_sky_connect/translations/ca.json +2 -8
  168. homeassistant/components/homeassistant_sky_connect/translations/cs.json +22 -12
  169. homeassistant/components/homeassistant_sky_connect/translations/de.json +22 -12
  170. homeassistant/components/homeassistant_sky_connect/translations/el.json +2 -8
  171. homeassistant/components/homeassistant_sky_connect/translations/en-GB.json +22 -12
  172. homeassistant/components/homeassistant_sky_connect/translations/en.json +22 -12
  173. homeassistant/components/homeassistant_sky_connect/translations/es.json +22 -12
  174. homeassistant/components/homeassistant_sky_connect/translations/et.json +22 -12
  175. homeassistant/components/homeassistant_sky_connect/translations/fi.json +2 -4
  176. homeassistant/components/homeassistant_sky_connect/translations/fr.json +2 -8
  177. homeassistant/components/homeassistant_sky_connect/translations/ga.json +2 -8
  178. homeassistant/components/homeassistant_sky_connect/translations/he.json +2 -8
  179. homeassistant/components/homeassistant_sky_connect/translations/hu.json +2 -8
  180. homeassistant/components/homeassistant_sky_connect/translations/id.json +2 -8
  181. homeassistant/components/homeassistant_sky_connect/translations/it.json +2 -4
  182. homeassistant/components/homeassistant_sky_connect/translations/ja.json +2 -8
  183. homeassistant/components/homeassistant_sky_connect/translations/ko.json +2 -12
  184. homeassistant/components/homeassistant_sky_connect/translations/lt.json +2 -8
  185. homeassistant/components/homeassistant_sky_connect/translations/nl.json +2 -4
  186. homeassistant/components/homeassistant_sky_connect/translations/pl.json +2 -4
  187. homeassistant/components/homeassistant_sky_connect/translations/pt.json +22 -12
  188. homeassistant/components/homeassistant_sky_connect/translations/ru.json +2 -8
  189. homeassistant/components/homeassistant_sky_connect/translations/sk.json +6 -12
  190. homeassistant/components/homeassistant_sky_connect/translations/sv.json +2 -8
  191. homeassistant/components/homeassistant_sky_connect/translations/tr.json +2 -8
  192. homeassistant/components/homeassistant_sky_connect/translations/zh-Hans.json +2 -8
  193. homeassistant/components/homeassistant_sky_connect/translations/zh-Hant.json +22 -12
  194. homeassistant/components/homeassistant_yellow/strings.json +11 -6
  195. homeassistant/components/homeassistant_yellow/translations/bg.json +32 -3
  196. homeassistant/components/homeassistant_yellow/translations/ca.json +1 -4
  197. homeassistant/components/homeassistant_yellow/translations/cs.json +11 -6
  198. homeassistant/components/homeassistant_yellow/translations/de.json +11 -6
  199. homeassistant/components/homeassistant_yellow/translations/el.json +1 -4
  200. homeassistant/components/homeassistant_yellow/translations/en-GB.json +11 -6
  201. homeassistant/components/homeassistant_yellow/translations/en.json +11 -6
  202. homeassistant/components/homeassistant_yellow/translations/es.json +11 -6
  203. homeassistant/components/homeassistant_yellow/translations/et.json +11 -6
  204. homeassistant/components/homeassistant_yellow/translations/fr.json +1 -4
  205. homeassistant/components/homeassistant_yellow/translations/ga.json +1 -4
  206. homeassistant/components/homeassistant_yellow/translations/he.json +1 -4
  207. homeassistant/components/homeassistant_yellow/translations/hu.json +1 -4
  208. homeassistant/components/homeassistant_yellow/translations/id.json +1 -4
  209. homeassistant/components/homeassistant_yellow/translations/it.json +1 -2
  210. homeassistant/components/homeassistant_yellow/translations/ja.json +1 -4
  211. homeassistant/components/homeassistant_yellow/translations/ko.json +0 -2
  212. homeassistant/components/homeassistant_yellow/translations/lt.json +1 -4
  213. homeassistant/components/homeassistant_yellow/translations/nl.json +1 -2
  214. homeassistant/components/homeassistant_yellow/translations/pt.json +11 -6
  215. homeassistant/components/homeassistant_yellow/translations/ru.json +1 -4
  216. homeassistant/components/homeassistant_yellow/translations/sk.json +3 -6
  217. homeassistant/components/homeassistant_yellow/translations/sv.json +1 -4
  218. homeassistant/components/homeassistant_yellow/translations/tr.json +1 -4
  219. homeassistant/components/homeassistant_yellow/translations/zh-Hans.json +1 -4
  220. homeassistant/components/homeassistant_yellow/translations/zh-Hant.json +11 -6
  221. homeassistant/components/homee/translations/fy.json +14 -0
  222. homeassistant/components/hue/v2/binary_sensor.py +5 -1
  223. homeassistant/components/husqvarna_automower/translations/da.json +16 -0
  224. homeassistant/components/imeon_inverter/translations/fy.json +11 -0
  225. homeassistant/components/improv_ble/translations/fy.json +7 -0
  226. homeassistant/components/irm_kmi/translations/bg.json +49 -0
  227. homeassistant/components/irm_kmi/translations/ga.json +50 -0
  228. homeassistant/components/ista_ecotrend/translations/fy.json +11 -0
  229. homeassistant/components/knx/translations/fr.json +3 -0
  230. homeassistant/components/konnected/__init__.py +14 -1
  231. homeassistant/components/konnected/manifest.json +1 -1
  232. homeassistant/components/konnected/strings.json +6 -0
  233. homeassistant/components/konnected/translations/cs.json +6 -0
  234. homeassistant/components/konnected/translations/de.json +6 -0
  235. homeassistant/components/konnected/translations/en-GB.json +6 -0
  236. homeassistant/components/konnected/translations/en.json +6 -0
  237. homeassistant/components/konnected/translations/es.json +6 -0
  238. homeassistant/components/konnected/translations/et.json +6 -0
  239. homeassistant/components/konnected/translations/pt.json +6 -0
  240. homeassistant/components/konnected/translations/sk.json +6 -0
  241. homeassistant/components/konnected/translations/zh-Hant.json +6 -0
  242. homeassistant/components/lamarzocco/__init__.py +1 -1
  243. homeassistant/components/lamarzocco/coordinator.py +10 -2
  244. homeassistant/components/lamarzocco/manifest.json +1 -1
  245. homeassistant/components/letpot/translations/bg.json +5 -0
  246. homeassistant/components/letpot/translations/es.json +10 -0
  247. homeassistant/components/letpot/translations/et.json +10 -0
  248. homeassistant/components/letpot/translations/fr.json +10 -0
  249. homeassistant/components/letpot/translations/ga.json +9 -0
  250. homeassistant/components/letpot/translations/lt.json +10 -0
  251. homeassistant/components/letpot/translations/pt.json +10 -0
  252. homeassistant/components/lg_thinq/translations/bg.json +9 -0
  253. homeassistant/components/lg_thinq/translations/ga.json +9 -0
  254. homeassistant/components/litterrobot/translations/bg.json +5 -0
  255. homeassistant/components/logbook/translations/es.json +6 -1
  256. homeassistant/components/logbook/translations/et.json +6 -1
  257. homeassistant/components/logbook/translations/pl.json +3 -1
  258. homeassistant/components/logbook/translations/pt.json +6 -1
  259. homeassistant/components/logbook/translations/ru.json +6 -1
  260. homeassistant/components/lovelace/translations/pl.json +6 -1
  261. homeassistant/components/mastodon/translations/bg.json +3 -0
  262. homeassistant/components/mastodon/translations/ga.json +4 -0
  263. homeassistant/components/matter/translations/bg.json +3 -0
  264. homeassistant/components/matter/translations/da.json +7 -0
  265. homeassistant/components/matter/translations/es.json +3 -0
  266. homeassistant/components/matter/translations/et.json +3 -0
  267. homeassistant/components/matter/translations/ga.json +3 -0
  268. homeassistant/components/matter/translations/pt.json +3 -0
  269. homeassistant/components/matter/translations/ru.json +3 -0
  270. homeassistant/components/mcp/strings.json +20 -1
  271. homeassistant/components/mcp/translations/bg.json +1 -0
  272. homeassistant/components/mcp/translations/cs.json +20 -1
  273. homeassistant/components/mcp/translations/de.json +20 -1
  274. homeassistant/components/mcp/translations/en-GB.json +20 -1
  275. homeassistant/components/mcp/translations/en.json +20 -1
  276. homeassistant/components/mcp/translations/es.json +20 -1
  277. homeassistant/components/mcp/translations/et.json +20 -1
  278. homeassistant/components/mcp/translations/lt.json +20 -1
  279. homeassistant/components/mcp/translations/pt.json +20 -1
  280. homeassistant/components/mcp/translations/sk.json +20 -1
  281. homeassistant/components/mcp/translations/zh-Hant.json +20 -1
  282. homeassistant/components/miele/translations/ga.json +1 -0
  283. homeassistant/components/motioneye/translations/zh-Hant.json +1 -1
  284. homeassistant/components/mqtt/strings.json +2 -0
  285. homeassistant/components/mqtt/translations/bg.json +1 -0
  286. homeassistant/components/mqtt/translations/cs.json +2 -0
  287. homeassistant/components/mqtt/translations/da.json +19 -0
  288. homeassistant/components/mqtt/translations/de.json +2 -0
  289. homeassistant/components/mqtt/translations/en-GB.json +2 -0
  290. homeassistant/components/mqtt/translations/en.json +2 -0
  291. homeassistant/components/mqtt/translations/es.json +21 -0
  292. homeassistant/components/mqtt/translations/et.json +21 -0
  293. homeassistant/components/mqtt/translations/fy.json +9 -0
  294. homeassistant/components/mqtt/translations/ga.json +26 -1
  295. homeassistant/components/mqtt/translations/pt.json +21 -0
  296. homeassistant/components/mqtt/translations/ru.json +19 -0
  297. homeassistant/components/mqtt/translations/zh-Hant.json +3 -1
  298. homeassistant/components/music_assistant/translations/fr.json +7 -0
  299. homeassistant/components/nina/strings.json +2 -2
  300. homeassistant/components/nina/translations/ca.json +0 -2
  301. homeassistant/components/nina/translations/cs.json +3 -3
  302. homeassistant/components/nina/translations/de.json +3 -3
  303. homeassistant/components/nina/translations/el.json +0 -1
  304. homeassistant/components/nina/translations/en-GB.json +3 -3
  305. homeassistant/components/nina/translations/en.json +3 -3
  306. homeassistant/components/nina/translations/es.json +3 -3
  307. homeassistant/components/nina/translations/et.json +2 -2
  308. homeassistant/components/nina/translations/fi.json +0 -2
  309. homeassistant/components/nina/translations/ga.json +0 -2
  310. homeassistant/components/nina/translations/hu.json +0 -2
  311. homeassistant/components/nina/translations/id.json +0 -1
  312. homeassistant/components/nina/translations/it.json +0 -2
  313. homeassistant/components/nina/translations/ja.json +0 -2
  314. homeassistant/components/nina/translations/ko.json +0 -2
  315. homeassistant/components/nina/translations/lt.json +3 -3
  316. homeassistant/components/nina/translations/nl.json +0 -2
  317. homeassistant/components/nina/translations/pt-BR.json +0 -1
  318. homeassistant/components/nina/translations/pt.json +3 -3
  319. homeassistant/components/nina/translations/ro.json +0 -1
  320. homeassistant/components/nina/translations/ru.json +0 -2
  321. homeassistant/components/nina/translations/sk.json +3 -3
  322. homeassistant/components/nina/translations/sv.json +0 -2
  323. homeassistant/components/nina/translations/tr.json +0 -2
  324. homeassistant/components/nina/translations/uk.json +0 -1
  325. homeassistant/components/nina/translations/zh-Hans.json +3 -3
  326. homeassistant/components/nina/translations/zh-Hant.json +3 -3
  327. homeassistant/components/nordpool/translations/bg.json +8 -0
  328. homeassistant/components/nordpool/translations/ga.json +6 -0
  329. homeassistant/components/ntfy/translations/fy.json +30 -0
  330. homeassistant/components/number/const.py +2 -5
  331. homeassistant/components/number/strings.json +3 -0
  332. homeassistant/components/number/translations/cs.json +3 -0
  333. homeassistant/components/number/translations/de.json +3 -0
  334. homeassistant/components/number/translations/en-GB.json +3 -0
  335. homeassistant/components/number/translations/en.json +3 -0
  336. homeassistant/components/number/translations/es.json +3 -0
  337. homeassistant/components/number/translations/et.json +3 -0
  338. homeassistant/components/number/translations/pt.json +3 -0
  339. homeassistant/components/number/translations/zh-Hant.json +3 -0
  340. homeassistant/components/ohme/translations/fy.json +11 -0
  341. homeassistant/components/opower/translations/fy.json +5 -0
  342. homeassistant/components/pooldose/translations/bg.json +9 -0
  343. homeassistant/components/pooldose/translations/ga.json +8 -1
  344. homeassistant/components/portainer/__init__.py +25 -5
  345. homeassistant/components/portainer/config_flow.py +15 -10
  346. homeassistant/components/portainer/coordinator.py +2 -2
  347. homeassistant/components/portainer/strings.json +7 -5
  348. homeassistant/components/portainer/translations/bg.json +2 -2
  349. homeassistant/components/portainer/translations/ca.json +3 -2
  350. homeassistant/components/portainer/translations/cs.json +7 -5
  351. homeassistant/components/portainer/translations/de.json +7 -5
  352. homeassistant/components/portainer/translations/el.json +0 -8
  353. homeassistant/components/portainer/translations/en-GB.json +7 -5
  354. homeassistant/components/portainer/translations/en.json +7 -5
  355. homeassistant/components/portainer/translations/es.json +7 -5
  356. homeassistant/components/portainer/translations/et.json +7 -5
  357. homeassistant/components/portainer/translations/fr.json +18 -0
  358. homeassistant/components/portainer/translations/ga.json +0 -13
  359. homeassistant/components/portainer/translations/he.json +0 -8
  360. homeassistant/components/portainer/translations/lt.json +7 -5
  361. homeassistant/components/portainer/translations/nl.json +0 -8
  362. homeassistant/components/portainer/translations/pt.json +7 -5
  363. homeassistant/components/portainer/translations/ru.json +0 -13
  364. homeassistant/components/portainer/translations/sk.json +7 -5
  365. homeassistant/components/portainer/translations/sl.json +0 -13
  366. homeassistant/components/portainer/translations/zh-Hans.json +7 -5
  367. homeassistant/components/portainer/translations/zh-Hant.json +7 -5
  368. homeassistant/components/profiler/translations/es.json +4 -0
  369. homeassistant/components/profiler/translations/et.json +4 -0
  370. homeassistant/components/profiler/translations/ga.json +4 -0
  371. homeassistant/components/profiler/translations/pt.json +4 -0
  372. homeassistant/components/pyload/translations/zh-Hant.json +1 -1
  373. homeassistant/components/random/strings.json +1 -0
  374. homeassistant/components/random/translations/cs.json +1 -0
  375. homeassistant/components/random/translations/de.json +1 -0
  376. homeassistant/components/random/translations/en-GB.json +1 -0
  377. homeassistant/components/random/translations/en.json +1 -0
  378. homeassistant/components/random/translations/es.json +1 -0
  379. homeassistant/components/random/translations/et.json +1 -0
  380. homeassistant/components/random/translations/pt.json +1 -0
  381. homeassistant/components/random/translations/zh-Hant.json +1 -0
  382. homeassistant/components/recorder/statistics.py +0 -5
  383. homeassistant/components/recorder/websocket_api.py +0 -4
  384. homeassistant/components/rehlko/translations/fy.json +16 -0
  385. homeassistant/components/reolink/manifest.json +1 -1
  386. homeassistant/components/route_b_smart_meter/translations/bg.json +24 -0
  387. homeassistant/components/route_b_smart_meter/translations/es.json +42 -0
  388. homeassistant/components/route_b_smart_meter/translations/et.json +42 -0
  389. homeassistant/components/route_b_smart_meter/translations/fr.json +36 -0
  390. homeassistant/components/route_b_smart_meter/translations/fy.json +14 -0
  391. homeassistant/components/route_b_smart_meter/translations/ga.json +42 -0
  392. homeassistant/components/route_b_smart_meter/translations/lt.json +42 -0
  393. homeassistant/components/route_b_smart_meter/translations/pt.json +42 -0
  394. homeassistant/components/russound_rio/manifest.json +1 -1
  395. homeassistant/components/satel_integra/__init__.py +6 -0
  396. homeassistant/components/satel_integra/translations/bg.json +102 -0
  397. homeassistant/components/satel_integra/translations/et.json +1 -0
  398. homeassistant/components/scrape/strings.json +2 -0
  399. homeassistant/components/scrape/translations/cs.json +2 -0
  400. homeassistant/components/scrape/translations/de.json +2 -0
  401. homeassistant/components/scrape/translations/en-GB.json +2 -0
  402. homeassistant/components/scrape/translations/en.json +2 -0
  403. homeassistant/components/scrape/translations/es.json +2 -0
  404. homeassistant/components/scrape/translations/et.json +2 -0
  405. homeassistant/components/scrape/translations/pt.json +2 -0
  406. homeassistant/components/scrape/translations/zh-Hant.json +2 -0
  407. homeassistant/components/sensibo/translations/pl.json +1 -0
  408. homeassistant/components/sensor/const.py +2 -7
  409. homeassistant/components/sensor/strings.json +3 -0
  410. homeassistant/components/sensor/translations/cs.json +3 -0
  411. homeassistant/components/sensor/translations/de.json +3 -0
  412. homeassistant/components/sensor/translations/en-GB.json +3 -0
  413. homeassistant/components/sensor/translations/en.json +3 -0
  414. homeassistant/components/sensor/translations/es.json +3 -0
  415. homeassistant/components/sensor/translations/et.json +3 -0
  416. homeassistant/components/sensor/translations/pt.json +3 -0
  417. homeassistant/components/sensor/translations/sk.json +3 -0
  418. homeassistant/components/sensor/translations/zh-Hant.json +3 -0
  419. homeassistant/components/sensorpush_cloud/translations/fy.json +11 -0
  420. homeassistant/components/shelly/icons.json +3 -0
  421. homeassistant/components/shelly/sensor.py +83 -3
  422. homeassistant/components/shelly/strings.json +12 -0
  423. homeassistant/components/shelly/translations/bg.json +19 -0
  424. homeassistant/components/shelly/translations/cs.json +12 -0
  425. homeassistant/components/shelly/translations/de.json +12 -0
  426. homeassistant/components/shelly/translations/en-GB.json +12 -0
  427. homeassistant/components/shelly/translations/en.json +12 -0
  428. homeassistant/components/shelly/translations/es.json +12 -0
  429. homeassistant/components/shelly/translations/et.json +12 -0
  430. homeassistant/components/shelly/translations/lt.json +12 -0
  431. homeassistant/components/shelly/translations/lv.json +6 -0
  432. homeassistant/components/shelly/translations/pl.json +16 -0
  433. homeassistant/components/shelly/translations/pt.json +12 -0
  434. homeassistant/components/shelly/translations/sk.json +12 -0
  435. homeassistant/components/shelly/translations/zh-Hant.json +12 -0
  436. homeassistant/components/sma/translations/fy.json +16 -0
  437. homeassistant/components/smartthings/translations/es.json +21 -0
  438. homeassistant/components/smartthings/translations/et.json +21 -0
  439. homeassistant/components/smartthings/translations/fr.json +12 -0
  440. homeassistant/components/smartthings/translations/ga.json +15 -0
  441. homeassistant/components/smartthings/translations/lt.json +21 -0
  442. homeassistant/components/smartthings/translations/pt.json +21 -0
  443. homeassistant/components/snoo/translations/fy.json +9 -0
  444. homeassistant/components/sql/strings.json +1 -0
  445. homeassistant/components/sql/translations/cs.json +1 -0
  446. homeassistant/components/sql/translations/de.json +1 -0
  447. homeassistant/components/sql/translations/en-GB.json +1 -0
  448. homeassistant/components/sql/translations/en.json +1 -0
  449. homeassistant/components/sql/translations/es.json +1 -0
  450. homeassistant/components/sql/translations/et.json +1 -0
  451. homeassistant/components/sql/translations/pt.json +1 -0
  452. homeassistant/components/sql/translations/zh-Hant.json +1 -0
  453. homeassistant/components/switch_as_x/translations/da.json +7 -0
  454. homeassistant/components/switchbot/translations/fy.json +7 -0
  455. homeassistant/components/template/strings.json +1 -0
  456. homeassistant/components/template/translations/cs.json +1 -0
  457. homeassistant/components/template/translations/da.json +17 -0
  458. homeassistant/components/template/translations/de.json +1 -0
  459. homeassistant/components/template/translations/en-GB.json +1 -0
  460. homeassistant/components/template/translations/en.json +1 -0
  461. homeassistant/components/template/translations/es.json +1 -0
  462. homeassistant/components/template/translations/et.json +1 -0
  463. homeassistant/components/template/translations/mk.json +9 -0
  464. homeassistant/components/template/translations/pt.json +1 -0
  465. homeassistant/components/template/translations/zh-Hant.json +1 -0
  466. homeassistant/components/thread/config_flow.py +11 -3
  467. homeassistant/components/thread/manifest.json +1 -0
  468. homeassistant/components/togrill/coordinator.py +24 -6
  469. homeassistant/components/tolo/translations/bg.json +2 -1
  470. homeassistant/components/tolo/translations/es.json +2 -1
  471. homeassistant/components/tolo/translations/ga.json +2 -1
  472. homeassistant/components/traccar_server/translations/fy.json +9 -0
  473. homeassistant/components/tuya/translations/da.json +8 -0
  474. homeassistant/components/tuya/translations/es.json +9 -0
  475. homeassistant/components/tuya/translations/et.json +9 -0
  476. homeassistant/components/tuya/translations/ga.json +9 -0
  477. homeassistant/components/tuya/translations/pt.json +9 -0
  478. homeassistant/components/uptime_kuma/translations/zh-Hant.json +1 -1
  479. homeassistant/components/usage_prediction/translations/et.json +3 -0
  480. homeassistant/components/valve/translations/da.json +1 -0
  481. homeassistant/components/valve/translations/pl.json +2 -1
  482. homeassistant/components/velbus/translations/fy.json +11 -0
  483. homeassistant/components/vesync/binary_sensor.py +1 -1
  484. homeassistant/components/vesync/fan.py +3 -1
  485. homeassistant/components/vesync/translations/fy.json +9 -0
  486. homeassistant/components/vicare/const.py +1 -0
  487. homeassistant/components/victron_remote_monitoring/translations/bg.json +71 -0
  488. homeassistant/components/voip/translations/sv.json +1 -1
  489. homeassistant/components/volvo/sensor.py +12 -6
  490. homeassistant/components/volvooncall/translations/ga.json +18 -1
  491. homeassistant/components/webdav/translations/fy.json +11 -0
  492. homeassistant/components/workday/calendar.py +5 -5
  493. homeassistant/components/workday/config_flow.py +1 -0
  494. homeassistant/components/workday/translations/bg.json +5 -0
  495. homeassistant/components/wyoming/translations/sv.json +1 -1
  496. homeassistant/components/wyoming/translations/zh-Hant.json +1 -1
  497. homeassistant/components/xiaomi_miio/translations/fy.json +7 -0
  498. homeassistant/components/zha/config_flow.py +54 -21
  499. homeassistant/components/zha/manifest.json +1 -1
  500. homeassistant/components/zha/radio_manager.py +4 -0
  501. homeassistant/components/zha/strings.json +9 -9
  502. homeassistant/components/zha/translations/bg.json +55 -7
  503. homeassistant/components/zha/translations/ca.json +0 -7
  504. homeassistant/components/zha/translations/cs.json +10 -10
  505. homeassistant/components/zha/translations/da.json +0 -9
  506. homeassistant/components/zha/translations/de.json +10 -10
  507. homeassistant/components/zha/translations/el.json +0 -9
  508. homeassistant/components/zha/translations/en-GB.json +10 -10
  509. homeassistant/components/zha/translations/en.json +10 -10
  510. homeassistant/components/zha/translations/es.json +87 -9
  511. homeassistant/components/zha/translations/et.json +84 -6
  512. homeassistant/components/zha/translations/fi.json +0 -9
  513. homeassistant/components/zha/translations/fr.json +0 -17
  514. homeassistant/components/zha/translations/ga.json +66 -9
  515. homeassistant/components/zha/translations/gsw.json +0 -7
  516. homeassistant/components/zha/translations/hr.json +0 -4
  517. homeassistant/components/zha/translations/hu.json +0 -9
  518. homeassistant/components/zha/translations/id.json +0 -9
  519. homeassistant/components/zha/translations/it.json +0 -9
  520. homeassistant/components/zha/translations/ja.json +0 -9
  521. homeassistant/components/zha/translations/ko.json +0 -9
  522. homeassistant/components/zha/translations/lt.json +0 -17
  523. homeassistant/components/zha/translations/nb.json +0 -7
  524. homeassistant/components/zha/translations/nl.json +0 -8
  525. homeassistant/components/zha/translations/pl.json +0 -7
  526. homeassistant/components/zha/translations/pt-BR.json +0 -7
  527. homeassistant/components/zha/translations/pt.json +86 -8
  528. homeassistant/components/zha/translations/ro.json +0 -7
  529. homeassistant/components/zha/translations/ru.json +4 -11
  530. homeassistant/components/zha/translations/sk.json +10 -10
  531. homeassistant/components/zha/translations/sl.json +0 -9
  532. homeassistant/components/zha/translations/sv.json +0 -9
  533. homeassistant/components/zha/translations/tr.json +0 -9
  534. homeassistant/components/zha/translations/uk.json +0 -7
  535. homeassistant/components/zha/translations/vi.json +0 -7
  536. homeassistant/components/zha/translations/zh-Hans.json +0 -17
  537. homeassistant/components/zha/translations/zh-Hant.json +10 -10
  538. homeassistant/components/zwave_js/config_flow.py +30 -11
  539. homeassistant/components/zwave_js/translations/es.json +1 -0
  540. homeassistant/components/zwave_js/translations/et.json +1 -0
  541. homeassistant/components/zwave_js/translations/ga.json +1 -0
  542. homeassistant/components/zwave_js/translations/pt.json +1 -0
  543. homeassistant/const.py +1 -1
  544. homeassistant/generated/integrations.json +3 -2
  545. homeassistant/package_constraints.txt +1 -1
  546. homeassistant/util/unit_conversion.py +0 -16
  547. {homeassistant-2025.10.0b2.dist-info → homeassistant-2025.10.0b5.dist-info}/METADATA +1 -1
  548. {homeassistant-2025.10.0b2.dist-info → homeassistant-2025.10.0b5.dist-info}/RECORD +553 -503
  549. homeassistant/components/homeassistant_sky_connect/translations/hr.json +0 -7
  550. {homeassistant-2025.10.0b2.dist-info → homeassistant-2025.10.0b5.dist-info}/WHEEL +0 -0
  551. {homeassistant-2025.10.0b2.dist-info → homeassistant-2025.10.0b5.dist-info}/entry_points.txt +0 -0
  552. {homeassistant-2025.10.0b2.dist-info → homeassistant-2025.10.0b5.dist-info}/licenses/LICENSE.md +0 -0
  553. {homeassistant-2025.10.0b2.dist-info → homeassistant-2025.10.0b5.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  554. {homeassistant-2025.10.0b2.dist-info → homeassistant-2025.10.0b5.dist-info}/top_level.txt +0 -0
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "V\u00fdkon"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2,5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "Leistung"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "Power"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "Power"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "Potencia"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2,5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "V\u00f5imsus"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "Pot\u00eancia"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "\u96fb\u529b"
122
125
  },
@@ -0,0 +1,11 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "reconfigure": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ }
11
+ }
@@ -1,6 +1,11 @@
1
1
  {
2
2
  "config": {
3
3
  "step": {
4
+ "credentials": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ },
4
9
  "reauth_confirm": {
5
10
  "data": {
6
11
  "password": "Wachtwurd",
@@ -0,0 +1,9 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
5
+ "no_device_info": "\u041d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u0432\u043b\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0437\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e",
6
+ "no_serial_number": "\u041d\u0435 \u0435 \u043d\u0430\u043c\u0435\u0440\u0435\u043d \u0441\u0435\u0440\u0438\u0435\u043d \u043d\u043e\u043c\u0435\u0440 \u043d\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e"
7
+ }
8
+ }
9
+ }
@@ -1,7 +1,10 @@
1
1
  {
2
2
  "config": {
3
3
  "abort": {
4
- "already_configured": "T\u00e1 an gl\u00e9as cumraithe cheana f\u00e9in"
4
+ "already_configured": "T\u00e1 an gl\u00e9as cumraithe cheana f\u00e9in",
5
+ "cannot_connect": "Theip ar an nascadh",
6
+ "no_device_info": "Unable to retrieve device information",
7
+ "no_serial_number": "N\u00edor aims\u00edodh aon uimhir sraitheach ar an bhfeiste"
5
8
  },
6
9
  "error": {
7
10
  "api_not_set": "Leagan API gan teacht i bhfreagairt na gl\u00e9is. B\u2019fh\u00e9idir nach bhfuil firmware na gl\u00e9is comhoiri\u00fanach leis an gcomhth\u00e1th\u00fa seo.",
@@ -13,6 +16,10 @@
13
16
  "unknown": "Earr\u00e1id gan choinne"
14
17
  },
15
18
  "step": {
19
+ "dhcp_confirm": {
20
+ "description": "Fuarthas gl\u00e9as PoolDose ar do l\u00edonra ag {ip} le seoladh MAC {mac}.\n\nAr mhaith leat {name} a chur le Home Assistant?",
21
+ "title": "Deimhnigh gur aimsigh DHCP gl\u00e9as PoolDose"
22
+ },
16
23
  "user": {
17
24
  "data": {
18
25
  "host": "\u00d3stach"
@@ -5,7 +5,14 @@ from __future__ import annotations
5
5
  from pyportainer import Portainer
6
6
 
7
7
  from homeassistant.config_entries import ConfigEntry
8
- from homeassistant.const import CONF_API_KEY, CONF_HOST, Platform
8
+ from homeassistant.const import (
9
+ CONF_API_KEY,
10
+ CONF_API_TOKEN,
11
+ CONF_HOST,
12
+ CONF_URL,
13
+ CONF_VERIFY_SSL,
14
+ Platform,
15
+ )
9
16
  from homeassistant.core import HomeAssistant
10
17
  from homeassistant.helpers.aiohttp_client import async_create_clientsession
11
18
 
@@ -19,11 +26,12 @@ type PortainerConfigEntry = ConfigEntry[PortainerCoordinator]
19
26
  async def async_setup_entry(hass: HomeAssistant, entry: PortainerConfigEntry) -> bool:
20
27
  """Set up Portainer from a config entry."""
21
28
 
22
- session = async_create_clientsession(hass)
23
29
  client = Portainer(
24
- api_url=entry.data[CONF_HOST],
25
- api_key=entry.data[CONF_API_KEY],
26
- session=session,
30
+ api_url=entry.data[CONF_URL],
31
+ api_key=entry.data[CONF_API_TOKEN],
32
+ session=async_create_clientsession(
33
+ hass=hass, verify_ssl=entry.data[CONF_VERIFY_SSL]
34
+ ),
27
35
  )
28
36
 
29
37
  coordinator = PortainerCoordinator(hass, entry, client)
@@ -38,3 +46,15 @@ async def async_setup_entry(hass: HomeAssistant, entry: PortainerConfigEntry) ->
38
46
  async def async_unload_entry(hass: HomeAssistant, entry: PortainerConfigEntry) -> bool:
39
47
  """Unload a config entry."""
40
48
  return await hass.config_entries.async_unload_platforms(entry, _PLATFORMS)
49
+
50
+
51
+ async def async_migrate_entry(hass: HomeAssistant, entry: PortainerConfigEntry) -> bool:
52
+ """Migrate old entry."""
53
+
54
+ if entry.version < 2:
55
+ data = dict(entry.data)
56
+ data[CONF_URL] = data.pop(CONF_HOST)
57
+ data[CONF_API_TOKEN] = data.pop(CONF_API_KEY)
58
+ hass.config_entries.async_update_entry(entry=entry, data=data, version=2)
59
+
60
+ return True
@@ -14,7 +14,7 @@ from pyportainer import (
14
14
  import voluptuous as vol
15
15
 
16
16
  from homeassistant.config_entries import ConfigFlow, ConfigFlowResult
17
- from homeassistant.const import CONF_API_KEY, CONF_HOST
17
+ from homeassistant.const import CONF_API_TOKEN, CONF_URL, CONF_VERIFY_SSL
18
18
  from homeassistant.core import HomeAssistant
19
19
  from homeassistant.exceptions import HomeAssistantError
20
20
  from homeassistant.helpers.aiohttp_client import async_get_clientsession
@@ -24,8 +24,9 @@ from .const import DOMAIN
24
24
  _LOGGER = logging.getLogger(__name__)
25
25
  STEP_USER_DATA_SCHEMA = vol.Schema(
26
26
  {
27
- vol.Required(CONF_HOST): str,
28
- vol.Required(CONF_API_KEY): str,
27
+ vol.Required(CONF_URL): str,
28
+ vol.Required(CONF_API_TOKEN): str,
29
+ vol.Optional(CONF_VERIFY_SSL, default=True): bool,
29
30
  }
30
31
  )
31
32
 
@@ -34,9 +35,11 @@ async def _validate_input(hass: HomeAssistant, data: dict[str, Any]) -> None:
34
35
  """Validate the user input allows us to connect."""
35
36
 
36
37
  client = Portainer(
37
- api_url=data[CONF_HOST],
38
- api_key=data[CONF_API_KEY],
39
- session=async_get_clientsession(hass),
38
+ api_url=data[CONF_URL],
39
+ api_key=data[CONF_API_TOKEN],
40
+ session=async_get_clientsession(
41
+ hass=hass, verify_ssl=data.get(CONF_VERIFY_SSL, True)
42
+ ),
40
43
  )
41
44
  try:
42
45
  await client.get_endpoints()
@@ -47,19 +50,21 @@ async def _validate_input(hass: HomeAssistant, data: dict[str, Any]) -> None:
47
50
  except PortainerTimeoutError as err:
48
51
  raise PortainerTimeout from err
49
52
 
50
- _LOGGER.debug("Connected to Portainer API: %s", data[CONF_HOST])
53
+ _LOGGER.debug("Connected to Portainer API: %s", data[CONF_URL])
51
54
 
52
55
 
53
56
  class PortainerConfigFlow(ConfigFlow, domain=DOMAIN):
54
57
  """Handle a config flow for Portainer."""
55
58
 
59
+ VERSION = 2
60
+
56
61
  async def async_step_user(
57
62
  self, user_input: dict[str, Any] | None = None
58
63
  ) -> ConfigFlowResult:
59
64
  """Handle the initial step."""
60
65
  errors: dict[str, str] = {}
61
66
  if user_input is not None:
62
- self._async_abort_entries_match({CONF_HOST: user_input[CONF_HOST]})
67
+ self._async_abort_entries_match({CONF_URL: user_input[CONF_URL]})
63
68
  try:
64
69
  await _validate_input(self.hass, user_input)
65
70
  except CannotConnect:
@@ -72,10 +77,10 @@ class PortainerConfigFlow(ConfigFlow, domain=DOMAIN):
72
77
  _LOGGER.exception("Unexpected exception")
73
78
  errors["base"] = "unknown"
74
79
  else:
75
- await self.async_set_unique_id(user_input[CONF_API_KEY])
80
+ await self.async_set_unique_id(user_input[CONF_API_TOKEN])
76
81
  self._abort_if_unique_id_configured()
77
82
  return self.async_create_entry(
78
- title=user_input[CONF_HOST], data=user_input
83
+ title=user_input[CONF_URL], data=user_input
79
84
  )
80
85
 
81
86
  return self.async_show_form(
@@ -16,7 +16,7 @@ from pyportainer.models.docker import DockerContainer
16
16
  from pyportainer.models.portainer import Endpoint
17
17
 
18
18
  from homeassistant.config_entries import ConfigEntry
19
- from homeassistant.const import CONF_HOST
19
+ from homeassistant.const import CONF_URL
20
20
  from homeassistant.core import HomeAssistant
21
21
  from homeassistant.exceptions import ConfigEntryError, ConfigEntryNotReady
22
22
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
@@ -87,7 +87,7 @@ class PortainerCoordinator(DataUpdateCoordinator[dict[int, PortainerCoordinatorD
87
87
  async def _async_update_data(self) -> dict[int, PortainerCoordinatorData]:
88
88
  """Fetch data from Portainer API."""
89
89
  _LOGGER.debug(
90
- "Fetching data from Portainer API: %s", self.config_entry.data[CONF_HOST]
90
+ "Fetching data from Portainer API: %s", self.config_entry.data[CONF_URL]
91
91
  )
92
92
 
93
93
  try:
@@ -3,14 +3,16 @@
3
3
  "step": {
4
4
  "user": {
5
5
  "data": {
6
- "host": "[%key:common::config_flow::data::host%]",
7
- "api_key": "[%key:common::config_flow::data::api_key%]"
6
+ "url": "[%key:common::config_flow::data::url%]",
7
+ "api_token": "[%key:common::config_flow::data::api_token%]",
8
+ "verify_ssl": "[%key:common::config_flow::data::verify_ssl%]"
8
9
  },
9
10
  "data_description": {
10
- "host": "The host/URL, including the port, of your Portainer instance",
11
- "api_key": "The API key for authenticating with Portainer"
11
+ "url": "The URL, including the port, of your Portainer instance",
12
+ "api_token": "The API access token for authenticating with Portainer",
13
+ "verify_ssl": "Whether to verify SSL certificates. Disable only if you have a self-signed certificate"
12
14
  },
13
- "description": "You can create an API key in the Portainer UI. Go to **My account > API keys** and select **Add API key**"
15
+ "description": "You can create an access token in the Portainer UI. Go to **My account > Access tokens** and select **Add access token**"
14
16
  }
15
17
  },
16
18
  "error": {
@@ -11,8 +11,8 @@
11
11
  "step": {
12
12
  "user": {
13
13
  "data": {
14
- "api_key": "API \u043a\u043b\u044e\u0447",
15
- "host": "\u0425\u043e\u0441\u0442"
14
+ "url": "URL",
15
+ "verify_ssl": "\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 SSL \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430"
16
16
  }
17
17
  }
18
18
  }
@@ -12,8 +12,9 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "Clau API",
16
- "host": "Amfitri\u00f3"
15
+ "api_token": "Token d'API",
16
+ "url": "URL",
17
+ "verify_ssl": "Verifica el certificat SSL"
17
18
  }
18
19
  }
19
20
  }
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "Kl\u00ed\u010d API",
16
- "host": "Hostitel"
15
+ "api_token": "Token API",
16
+ "url": "URL",
17
+ "verify_ssl": "Ov\u011b\u0159it certifik\u00e1t SSL"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "Kl\u00ed\u010d API pro ov\u011b\u0159en\u00ed pomoc\u00ed Portainer",
20
- "host": "Hostitel/URL adresa (v\u010detn\u011b portu) va\u0161\u00ed instance Portainer"
20
+ "api_token": "P\u0159\u00edstupov\u00fd token API pro ov\u011b\u0159ov\u00e1n\u00ed pomoc\u00ed Portaineru",
21
+ "url": "URL adresa va\u0161\u00ed instance Portaineru, v\u010detn\u011b portu",
22
+ "verify_ssl": "Zda ov\u011b\u0159ovat SSL certifik\u00e1ty. Zaka\u017ete jen v p\u0159\u00edpad\u011b, \u017ee m\u00e1te certifik\u00e1t podepsan\u00fd dr\u017eitelem."
21
23
  },
22
- "description": "Kl\u00ed\u010d API si m\u016f\u017eete vytvo\u0159it v u\u017eivatelsk\u00e9m rozhran\u00ed Portainer. P\u0159ejd\u011bte do sekce **My account > API keys** a vyberte **Add API key**."
24
+ "description": "P\u0159\u00edstupov\u00fd token si m\u016f\u017eete vytvo\u0159it v u\u017eivatelsk\u00e9m rozhran\u00ed Portaineru. P\u0159ejd\u011bte do sekce **My account > Access tokens** a vyberte volbu **Add access token**."
23
25
  }
24
26
  }
25
27
  },
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "API-Schl\u00fcssel",
16
- "host": "Host"
15
+ "api_token": "API-Token",
16
+ "url": "URL",
17
+ "verify_ssl": "SSL-Zertifikat \u00fcberpr\u00fcfen"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "Der API-Schl\u00fcssel zur Authentifizierung bei Portainer",
20
- "host": "Der Host/die URL, einschlie\u00dflich des Ports, deiner Portainer-Instanz"
20
+ "api_token": "Das API-Zugriffstoken zur Authentifizierung bei Portainer",
21
+ "url": "Die URL, einschlie\u00dflich des Ports, deiner Portainer-Instanz",
22
+ "verify_ssl": "Ob SSL-Zertifikate \u00fcberpr\u00fcft werden sollen. Deaktiviere diese Option nur, wenn du ein selbstsigniertes Zertifikat hast."
21
23
  },
22
- "description": "Du kannst einen API-Schl\u00fcssel in der Portainer-Benutzeroberfl\u00e4che erstellen. Gehe zu **My account > API keys** und w\u00e4hle **Add API key**"
24
+ "description": "Du kannst ein Zugriffstoken in der Portainer-Benutzeroberfl\u00e4che erstellen. Gehe zu **My account > Access tokens** und w\u00e4hle **Add access token**"
23
25
  }
24
26
  }
25
27
  },
@@ -8,14 +8,6 @@
8
8
  "invalid_auth": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03bf\u03c2 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2",
9
9
  "timeout_connect": "\u03a7\u03c1\u03bf\u03bd\u03b9\u03ba\u03cc \u03cc\u03c1\u03b9\u03bf \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03af\u03b1\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2",
10
10
  "unknown": "\u039c\u03b7 \u03b1\u03bd\u03b1\u03bc\u03b5\u03bd\u03cc\u03bc\u03b5\u03bd\u03bf \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1"
11
- },
12
- "step": {
13
- "user": {
14
- "data": {
15
- "api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API",
16
- "host": "\u039a\u03b5\u03bd\u03c4\u03c1\u03b9\u03ba\u03cc\u03c2 \u03c5\u03c0\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03c4\u03ae\u03c2"
17
- }
18
- }
19
11
  }
20
12
  }
21
13
  }
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "API key",
16
- "host": "Host"
15
+ "api_token": "API token",
16
+ "url": "URL",
17
+ "verify_ssl": "Verify SSL certificate"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "The API key for authenticating with Portainer",
20
- "host": "The host/URL, including the port, of your Portainer instance"
20
+ "api_token": "The API access token for authenticating with Portainer",
21
+ "url": "The URL, including the port, of your Portainer instance",
22
+ "verify_ssl": "Whether to verify SSL certificates. Disable only if you have a self-signed certificate"
21
23
  },
22
- "description": "You can create an API key in the Portainer UI. Go to **My account > API keys** and select **Add API key**"
24
+ "description": "You can create an access token in the Portainer UI. Go to **My account > Access tokens** and select **Add access token**"
23
25
  }
24
26
  }
25
27
  },
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "API key",
16
- "host": "Host"
15
+ "api_token": "API token",
16
+ "url": "URL",
17
+ "verify_ssl": "Verify SSL certificate"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "The API key for authenticating with Portainer",
20
- "host": "The host/URL, including the port, of your Portainer instance"
20
+ "api_token": "The API access token for authenticating with Portainer",
21
+ "url": "The URL, including the port, of your Portainer instance",
22
+ "verify_ssl": "Whether to verify SSL certificates. Disable only if you have a self-signed certificate"
21
23
  },
22
- "description": "You can create an API key in the Portainer UI. Go to **My account > API keys** and select **Add API key**"
24
+ "description": "You can create an access token in the Portainer UI. Go to **My account > Access tokens** and select **Add access token**"
23
25
  }
24
26
  }
25
27
  },
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "Clave API",
16
- "host": "Host"
15
+ "api_token": "Token API",
16
+ "url": "URL",
17
+ "verify_ssl": "Verificar el certificado SSL"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "La clave API para autenticarse con Portainer",
20
- "host": "El host/URL, incluido el puerto, de tu instancia Portainer"
20
+ "api_token": "El token de acceso a la API para autenticarse con Portainer",
21
+ "url": "La URL, incluido el puerto, de tu instancia de Portainer",
22
+ "verify_ssl": "Si se deben verificar los certificados SSL. Desact\u00edvalo solo si tienes un certificado autofirmado."
21
23
  },
22
- "description": "Puedes crear una clave API en la interfaz de usuario de Portainer. Ve a **Mi cuenta > Claves API** y selecciona **A\u00f1adir clave API**."
24
+ "description": "Puedes crear un token de acceso en la IU de Portainer. Ve a **Mi cuenta > Tokens de acceso** y selecciona **A\u00f1adir token de acceso**."
23
25
  }
24
26
  }
25
27
  },
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "API v\u00f5ti",
16
- "host": "Host"
15
+ "api_token": "API v\u00f5ti",
16
+ "url": "URL",
17
+ "verify_ssl": "Kontrolli SSL sertifikaati"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "API v\u00f5ti Portaineriga autentimiseks",
20
- "host": "Portainer'i instantsi host/URL, sealhulgas port"
20
+ "api_token": "API juurdep\u00e4\u00e4suluba Portaineriga tuvastamiseks",
21
+ "url": "Portaineri eksemplari URL koos pordiga",
22
+ "verify_ssl": "Kas SSL-sertifikaate kontrollida? Keela ainult siis, kui sul on iseallkirjastatud sertifikaat."
21
23
  },
22
- "description": "API-v\u00f5tme saab luua Portaineri kasutajaliideses. Mine **Minu konto > API-v\u00f5tmed** ja vali **Lisa API-v\u00f5ti**."
24
+ "description": "Juurdep\u00e4\u00e4sut\u00f5endi saad luua Portaineri kasutajaliideses. Mine jaotisse **Minu konto > Juurdep\u00e4\u00e4sut\u00f5endid** ja vali **Lisa juurdep\u00e4\u00e4suluba**"
23
25
  }
24
26
  }
25
27
  },
@@ -0,0 +1,18 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "user": {
5
+ "data": {
6
+ "api_token": "Jeton d\u2019API",
7
+ "url": "URL",
8
+ "verify_ssl": "V\u00e9rifier le certificat SSL"
9
+ },
10
+ "data_description": {
11
+ "api_token": "Le jeton d'acc\u00e8s API pour l'authentification avec Portainer",
12
+ "url": "L'URL, y compris le port, de votre instance Portainer",
13
+ "verify_ssl": "V\u00e9rification des certificats SSL. D\u00e9sactiver uniquement si vous poss\u00e9dez un certificat auto-sign\u00e9."
14
+ }
15
+ }
16
+ }
17
+ }
18
+ }
@@ -8,19 +8,6 @@
8
8
  "invalid_auth": "F\u00edordheimhni\u00fa neamhbhail\u00ed",
9
9
  "timeout_connect": "Am cr\u00edochnaithe ag bun\u00fa nasc",
10
10
  "unknown": "Earr\u00e1id gan choinne"
11
- },
12
- "step": {
13
- "user": {
14
- "data": {
15
- "api_key": "Eochair API",
16
- "host": "\u00d3stach"
17
- },
18
- "data_description": {
19
- "api_key": "An eochair API le haghaidh f\u00edordheimhni\u00fa le Portainer",
20
- "host": "An t-\u00f3stach/URL, an port san \u00e1ireamh, de d\u2019eisp\u00e9ireas Portainer"
21
- },
22
- "description": "Is f\u00e9idir leat eochair API a chruth\u00fa i gcomh\u00e9adan \u00fas\u00e1ideora Portainer. T\u00e9igh go **Mo chuntas > eochracha API** agus roghnaigh **Cuir eochair API leis**"
23
- }
24
11
  }
25
12
  },
26
13
  "device": {
@@ -8,14 +8,6 @@
8
8
  "invalid_auth": "\u05d0\u05d9\u05de\u05d5\u05ea \u05dc\u05d0 \u05d7\u05d5\u05e7\u05d9",
9
9
  "timeout_connect": "\u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d9\u05e6\u05d9\u05e8\u05ea \u05d7\u05d9\u05d1\u05d5\u05e8",
10
10
  "unknown": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9\u05d4"
11
- },
12
- "step": {
13
- "user": {
14
- "data": {
15
- "api_key": "\u05de\u05e4\u05ea\u05d7 API",
16
- "host": "\u05de\u05d0\u05e8\u05d7"
17
- }
18
- }
19
11
  }
20
12
  }
21
13
  }
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "API raktas",
16
- "host": "Host"
15
+ "api_token": "API prieigos raktas",
16
+ "url": "URL",
17
+ "verify_ssl": "Patikrinkite SSL sertifikat\u0105"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "API raktas autentifikavimui naudojant Portainer",
20
- "host": "J\u016bs\u0173 Portainer egzemplioriaus pagrindinis kompiuteris / URL, \u012fskaitant prievad\u0105"
20
+ "api_token": "API prieigos raktas autentifikavimui naudojant Portainer",
21
+ "url": "J\u016bs\u0173 Portainer egzemplioriaus URL, \u012fskaitant prievad\u0105",
22
+ "verify_ssl": "Ar tikrinti SSL sertifikatus. I\u0161junkite tik tuo atveju, jei turite savaranki\u0161kai pasira\u0161yt\u0105 sertifikat\u0105."
21
23
  },
22
- "description": "API rakt\u0105 galite sukurti Portainer vartotojo s\u0105sajoje. Eikite \u012f **Mano paskyra > API raktai** ir pasirinkite **Prid\u0117ti API rakt\u0105**."
24
+ "description": "Prieigos rakt\u0105 galite sukurti Portainer vartotojo s\u0105sajoje. Eikite \u012f **Mano paskyra > Prieigos raktai** ir pasirinkite **Prid\u0117ti prieigos rakt\u0105**."
23
25
  }
24
26
  }
25
27
  },
@@ -8,14 +8,6 @@
8
8
  "invalid_auth": "Ongeldige authenticatie",
9
9
  "timeout_connect": "Time-out bij het maken van verbinding",
10
10
  "unknown": "Onverwachte fout"
11
- },
12
- "step": {
13
- "user": {
14
- "data": {
15
- "api_key": "API-sleutel",
16
- "host": "Host"
17
- }
18
- }
19
11
  }
20
12
  }
21
13
  }
@@ -12,14 +12,16 @@
12
12
  "step": {
13
13
  "user": {
14
14
  "data": {
15
- "api_key": "Chave da API",
16
- "host": "Anfitri\u00e3o"
15
+ "api_token": "Token API",
16
+ "url": "URL",
17
+ "verify_ssl": "Verificar o certificado SSL"
17
18
  },
18
19
  "data_description": {
19
- "api_key": "A chave da API para autentica\u00e7\u00e3o com o Portainer",
20
- "host": "O anfitri\u00e3o/URL, incluindo a porta, da sua inst\u00e2ncia Portainer"
20
+ "api_token": "O token de acesso \u00e0 API para autentica\u00e7\u00e3o com o Portainer",
21
+ "url": "O URL, incluindo a porta, da sua inst\u00e2ncia Portainer",
22
+ "verify_ssl": "Se deve verificar os certificados SSL. Desativar apenas se tiver um certificado auto-assinado"
21
23
  },
22
- "description": "Pode criar uma chave de API na IU do Portainer. Aceda a **A minha conta > Chaves de API** e selecione **Adicionar chave de API**"
24
+ "description": "Pode criar um token de acesso na IU do Portainer. Aceda a **A minha conta > Tokens de acesso** e selecione **Adicionar token de acesso**"
23
25
  }
24
26
  }
25
27
  },