public sealed class Event : IMessage<Event>, IEquatable<Event>, IDeepCloneable<Event>, IBufferMessage, IMessage
Reference documentation and code samples for the Live Stream v1 API class Event.
Event is a sub-resource of a channel, which can be scheduled by the user to
execute operations on a channel resource without having to stop the channel.
When this field is set to true, the event will be executed at the earliest
time that the server can schedule the event and
[execution_time][google.cloud.video.livestream.v1.Event.execution_time]
will be populated with the time that the server actually schedules the
event.
The time to execute the event. If you set
[execute_now][google.cloud.video.livestream.v1.Event.execute_now] to
true, then do not set this field in the CreateEvent request. In
this case, the server schedules the event and populates this field. If you
set [execute_now][google.cloud.video.livestream.v1.Event.execute_now] to
false, then you must set this field to at least 10 seconds in the future
or else the event can't be created.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis document provides reference documentation for the \u003ccode\u003eEvent\u003c/code\u003e class within the Google Cloud Live Stream v1 API, which is used to schedule operations on a channel without stopping it.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eEvent\u003c/code\u003e class can perform actions such as inserting an ad break, switching input streams, muting/unmuting the stream, inserting a slate, or returning to the main program.\u003c/p\u003e\n"],["\u003cp\u003eEvents have properties like \u003ccode\u003eCreateTime\u003c/code\u003e, \u003ccode\u003eExecutionTime\u003c/code\u003e, \u003ccode\u003eState\u003c/code\u003e, and \u003ccode\u003eUpdateTime\u003c/code\u003e, which detail their lifecycle and execution status.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eEvent\u003c/code\u003e class has multiple versions available, with the latest being 1.8.0, and it implements interfaces like \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe Event class implements various tasks such as Ad Break, Input Switch, Mute, Unmute, Return to Program, and Slate, each with its own specific task properties.\u003c/p\u003e\n"]]],[],null,["# Live Stream v1 API - Class Event (1.9.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.9.0 (latest)](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/latest/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.8.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.8.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.7.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.6.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.5.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.4.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.3.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.2.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.1.0/Google.Cloud.Video.LiveStream.V1.Event)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/1.0.0/Google.Cloud.Video.LiveStream.V1.Event) \n\n public sealed class Event : IMessage\u003cEvent\u003e, IEquatable\u003cEvent\u003e, IDeepCloneable\u003cEvent\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Live Stream v1 API class Event.\n\nEvent is a sub-resource of a channel, which can be scheduled by the user to\nexecute operations on a channel resource without having to stop the channel. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Event \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Event](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/latest/Google.Cloud.Video.LiveStream.V1.Event), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Event](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/latest/Google.Cloud.Video.LiveStream.V1.Event), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Event](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/latest/Google.Cloud.Video.LiveStream.V1.Event), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Video.LiveStream.V1](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/latest/Google.Cloud.Video.LiveStream.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Video.LiveStream.V1.dll\n\nConstructors\n------------\n\n### Event()\n\n public Event()\n\n### Event(Event)\n\n public Event(Event other)\n\nProperties\n----------\n\n### AdBreak\n\n public Event.Types.AdBreakTask AdBreak { get; set; }\n\nInserts a new ad opportunity.\n\n### CreateTime\n\n public Timestamp CreateTime { get; set; }\n\nOutput only. The creation time.\n\n### Error\n\n public Status Error { get; set; }\n\nOutput only. An error object that describes the reason for the failure.\nThis property is always present when `state` is `FAILED`.\n\n### EventName\n\n public EventName EventName { get; set; }\n\n[EventName](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/latest/Google.Cloud.Video.LiveStream.V1.EventName)-typed view over the [Name](/dotnet/docs/reference/Google.Cloud.Video.LiveStream.V1/latest/Google.Cloud.Video.LiveStream.V1.Event#Google_Cloud_Video_LiveStream_V1_Event_Name) resource name property.\n\n### ExecuteNow\n\n public bool ExecuteNow { get; set; }\n\nWhen this field is set to true, the event will be executed at the earliest\ntime that the server can schedule the event and\n\\[execution_time\\]\\[google.cloud.video.livestream.v1.Event.execution_time\\]\nwill be populated with the time that the server actually schedules the\nevent.\n\n### ExecutionTime\n\n public Timestamp ExecutionTime { get; set; }\n\nThe time to execute the event. If you set\n\\[execute_now\\]\\[google.cloud.video.livestream.v1.Event.execute_now\\] to\n`true`, then do not set this field in the `CreateEvent` request. In\nthis case, the server schedules the event and populates this field. If you\nset \\[execute_now\\]\\[google.cloud.video.livestream.v1.Event.execute_now\\] to\n`false`, then you must set this field to at least 10 seconds in the future\nor else the event can't be created.\n\n### InputSwitch\n\n public Event.Types.InputSwitchTask InputSwitch { get; set; }\n\nSwitches to another input stream.\n\n### Labels\n\n public MapField\u003cstring, string\u003e Labels { get; }\n\nUser-defined key/value metadata.\n\n### Mute\n\n public Event.Types.MuteTask Mute { get; set; }\n\nMutes the stream.\n\n### Name\n\n public string Name { get; set; }\n\nThe resource name of the event, in the form of:\n`projects/{project}/locations/{location}/channels/{channelId}/events/{eventId}`.\n\n### ReturnToProgram\n\n public Event.Types.ReturnToProgramTask ReturnToProgram { get; set; }\n\nStops any running ad break.\n\n### Slate\n\n public Event.Types.SlateTask Slate { get; set; }\n\nInserts a slate.\n\n### State\n\n public Event.Types.State State { get; set; }\n\nOutput only. The state of the event.\n\n### TaskCase\n\n public Event.TaskOneofCase TaskCase { get; }\n\n### Unmute\n\n public Event.Types.UnmuteTask Unmute { get; set; }\n\nUnmutes the stream.\n\n### UpdateTime\n\n public Timestamp UpdateTime { get; set; }\n\nOutput only. The update time."]]