diff --git a/src/services/youtube.service.ts b/src/services/youtube.service.ts index 9be0828..7a0ec0a 100644 --- a/src/services/youtube.service.ts +++ b/src/services/youtube.service.ts @@ -202,6 +202,24 @@ export async function createYouTubeBroadcast( }; } +export async function getYouTubeBroadcastStatus( + accessToken: string, + broadcastId: string, +): Promise { + const res = await fetch( + `https://www.googleapis.com/youtube/v3/liveBroadcasts?part=status&id=${broadcastId}`, + { + headers: { Authorization: `Bearer ${accessToken}` }, + }, + ); + if (!res.ok) return null; + const data = (await res.json()) as any; + const items = data.items ?? []; + if (items.length === 0) return null; + // lifeCycleStatus: created, ready, testing, live, complete, revoked + return items[0].status?.lifeCycleStatus ?? null; +} + export async function transitionYouTubeBroadcast( accessToken: string, broadcastId: string,