public sealed class BackupChannel : IMessage<BackupChannel>, IEquatable<BackupChannel>, IDeepCloneable<BackupChannel>, IBufferMessage, IMessage
Reference documentation and code samples for the Backup for GKE v1 API class BackupChannel.
A BackupChannel imposes constraints on where clusters can be backed up.
The BackupChannel should be in the same project and region
as the cluster being backed up.
The backup can be created only in destination_project.
Output only. The project_id where Backups are allowed to be stored.
Example Project ID: "my-project-id".
This will be an OUTPUT_ONLY field to return the project_id of the
destination project.
Output only. etag is used for optimistic concurrency control as a way to
help prevent simultaneous updates of a BackupChannel from overwriting each
other. It is strongly suggested that systems make use of the 'etag' in the
read-modify-write cycle to perform BackupChannel updates in order to
avoid race conditions: An etag is returned in the response to
GetBackupChannel, and systems are expected to put that etag in the
request to UpdateBackupChannel or DeleteBackupChannel to
ensure that their change will be applied to the same version of the
resource.
[[["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."],[],[],null,["# Backup for GKE v1 API - Class BackupChannel (2.8.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.8.0 (latest)](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/latest/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.7.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.7.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.6.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.5.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.4.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.3.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.2.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.1.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/2.0.0/Google.Cloud.GkeBackup.V1.BackupChannel)\n- [1.0.0-beta01](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/1.0.0-beta01/Google.Cloud.GkeBackup.V1.BackupChannel) \n\n public sealed class BackupChannel : IMessage\u003cBackupChannel\u003e, IEquatable\u003cBackupChannel\u003e, IDeepCloneable\u003cBackupChannel\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Backup for GKE v1 API class BackupChannel.\n\nA BackupChannel imposes constraints on where clusters can be backed up.\nThe BackupChannel should be in the same project and region\nas the cluster being backed up.\nThe backup can be created only in destination_project. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e BackupChannel \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[BackupChannel](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/latest/Google.Cloud.GkeBackup.V1.BackupChannel), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[BackupChannel](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/latest/Google.Cloud.GkeBackup.V1.BackupChannel), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[BackupChannel](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/latest/Google.Cloud.GkeBackup.V1.BackupChannel), [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.GkeBackup.V1](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/latest/Google.Cloud.GkeBackup.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.GkeBackup.V1.dll\n\nConstructors\n------------\n\n### BackupChannel()\n\n public BackupChannel()\n\n### BackupChannel(BackupChannel)\n\n public BackupChannel(BackupChannel other)\n\nProperties\n----------\n\n### BackupChannelName\n\n public BackupChannelName BackupChannelName { get; set; }\n\n[BackupChannelName](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/latest/Google.Cloud.GkeBackup.V1.BackupChannelName)-typed view over the [Name](/dotnet/docs/reference/Google.Cloud.GkeBackup.V1/latest/Google.Cloud.GkeBackup.V1.BackupChannel#Google_Cloud_GkeBackup_V1_BackupChannel_Name) resource name property.\n\n### CreateTime\n\n public Timestamp CreateTime { get; set; }\n\nOutput only. The timestamp when this BackupChannel resource was created.\n\n### Description\n\n public string Description { get; set; }\n\nOptional. User specified descriptive string for this BackupChannel.\n\n### DestinationProject\n\n public string DestinationProject { get; set; }\n\nRequired. Immutable. The project where Backups are allowed to be stored.\nThe format is `projects/{projectId}` or `projects/{projectNumber}`.\n\n### DestinationProjectId\n\n public string DestinationProjectId { get; set; }\n\nOutput only. The project_id where Backups are allowed to be stored.\nExample Project ID: \"my-project-id\".\nThis will be an OUTPUT_ONLY field to return the project_id of the\ndestination project.\n\n### Etag\n\n public string Etag { get; set; }\n\nOutput only. `etag` is used for optimistic concurrency control as a way to\nhelp prevent simultaneous updates of a BackupChannel from overwriting each\nother. It is strongly suggested that systems make use of the 'etag' in the\nread-modify-write cycle to perform BackupChannel updates in order to\navoid race conditions: An `etag` is returned in the response to\n`GetBackupChannel`, and systems are expected to put that etag in the\nrequest to `UpdateBackupChannel` or `DeleteBackupChannel` to\nensure that their change will be applied to the same version of the\nresource.\n\n### Labels\n\n public MapField\u003cstring, string\u003e Labels { get; }\n\nOptional. A set of custom labels supplied by user.\n\n### Name\n\n public string Name { get; set; }\n\nIdentifier. The fully qualified name of the BackupChannel.\n`projects/*/locations/*/backupChannels/*`\n\n### Uid\n\n public string Uid { get; set; }\n\nOutput only. Server generated global unique identifier of\n[UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier) format.\n\n### UpdateTime\n\n public Timestamp UpdateTime { get; set; }\n\nOutput only. The timestamp when this BackupChannel resource was last\nupdated."]]