/// <summary>Snippet for CreateIndexAsync</summary> public async Task CreateIndexRequestObjectAsync() { // Snippet: CreateIndexAsync(CreateIndexRequest, CallSettings) // Additional: CreateIndexAsync(CreateIndexRequest, CancellationToken) // Create client IndexServiceClient indexServiceClient = await IndexServiceClient.CreateAsync(); // Initialize request argument(s) CreateIndexRequest request = new CreateIndexRequest { ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"), Index = new gcav::Index(), }; // Make the request Operation <gcav::Index, CreateIndexOperationMetadata> response = await indexServiceClient.CreateIndexAsync(request); // Poll until the returned long-running operation is complete Operation <gcav::Index, CreateIndexOperationMetadata> completedResponse = await response.PollUntilCompletedAsync(); // Retrieve the operation result gcav::Index 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 <gcav::Index, CreateIndexOperationMetadata> retrievedResponse = await indexServiceClient.PollOnceCreateIndexAsync(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result gcav::Index retrievedResult = retrievedResponse.Result; } // End snippet }