Message included in the metadata field of operations returned from
[AuthorizeEnvironment][google.cloud.shell.v1.CloudShellService.AuthorizeEnvironment].
API for interacting with Google Cloud Shell. Each user of Cloud Shell has at
least one environment, which has the ID "default". Environment consists of a
Docker image defining what is installed on the environment and a home
directory containing the user's data that will remain across sessions.
Clients use this API to start and fetch information about their environment,
which can then be used to connect to that environment via a separate SSH
client.
A Cloud Shell environment, which is defined as the combination of a Docker
image specifying what is installed on the environment and a home directory
containing the user's data that will remain across sessions. Each user has
at least an environment with the ID "default".
Message included in the response field of operations returned from
[StartEnvironment][google.cloud.shell.v1.CloudShellService.StartEnvironment]
once the operation is complete.
Possible states an environment might transition between during startup.
These states are not normally actionable by clients, but may be used to
show a progress message to the user. An environment won't necessarily go
through all of these states when starting. More states are likely to be
added in the future.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThis document details the .NET reference for Google Cloud Shell V1, with the latest version being 2.5.0 and spanning versions back to 1.0.0.\u003c/p\u003e\n"],["\u003cp\u003eThe content provides comprehensive class documentation for interacting with the Cloud Shell service, including classes for requests, responses, metadata, and service clients like CloudShellServiceClient.\u003c/p\u003e\n"],["\u003cp\u003eThe CloudShellService API enables managing Cloud Shell environments, defining each environment as a Docker image with a persistent user home directory.\u003c/p\u003e\n"],["\u003cp\u003eKey functionalities supported by the API include starting, fetching, creating, and deleting environments, as well as adding and removing public keys.\u003c/p\u003e\n"],["\u003cp\u003eThe document also contains enums that help define error codes, states of environments, and the type of the name of the environment.\u003c/p\u003e\n"]]],[],null,["# Cloud Shell v1 API - Namespace Google.Cloud.Shell.V1 (2.5.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.5.0 (latest)](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Shell.V1/2.4.0/Google.Cloud.Shell.V1)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Shell.V1/2.3.0/Google.Cloud.Shell.V1)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Shell.V1/2.2.0/Google.Cloud.Shell.V1)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Shell.V1/2.1.0/Google.Cloud.Shell.V1)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Shell.V1/2.0.0/Google.Cloud.Shell.V1)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.Shell.V1/1.1.0/Google.Cloud.Shell.V1)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Shell.V1/1.0.0/Google.Cloud.Shell.V1) \n\nClasses\n-------\n\n### [AddPublicKeyMetadata](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.AddPublicKeyMetadata)\n\nMessage included in the metadata field of operations returned from\n\\[AddPublicKey\\]\\[google.cloud.shell.v1.CloudShellService.AddPublicKey\\].\n\n### [AddPublicKeyRequest](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.AddPublicKeyRequest)\n\nRequest message for\n\\[AddPublicKey\\]\\[google.cloud.shell.v1.CloudShellService.AddPublicKey\\].\n\n### [AddPublicKeyResponse](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.AddPublicKeyResponse)\n\nResponse message for\n\\[AddPublicKey\\]\\[google.cloud.shell.v1.CloudShellService.AddPublicKey\\].\n\n### [AuthorizeEnvironmentMetadata](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.AuthorizeEnvironmentMetadata)\n\nMessage included in the metadata field of operations returned from\n\\[AuthorizeEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.AuthorizeEnvironment\\].\n\n### [AuthorizeEnvironmentRequest](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.AuthorizeEnvironmentRequest)\n\nRequest message for\n\\[AuthorizeEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.AuthorizeEnvironment\\].\n\n### [AuthorizeEnvironmentResponse](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.AuthorizeEnvironmentResponse)\n\nResponse message for\n\\[AuthorizeEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.AuthorizeEnvironment\\].\n\n### [CloudShellErrorDetails](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellErrorDetails)\n\nCloud-shell specific information that will be included as details in failure\nresponses.\n\n### [CloudShellErrorDetails.Types](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellErrorDetails.Types)\n\nContainer for nested types declared in the CloudShellErrorDetails message type.\n\n### [CloudShellService](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellService)\n\nAPI for interacting with Google Cloud Shell. Each user of Cloud Shell has at\nleast one environment, which has the ID \"default\". Environment consists of a\nDocker image defining what is installed on the environment and a home\ndirectory containing the user's data that will remain across sessions.\nClients use this API to start and fetch information about their environment,\nwhich can then be used to connect to that environment via a separate SSH\nclient.\n\n### [CloudShellService.CloudShellServiceBase](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellService.CloudShellServiceBase)\n\nBase class for server-side implementations of CloudShellService\n\n### [CloudShellService.CloudShellServiceClient](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellService.CloudShellServiceClient)\n\nClient for CloudShellService\n\n### [CloudShellServiceClient](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellServiceClient)\n\nCloudShellService client wrapper, for convenient use.\n\n### [CloudShellServiceClientBuilder](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellServiceClientBuilder)\n\nBuilder class for [CloudShellServiceClient](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellServiceClient) to provide simple configuration of credentials, endpoint\netc.\n\n### [CloudShellServiceClientImpl](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellServiceClientImpl)\n\nCloudShellService client wrapper implementation, for convenient use.\n\n### [CloudShellServiceSettings](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellServiceSettings)\n\nSettings for [CloudShellServiceClient](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellServiceClient) instances.\n\n### [CreateEnvironmentMetadata](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CreateEnvironmentMetadata)\n\nMessage included in the metadata field of operations returned from\n\\[CreateEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.CreateEnvironment\\].\n\n### [DeleteEnvironmentMetadata](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.DeleteEnvironmentMetadata)\n\nMessage included in the metadata field of operations returned from\n\\[DeleteEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.DeleteEnvironment\\].\n\n### [Environment](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.Environment)\n\nA Cloud Shell environment, which is defined as the combination of a Docker\nimage specifying what is installed on the environment and a home directory\ncontaining the user's data that will remain across sessions. Each user has\nat least an environment with the ID \"default\".\n\n### [Environment.Types](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.Environment.Types)\n\nContainer for nested types declared in the Environment message type.\n\n### [EnvironmentName](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.EnvironmentName)\n\nResource name for the `Environment` resource.\n\n### [GetEnvironmentRequest](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.GetEnvironmentRequest)\n\nRequest message for\n\\[GetEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.GetEnvironment\\].\n\n### [RemovePublicKeyMetadata](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.RemovePublicKeyMetadata)\n\nMessage included in the metadata field of operations returned from\n\\[RemovePublicKey\\]\\[google.cloud.shell.v1.CloudShellService.RemovePublicKey\\].\n\n### [RemovePublicKeyRequest](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.RemovePublicKeyRequest)\n\nRequest message for\n\\[RemovePublicKey\\]\\[google.cloud.shell.v1.CloudShellService.RemovePublicKey\\].\n\n### [RemovePublicKeyResponse](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.RemovePublicKeyResponse)\n\nResponse message for\n\\[RemovePublicKey\\]\\[google.cloud.shell.v1.CloudShellService.RemovePublicKey\\].\n\n### [StartEnvironmentMetadata](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.StartEnvironmentMetadata)\n\nMessage included in the metadata field of operations returned from\n\\[StartEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.StartEnvironment\\].\n\n### [StartEnvironmentMetadata.Types](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.StartEnvironmentMetadata.Types)\n\nContainer for nested types declared in the StartEnvironmentMetadata message type.\n\n### [StartEnvironmentRequest](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.StartEnvironmentRequest)\n\nRequest message for\n\\[StartEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.StartEnvironment\\].\n\n### [StartEnvironmentResponse](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.StartEnvironmentResponse)\n\nMessage included in the response field of operations returned from\n\\[StartEnvironment\\]\\[google.cloud.shell.v1.CloudShellService.StartEnvironment\\]\nonce the operation is complete.\n\nEnums\n-----\n\n### [CloudShellErrorDetails.Types.CloudShellErrorCode](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.CloudShellErrorDetails.Types.CloudShellErrorCode)\n\nSet of possible errors returned from API calls.\n\n### [Environment.Types.State](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.Environment.Types.State)\n\nPossible execution states for an environment.\n\n### [EnvironmentName.ResourceNameType](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.EnvironmentName.ResourceNameType)\n\nThe possible contents of [EnvironmentName](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.EnvironmentName).\n\n### [StartEnvironmentMetadata.Types.State](/dotnet/docs/reference/Google.Cloud.Shell.V1/latest/Google.Cloud.Shell.V1.StartEnvironmentMetadata.Types.State)\n\nPossible states an environment might transition between during startup.\nThese states are not normally actionable by clients, but may be used to\nshow a progress message to the user. An environment won't necessarily go\nthrough all of these states when starting. More states are likely to be\nadded in the future."]]