/// <summary>Snippet for UpdateRealmAsync</summary>
        public async Task UpdateRealmAsync()
        {
            // Snippet: UpdateRealmAsync(Realm, FieldMask, CallSettings)
            // Additional: UpdateRealmAsync(Realm, FieldMask, CancellationToken)
            // Create client
            RealmsServiceClient realmsServiceClient = await RealmsServiceClient.CreateAsync();

            // Initialize request argument(s)
            Realm     realm      = new Realm();
            FieldMask updateMask = new FieldMask();
            // Make the request
            Operation <Realm, OperationMetadata> response = await realmsServiceClient.UpdateRealmAsync(realm, updateMask);

            // Poll until the returned long-running operation is complete
            Operation <Realm, OperationMetadata> completedResponse = await response.PollUntilCompletedAsync();

            // Retrieve the operation result
            Realm result = completedResponse.Result;

            // Or get the name of the operation
            string operationName = response.Name;
            // This name can be stored, then the long-running operation retrieved later by name
            Operation <Realm, OperationMetadata> retrievedResponse = await realmsServiceClient.PollOnceUpdateRealmAsync(operationName);

            // Check if the retrieved long-running operation has completed
            if (retrievedResponse.IsCompleted)
            {
                // If it has completed, then access the result
                Realm retrievedResult = retrievedResponse.Result;
            }
            // End snippet
        }
    public async Task <Realm> UpdateRealmAsync(
        string projectId, string regionId, string realmId)
    {
        // Create the client.
        RealmsServiceClient client = await RealmsServiceClient.CreateAsync();

        Realm realm = new Realm
        {
            RealmName = RealmName.FromProjectLocationRealm(projectId, regionId, realmId),
        };

        realm.Labels.Add("label-key-1", "label-value-1");
        realm.Labels.Add("label-key-2", "label-value-2");

        UpdateRealmRequest request = new UpdateRealmRequest
        {
            Realm      = realm,
            UpdateMask = new FieldMask {
                Paths = { "labels" }
            }
        };

        // Make the request.
        Operation <Realm, OperationMetadata> response = await client.UpdateRealmAsync(request);

        Operation <Realm, OperationMetadata> completedResponse = await response.PollUntilCompletedAsync();

        // Retrieve the operation result. This result will NOT contain the updated labels.
        // If you want to get the updated resource, use a GET request on the resource.
        return(completedResponse.Result);
    }