YouTube Integration - ValidationError For Statistics.viewCount Field Missing
The Problem
The YouTube integration in Home Assistant Core is throwing a pydantic validation error during data fetching. This error occurs when the viewCount field is missing from the statistics returned for a YouTube channel, causing the integration to fail. This issue is affecting users running Home Assistant Core version 2025.4.3.
Expected Behavior
The YouTube integration should handle cases where optional fields like viewCount are missing without throwing an error. Alternatively, it should fallback gracefully to ensure seamless data fetching and integration functionality.
Actual Behavior
When the statistics.viewCount field is missing, the integration crashes with a ValidationError. This error prevents users from accessing the YouTube channel's statistics, hindering their ability to monitor and control their YouTube content.
What Version of Home Assistant Core Has the Issue?
The issue is present in Home Assistant Core version 2025.4.3. However, it is unclear which version was the last working version of Home Assistant Core.
What Type of Installation Are You Running?
The user is running Home Assistant Core in a container environment.
Integration Causing the Issue
The youtube integration is causing the issue.
Link to Integration Documentation on Our Website
The official documentation for the YouTube integration can be found on the Home Assistant website at https://www.home-assistant.io/integrations/youtube.
Diagnostics Information
A log file containing diagnostic information is available at home-assistant_youtube_2025-04-26T06-05-30.374Z.log.
Example YAML Snippet
# No YAML snippet provided
Anything in the Logs That Might Be Useful for Us?
The logs contain the following error message:
Failed setup, will retry: 1 validation error for YouTubeChannel statistics.viewCount Field required [type=missing, input_value={'subscriberCount': '1080...e, 'videoCount': '1018'}, input_type=dict] For further information visit https://errors.pydantic.dev/2.10/v/missing
Additional Information
No additional information is provided.
Possible Solutions
To resolve this issue, the YouTube integration in Home Assistant Core should be modified to handle cases where the viewCount field is missing without throwing an error. This can be achieved by adding a check to ensure that the viewCount field is present before attempting to access it. Alternatively, the integration can be modified to fallback gracefully when the viewCount field is missing.
Code Modifications
To modify the YouTube integration to handle missing viewCount fields, the following code changes can be made:
import pydantic
class YouTubeChannel(pydantic.BaseModel):
# ... other fields ...
view_count: int | None = None
@classmethod
def parse_obj(cls, obj):
# ... other parsing logic ...
if 'viewCount' not in obj:
obj['viewCount'] = None
return cls.parse_obj(obj)
Conclusion
Q: What is the issue with the YouTube integration in Home Assistant Core?
A: The YouTube integration in Home Assistant Core is throwing a pydantic validation error during data fetching when the viewCount field is missing from the statistics returned for a YouTube channel.
Q: What is the expected behavior of the YouTube integration?
A: The YouTube integration should handle cases where optional fields like viewCount are missing without throwing an error. Alternatively, it should fallback gracefully to ensure seamless data fetching and integration functionality.
Q: What is the actual behavior of the YouTube integration?
A: When the statistics.viewCount field is missing, the integration crashes with a ValidationError.
Q: What version of Home Assistant Core has the issue?
A: The issue is present in Home Assistant Core version 2025.4.3.
Q: What type of installation are you running?
A: The user is running Home Assistant Core in a container environment.
Q: What integration is causing the issue?
A: The youtube integration is causing the issue.
Q: Where can I find the official documentation for the YouTube integration?
A: The official documentation for the YouTube integration can be found on the Home Assistant website at https://www.home-assistant.io/integrations/youtube.
Q: What diagnostic information is available to help resolve the issue?
A: A log file containing diagnostic information is available at home-assistant_youtube_2025-04-26T06-05-30.374Z.log.
Q: What is the error message in the logs?
A: The logs contain the following error message:
Failed setup, will retry: 1 validation error for YouTubeChannel statistics.viewCount Field required [type=missing, input_value={'subscriberCount': '1080...e, 'videoCount': '1018'}, input_type=dict] For further information visit https://errors.pydantic.dev/2.10/v/missing
Q: How can I resolve the issue?
A: To resolve this issue, the YouTube integration in Home Assistant Core should be modified to handle cases where the viewCount field is missing without throwing an error. This can be achieved by adding a check to ensure that the viewCount field is present before attempting to access it, or by modifying the integration to fallback gracefully when the viewCount field is missing.
Q: What code modifications can be made to resolve the issue?
A: To modify the YouTube integration to handle missing viewCount fields, the following code changes can be made:
import pydantic
class YouTubeChannel(pydantic.BaseModel):
# ... other fields ...
view_count: int | None = None
@classmethod
def parse_obj(cls, obj):
# ... other parsing logic ...
if 'viewCount' not in obj:
obj['viewCount'] = None
return cls.parse_obj(obj)
Q: Can I get help resolving the issue?
A: Yes, you can reach to the Home Assistant community for help resolving the issue.