is_live
Check if a YouTube video is currently broadcasting live. Gets live status, viewer count, and scheduled or actual start time.
Instructions
Check if a YouTube video is currently live.
Queries the YouTube Data API to determine if a video is currently
broadcasting live. Returns live status with viewer count and timing information.
Cached for 30 seconds since live status changes quickly.
Args:
video_id: YouTube video ID to check (e.g., "dQw4w9WgXcQ").
Returns:
Dictionary with:
- video_id: YouTube video ID
- is_live: Boolean indicating if video is currently live
- viewer_count: Current concurrent viewers (None if not live)
- scheduled_start_time: ISO 8601 scheduled start time (None if not scheduled)
- actual_start_time: ISO 8601 actual start time (None if not started)
- active_live_chat_id: Live chat ID (None if no chat or not live)
Example:
>>> status = is_live("dQw4w9WgXcQ")
>>> if status["is_live"]:
... print(f"Live now with {status['viewer_count']} viewers!")
Note:
- Costs 1 quota unit per request
- Cached for 30 seconds in youtube.api namespace
- Use search_live_videos() to find live streamsCaching Behavior:
Parameters that accept reference strings can accept a
ref_idfrom a previous tool callLarge results return ref_id + preview; use get_cached_result to paginate
All responses include ref_id for future reference
Ref input compatibility: Support depends on the tool's input schema/validation. Some strictly typed parameters may reject string ref_ids before resolution.
Full retrieval: Use get_cached_result(ref_id, full=True) to get the complete value.
Preview Size: server default. Override per-call with get_cached_result(ref_id, max_size=...).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| video_id | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||