Discovery Engine v1 API - Class ControlServiceClient (1.4.0)

public abstract class ControlServiceClient

Reference documentation and code samples for the Discovery Engine v1 API class ControlServiceClient.

ControlService client wrapper, for convenient use.

Inheritance

object > ControlServiceClient

Derived Types

Namespace

Google.Cloud.DiscoveryEngine.V1

Assembly

Google.Cloud.DiscoveryEngine.V1.dll

Remarks

Service for performing CRUD operations on Controls. Controls allow for custom logic to be implemented in the serving path. Controls need to be attached to a Serving Config to be considered during a request.

Properties

DefaultEndpoint

public static string DefaultEndpoint { get; }

The default endpoint for the ControlService service, which is a host of "discoveryengine.googleapis.com" and a port of 443.

Property Value
Type Description
string

DefaultScopes

public static IReadOnlyList<string> DefaultScopes { get; }

The default ControlService scopes.

Property Value
Type Description
IReadOnlyListstring
Remarks

The default ControlService scopes are:

GrpcClient

public virtual ControlService.ControlServiceClient GrpcClient { get; }

The underlying gRPC ControlService client

Property Value
Type Description
ControlServiceControlServiceClient

LocationsClient

public virtual LocationsClient LocationsClient { get; }

The LocationsClient associated with this client.

Property Value
Type Description
LocationsClient

ServiceMetadata

public static ServiceMetadata ServiceMetadata { get; }

The service metadata associated with this client type.

Property Value
Type Description
ServiceMetadata

Methods

Create()

public static ControlServiceClient Create()

Synchronously creates a ControlServiceClient using the default credentials, endpoint and settings. To specify custom credentials or other settings, use ControlServiceClientBuilder.

Returns
Type Description
ControlServiceClient

The created ControlServiceClient.

CreateAsync(CancellationToken)

public static Task<ControlServiceClient> CreateAsync(CancellationToken cancellationToken = default)

Asynchronously creates a ControlServiceClient using the default credentials, endpoint and settings. To specify custom credentials or other settings, use ControlServiceClientBuilder.

Parameter
Name Description
cancellationToken CancellationToken

The CancellationToken to use while creating the client.

Returns
Type Description
TaskControlServiceClient

The task representing the created ControlServiceClient.

CreateControl(CreateControlRequest, CallSettings)

public virtual Control CreateControl(CreateControlRequest request, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
request CreateControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
CreateControlRequest request = new CreateControlRequest
{
    ParentAsEngineName = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]"),
    Control = new Control(),
    ControlId = "",
};
// Make the request
Control response = controlServiceClient.CreateControl(request);

CreateControl(DataStoreName, Control, string, CallSettings)

public virtual Control CreateControl(DataStoreName parent, Control control, string controlId, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent DataStoreName

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
DataStoreName parent = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]");
Control control = new Control();
string controlId = "";
// Make the request
Control response = controlServiceClient.CreateControl(parent, control, controlId);

CreateControl(EngineName, Control, string, CallSettings)

public virtual Control CreateControl(EngineName parent, Control control, string controlId, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent EngineName

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
EngineName parent = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]");
Control control = new Control();
string controlId = "";
// Make the request
Control response = controlServiceClient.CreateControl(parent, control, controlId);

CreateControl(string, Control, string, CallSettings)

public virtual Control CreateControl(string parent, Control control, string controlId, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent string

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
string parent = "projects/[PROJECT]/locations/[LOCATION]/collections/[COLLECTION]/engines/[ENGINE]";
Control control = new Control();
string controlId = "";
// Make the request
Control response = controlServiceClient.CreateControl(parent, control, controlId);

CreateControlAsync(CreateControlRequest, CallSettings)

public virtual Task<Control> CreateControlAsync(CreateControlRequest request, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
request CreateControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
CreateControlRequest request = new CreateControlRequest
{
    ParentAsEngineName = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]"),
    Control = new Control(),
    ControlId = "",
};
// Make the request
Control response = await controlServiceClient.CreateControlAsync(request);

CreateControlAsync(CreateControlRequest, CancellationToken)

public virtual Task<Control> CreateControlAsync(CreateControlRequest request, CancellationToken cancellationToken)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
request CreateControlRequest

The request object containing all of the parameters for the API call.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
CreateControlRequest request = new CreateControlRequest
{
    ParentAsEngineName = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]"),
    Control = new Control(),
    ControlId = "",
};
// Make the request
Control response = await controlServiceClient.CreateControlAsync(request);

CreateControlAsync(DataStoreName, Control, string, CallSettings)

public virtual Task<Control> CreateControlAsync(DataStoreName parent, Control control, string controlId, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent DataStoreName

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
DataStoreName parent = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]");
Control control = new Control();
string controlId = "";
// Make the request
Control response = await controlServiceClient.CreateControlAsync(parent, control, controlId);

CreateControlAsync(DataStoreName, Control, string, CancellationToken)

public virtual Task<Control> CreateControlAsync(DataStoreName parent, Control control, string controlId, CancellationToken cancellationToken)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent DataStoreName

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
DataStoreName parent = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]");
Control control = new Control();
string controlId = "";
// Make the request
Control response = await controlServiceClient.CreateControlAsync(parent, control, controlId);

CreateControlAsync(EngineName, Control, string, CallSettings)

public virtual Task<Control> CreateControlAsync(EngineName parent, Control control, string controlId, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent EngineName

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
EngineName parent = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]");
Control control = new Control();
string controlId = "";
// Make the request
Control response = await controlServiceClient.CreateControlAsync(parent, control, controlId);

CreateControlAsync(EngineName, Control, string, CancellationToken)

public virtual Task<Control> CreateControlAsync(EngineName parent, Control control, string controlId, CancellationToken cancellationToken)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent EngineName

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
EngineName parent = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]");
Control control = new Control();
string controlId = "";
// Make the request
Control response = await controlServiceClient.CreateControlAsync(parent, control, controlId);

CreateControlAsync(string, Control, string, CallSettings)

public virtual Task<Control> CreateControlAsync(string parent, Control control, string controlId, CallSettings callSettings = null)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent string

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
string parent = "projects/[PROJECT]/locations/[LOCATION]/collections/[COLLECTION]/engines/[ENGINE]";
Control control = new Control();
string controlId = "";
// Make the request
Control response = await controlServiceClient.CreateControlAsync(parent, control, controlId);

CreateControlAsync(string, Control, string, CancellationToken)

public virtual Task<Control> CreateControlAsync(string parent, Control control, string controlId, CancellationToken cancellationToken)

Creates a Control.

By default 1000 controls are allowed for a data store. A request can be submitted to adjust this limit. If the [Control][google.cloud.discoveryengine.v1.Control] to create already exists, an ALREADY_EXISTS error is returned.

Parameters
Name Description
parent string

Required. Full resource name of parent data store. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

control Control

Required. The Control to create.

controlId string

Required. The ID to use for the Control, which will become the final component of the Control's resource name.

This value must be within 1-63 characters. Valid characters are /[a-z][0-9]-_/.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
string parent = "projects/[PROJECT]/locations/[LOCATION]/collections/[COLLECTION]/engines/[ENGINE]";
Control control = new Control();
string controlId = "";
// Make the request
Control response = await controlServiceClient.CreateControlAsync(parent, control, controlId);

DeleteControl(ControlName, CallSettings)

public virtual void DeleteControl(ControlName name, CallSettings callSettings = null)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
name ControlName

Required. The resource name of the Control to delete. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
ControlName name = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]");
// Make the request
controlServiceClient.DeleteControl(name);

DeleteControl(DeleteControlRequest, CallSettings)

public virtual void DeleteControl(DeleteControlRequest request, CallSettings callSettings = null)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
request DeleteControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
DeleteControlRequest request = new DeleteControlRequest
{
    ControlName = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]"),
};
// Make the request
controlServiceClient.DeleteControl(request);

DeleteControl(string, CallSettings)

public virtual void DeleteControl(string name, CallSettings callSettings = null)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
name string

Required. The resource name of the Control to delete. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
string name = "projects/[PROJECT]/locations/[LOCATION]/dataStores/[DATA_STORE]/controls/[CONTROL]";
// Make the request
controlServiceClient.DeleteControl(name);

DeleteControlAsync(ControlName, CallSettings)

public virtual Task DeleteControlAsync(ControlName name, CallSettings callSettings = null)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
name ControlName

Required. The resource name of the Control to delete. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
ControlName name = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]");
// Make the request
await controlServiceClient.DeleteControlAsync(name);

DeleteControlAsync(ControlName, CancellationToken)

public virtual Task DeleteControlAsync(ControlName name, CancellationToken cancellationToken)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
name ControlName

Required. The resource name of the Control to delete. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
Task

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
ControlName name = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]");
// Make the request
await controlServiceClient.DeleteControlAsync(name);

DeleteControlAsync(DeleteControlRequest, CallSettings)

public virtual Task DeleteControlAsync(DeleteControlRequest request, CallSettings callSettings = null)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
request DeleteControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
DeleteControlRequest request = new DeleteControlRequest
{
    ControlName = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]"),
};
// Make the request
await controlServiceClient.DeleteControlAsync(request);

DeleteControlAsync(DeleteControlRequest, CancellationToken)

public virtual Task DeleteControlAsync(DeleteControlRequest request, CancellationToken cancellationToken)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
request DeleteControlRequest

The request object containing all of the parameters for the API call.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
Task

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
DeleteControlRequest request = new DeleteControlRequest
{
    ControlName = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]"),
};
// Make the request
await controlServiceClient.DeleteControlAsync(request);

DeleteControlAsync(string, CallSettings)

public virtual Task DeleteControlAsync(string name, CallSettings callSettings = null)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
name string

Required. The resource name of the Control to delete. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Task

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
string name = "projects/[PROJECT]/locations/[LOCATION]/dataStores/[DATA_STORE]/controls/[CONTROL]";
// Make the request
await controlServiceClient.DeleteControlAsync(name);

DeleteControlAsync(string, CancellationToken)

public virtual Task DeleteControlAsync(string name, CancellationToken cancellationToken)

Deletes a Control.

If the [Control][google.cloud.discoveryengine.v1.Control] to delete does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
name string

Required. The resource name of the Control to delete. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
Task

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
string name = "projects/[PROJECT]/locations/[LOCATION]/dataStores/[DATA_STORE]/controls/[CONTROL]";
// Make the request
await controlServiceClient.DeleteControlAsync(name);

GetControl(ControlName, CallSettings)

public virtual Control GetControl(ControlName name, CallSettings callSettings = null)

Gets a Control.

Parameters
Name Description
name ControlName

Required. The resource name of the Control to get. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
ControlName name = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]");
// Make the request
Control response = controlServiceClient.GetControl(name);

GetControl(GetControlRequest, CallSettings)

public virtual Control GetControl(GetControlRequest request, CallSettings callSettings = null)

Gets a Control.

Parameters
Name Description
request GetControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
GetControlRequest request = new GetControlRequest
{
    ControlName = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]"),
};
// Make the request
Control response = controlServiceClient.GetControl(request);

GetControl(string, CallSettings)

public virtual Control GetControl(string name, CallSettings callSettings = null)

Gets a Control.

Parameters
Name Description
name string

Required. The resource name of the Control to get. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
string name = "projects/[PROJECT]/locations/[LOCATION]/dataStores/[DATA_STORE]/controls/[CONTROL]";
// Make the request
Control response = controlServiceClient.GetControl(name);

GetControlAsync(ControlName, CallSettings)

public virtual Task<Control> GetControlAsync(ControlName name, CallSettings callSettings = null)

Gets a Control.

Parameters
Name Description
name ControlName

Required. The resource name of the Control to get. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
ControlName name = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]");
// Make the request
Control response = await controlServiceClient.GetControlAsync(name);

GetControlAsync(ControlName, CancellationToken)

public virtual Task<Control> GetControlAsync(ControlName name, CancellationToken cancellationToken)

Gets a Control.

Parameters
Name Description
name ControlName

Required. The resource name of the Control to get. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
ControlName name = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]");
// Make the request
Control response = await controlServiceClient.GetControlAsync(name);

GetControlAsync(GetControlRequest, CallSettings)

public virtual Task<Control> GetControlAsync(GetControlRequest request, CallSettings callSettings = null)

Gets a Control.

Parameters
Name Description
request GetControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
GetControlRequest request = new GetControlRequest
{
    ControlName = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]"),
};
// Make the request
Control response = await controlServiceClient.GetControlAsync(request);

GetControlAsync(GetControlRequest, CancellationToken)

public virtual Task<Control> GetControlAsync(GetControlRequest request, CancellationToken cancellationToken)

Gets a Control.

Parameters
Name Description
request GetControlRequest

The request object containing all of the parameters for the API call.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
GetControlRequest request = new GetControlRequest
{
    ControlName = ControlName.FromProjectLocationDataStoreControl("[PROJECT]", "[LOCATION]", "[DATA_STORE]", "[CONTROL]"),
};
// Make the request
Control response = await controlServiceClient.GetControlAsync(request);

GetControlAsync(string, CallSettings)

public virtual Task<Control> GetControlAsync(string name, CallSettings callSettings = null)

Gets a Control.

Parameters
Name Description
name string

Required. The resource name of the Control to get. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
string name = "projects/[PROJECT]/locations/[LOCATION]/dataStores/[DATA_STORE]/controls/[CONTROL]";
// Make the request
Control response = await controlServiceClient.GetControlAsync(name);

GetControlAsync(string, CancellationToken)

public virtual Task<Control> GetControlAsync(string name, CancellationToken cancellationToken)

Gets a Control.

Parameters
Name Description
name string

Required. The resource name of the Control to get. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id}/controls/{control_id}

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
string name = "projects/[PROJECT]/locations/[LOCATION]/dataStores/[DATA_STORE]/controls/[CONTROL]";
// Make the request
Control response = await controlServiceClient.GetControlAsync(name);

ListControls(DataStoreName, string, int?, CallSettings)

public virtual PagedEnumerable<ListControlsResponse, Control> ListControls(DataStoreName parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
parent DataStoreName

Required. The data store resource name. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

pageToken string

The token returned from the previous request. A value of null or an empty string retrieves the first page.

pageSize int

The size of page to request. The response will not be larger than this, but may be smaller. A value of null or 0 uses a server-defined page size.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListControlsResponseControl

A pageable sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
DataStoreName parent = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]");
// Make the request
PagedEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControls(parent);

// Iterate over all response items, lazily performing RPCs as required
foreach (Control item in response)
{
    // Do something with each item
    Console.WriteLine(item);
}

// Or iterate over pages (of server-defined size), performing one RPC per page
foreach (ListControlsResponse page in response.AsRawResponses())
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
}

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = response.ReadPage(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ListControls(EngineName, string, int?, CallSettings)

public virtual PagedEnumerable<ListControlsResponse, Control> ListControls(EngineName parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
parent EngineName

Required. The data store resource name. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

pageToken string

The token returned from the previous request. A value of null or an empty string retrieves the first page.

pageSize int

The size of page to request. The response will not be larger than this, but may be smaller. A value of null or 0 uses a server-defined page size.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListControlsResponseControl

A pageable sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
EngineName parent = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]");
// Make the request
PagedEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControls(parent);

// Iterate over all response items, lazily performing RPCs as required
foreach (Control item in response)
{
    // Do something with each item
    Console.WriteLine(item);
}

// Or iterate over pages (of server-defined size), performing one RPC per page
foreach (ListControlsResponse page in response.AsRawResponses())
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
}

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = response.ReadPage(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ListControls(ListControlsRequest, CallSettings)

public virtual PagedEnumerable<ListControlsResponse, Control> ListControls(ListControlsRequest request, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
request ListControlsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListControlsResponseControl

A pageable sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
ListControlsRequest request = new ListControlsRequest
{
    ParentAsEngineName = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]"),
    Filter = "",
};
// Make the request
PagedEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControls(request);

// Iterate over all response items, lazily performing RPCs as required
foreach (Control item in response)
{
    // Do something with each item
    Console.WriteLine(item);
}

// Or iterate over pages (of server-defined size), performing one RPC per page
foreach (ListControlsResponse page in response.AsRawResponses())
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
}

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = response.ReadPage(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ListControls(string, string, int?, CallSettings)

public virtual PagedEnumerable<ListControlsResponse, Control> ListControls(string parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
parent string

Required. The data store resource name. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

pageToken string

The token returned from the previous request. A value of null or an empty string retrieves the first page.

pageSize int

The size of page to request. The response will not be larger than this, but may be smaller. A value of null or 0 uses a server-defined page size.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListControlsResponseControl

A pageable sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
string parent = "projects/[PROJECT]/locations/[LOCATION]/collections/[COLLECTION]/engines/[ENGINE]";
// Make the request
PagedEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControls(parent);

// Iterate over all response items, lazily performing RPCs as required
foreach (Control item in response)
{
    // Do something with each item
    Console.WriteLine(item);
}

// Or iterate over pages (of server-defined size), performing one RPC per page
foreach (ListControlsResponse page in response.AsRawResponses())
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
}

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = response.ReadPage(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ListControlsAsync(DataStoreName, string, int?, CallSettings)

public virtual PagedAsyncEnumerable<ListControlsResponse, Control> ListControlsAsync(DataStoreName parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
parent DataStoreName

Required. The data store resource name. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

pageToken string

The token returned from the previous request. A value of null or an empty string retrieves the first page.

pageSize int

The size of page to request. The response will not be larger than this, but may be smaller. A value of null or 0 uses a server-defined page size.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListControlsResponseControl

A pageable asynchronous sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
DataStoreName parent = DataStoreName.FromProjectLocationDataStore("[PROJECT]", "[LOCATION]", "[DATA_STORE]");
// Make the request
PagedAsyncEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControlsAsync(parent);

// Iterate over all response items, lazily performing RPCs as required
await response.ForEachAsync((Control item) =>
{
    // Do something with each item
    Console.WriteLine(item);
});

// Or iterate over pages (of server-defined size), performing one RPC per page
await response.AsRawResponses().ForEachAsync((ListControlsResponse page) =>
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
});

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = await response.ReadPageAsync(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ListControlsAsync(EngineName, string, int?, CallSettings)

public virtual PagedAsyncEnumerable<ListControlsResponse, Control> ListControlsAsync(EngineName parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
parent EngineName

Required. The data store resource name. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

pageToken string

The token returned from the previous request. A value of null or an empty string retrieves the first page.

pageSize int

The size of page to request. The response will not be larger than this, but may be smaller. A value of null or 0 uses a server-defined page size.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListControlsResponseControl

A pageable asynchronous sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
EngineName parent = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]");
// Make the request
PagedAsyncEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControlsAsync(parent);

// Iterate over all response items, lazily performing RPCs as required
await response.ForEachAsync((Control item) =>
{
    // Do something with each item
    Console.WriteLine(item);
});

// Or iterate over pages (of server-defined size), performing one RPC per page
await response.AsRawResponses().ForEachAsync((ListControlsResponse page) =>
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
});

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = await response.ReadPageAsync(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ListControlsAsync(ListControlsRequest, CallSettings)

public virtual PagedAsyncEnumerable<ListControlsResponse, Control> ListControlsAsync(ListControlsRequest request, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
request ListControlsRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListControlsResponseControl

A pageable asynchronous sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
ListControlsRequest request = new ListControlsRequest
{
    ParentAsEngineName = EngineName.FromProjectLocationCollectionEngine("[PROJECT]", "[LOCATION]", "[COLLECTION]", "[ENGINE]"),
    Filter = "",
};
// Make the request
PagedAsyncEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControlsAsync(request);

// Iterate over all response items, lazily performing RPCs as required
await response.ForEachAsync((Control item) =>
{
    // Do something with each item
    Console.WriteLine(item);
});

// Or iterate over pages (of server-defined size), performing one RPC per page
await response.AsRawResponses().ForEachAsync((ListControlsResponse page) =>
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
});

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = await response.ReadPageAsync(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ListControlsAsync(string, string, int?, CallSettings)

public virtual PagedAsyncEnumerable<ListControlsResponse, Control> ListControlsAsync(string parent, string pageToken = null, int? pageSize = null, CallSettings callSettings = null)

Lists all Controls by their parent [DataStore][google.cloud.discoveryengine.v1.DataStore].

Parameters
Name Description
parent string

Required. The data store resource name. Format: projects/{project_number}/locations/{location_id}/collections/{collection_id}/dataStores/{data_store_id} or projects/{project_number}/locations/{location_id}/collections/{collection_id}/engines/{engine_id}.

pageToken string

The token returned from the previous request. A value of null or an empty string retrieves the first page.

pageSize int

The size of page to request. The response will not be larger than this, but may be smaller. A value of null or 0 uses a server-defined page size.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListControlsResponseControl

A pageable asynchronous sequence of Control resources.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
string parent = "projects/[PROJECT]/locations/[LOCATION]/collections/[COLLECTION]/engines/[ENGINE]";
// Make the request
PagedAsyncEnumerable<ListControlsResponse, Control> response = controlServiceClient.ListControlsAsync(parent);

// Iterate over all response items, lazily performing RPCs as required
await response.ForEachAsync((Control item) =>
{
    // Do something with each item
    Console.WriteLine(item);
});

// Or iterate over pages (of server-defined size), performing one RPC per page
await response.AsRawResponses().ForEachAsync((ListControlsResponse page) =>
{
    // Do something with each page of items
    Console.WriteLine("A page of results:");
    foreach (Control item in page)
    {
        // Do something with each item
        Console.WriteLine(item);
    }
});

// Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
int pageSize = 10;
Page<Control> singlePage = await response.ReadPageAsync(pageSize);
// Do something with the page of items
Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
foreach (Control item in singlePage)
{
    // Do something with each item
    Console.WriteLine(item);
}
// Store the pageToken, for when the next page is required.
string nextPageToken = singlePage.NextPageToken;

ShutdownDefaultChannelsAsync()

public static Task ShutdownDefaultChannelsAsync()

Shuts down any channels automatically created by Create() and CreateAsync(CancellationToken). Channels which weren't automatically created are not affected.

Returns
Type Description
Task

A task representing the asynchronous shutdown operation.

Remarks

After calling this method, further calls to Create() and CreateAsync(CancellationToken) will create new channels, which could in turn be shut down by another call to this method.

UpdateControl(Control, FieldMask, CallSettings)

public virtual Control UpdateControl(Control control, FieldMask updateMask, CallSettings callSettings = null)

Updates a Control.

[Control][google.cloud.discoveryengine.v1.Control] action type cannot be changed. If the [Control][google.cloud.discoveryengine.v1.Control] to update does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
control Control

Required. The Control to update.

updateMask FieldMask

Optional. Indicates which fields in the provided [Control][google.cloud.discoveryengine.v1.Control] to update. The following are NOT supported:

  • [Control.name][google.cloud.discoveryengine.v1.Control.name]
  • [Control.solution_type][google.cloud.discoveryengine.v1.Control.solution_type]

If not set or empty, all supported fields are updated.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
Control control = new Control();
FieldMask updateMask = new FieldMask();
// Make the request
Control response = controlServiceClient.UpdateControl(control, updateMask);

UpdateControl(UpdateControlRequest, CallSettings)

public virtual Control UpdateControl(UpdateControlRequest request, CallSettings callSettings = null)

Updates a Control.

[Control][google.cloud.discoveryengine.v1.Control] action type cannot be changed. If the [Control][google.cloud.discoveryengine.v1.Control] to update does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
request UpdateControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Control

The RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = ControlServiceClient.Create();
// Initialize request argument(s)
UpdateControlRequest request = new UpdateControlRequest
{
    Control = new Control(),
    UpdateMask = new FieldMask(),
};
// Make the request
Control response = controlServiceClient.UpdateControl(request);

UpdateControlAsync(Control, FieldMask, CallSettings)

public virtual Task<Control> UpdateControlAsync(Control control, FieldMask updateMask, CallSettings callSettings = null)

Updates a Control.

[Control][google.cloud.discoveryengine.v1.Control] action type cannot be changed. If the [Control][google.cloud.discoveryengine.v1.Control] to update does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
control Control

Required. The Control to update.

updateMask FieldMask

Optional. Indicates which fields in the provided [Control][google.cloud.discoveryengine.v1.Control] to update. The following are NOT supported:

  • [Control.name][google.cloud.discoveryengine.v1.Control.name]
  • [Control.solution_type][google.cloud.discoveryengine.v1.Control.solution_type]

If not set or empty, all supported fields are updated.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
Control control = new Control();
FieldMask updateMask = new FieldMask();
// Make the request
Control response = await controlServiceClient.UpdateControlAsync(control, updateMask);

UpdateControlAsync(Control, FieldMask, CancellationToken)

public virtual Task<Control> UpdateControlAsync(Control control, FieldMask updateMask, CancellationToken cancellationToken)

Updates a Control.

[Control][google.cloud.discoveryengine.v1.Control] action type cannot be changed. If the [Control][google.cloud.discoveryengine.v1.Control] to update does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
control Control

Required. The Control to update.

updateMask FieldMask

Optional. Indicates which fields in the provided [Control][google.cloud.discoveryengine.v1.Control] to update. The following are NOT supported:

  • [Control.name][google.cloud.discoveryengine.v1.Control.name]
  • [Control.solution_type][google.cloud.discoveryengine.v1.Control.solution_type]

If not set or empty, all supported fields are updated.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
Control control = new Control();
FieldMask updateMask = new FieldMask();
// Make the request
Control response = await controlServiceClient.UpdateControlAsync(control, updateMask);

UpdateControlAsync(UpdateControlRequest, CallSettings)

public virtual Task<Control> UpdateControlAsync(UpdateControlRequest request, CallSettings callSettings = null)

Updates a Control.

[Control][google.cloud.discoveryengine.v1.Control] action type cannot be changed. If the [Control][google.cloud.discoveryengine.v1.Control] to update does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
request UpdateControlRequest

The request object containing all of the parameters for the API call.

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
UpdateControlRequest request = new UpdateControlRequest
{
    Control = new Control(),
    UpdateMask = new FieldMask(),
};
// Make the request
Control response = await controlServiceClient.UpdateControlAsync(request);

UpdateControlAsync(UpdateControlRequest, CancellationToken)

public virtual Task<Control> UpdateControlAsync(UpdateControlRequest request, CancellationToken cancellationToken)

Updates a Control.

[Control][google.cloud.discoveryengine.v1.Control] action type cannot be changed. If the [Control][google.cloud.discoveryengine.v1.Control] to update does not exist, a NOT_FOUND error is returned.

Parameters
Name Description
request UpdateControlRequest

The request object containing all of the parameters for the API call.

cancellationToken CancellationToken

A CancellationToken to use for this RPC.

Returns
Type Description
TaskControl

A Task containing the RPC response.

Example
// Create client
ControlServiceClient controlServiceClient = await ControlServiceClient.CreateAsync();
// Initialize request argument(s)
UpdateControlRequest request = new UpdateControlRequest
{
    Control = new Control(),
    UpdateMask = new FieldMask(),
};
// Make the request
Control response = await controlServiceClient.UpdateControlAsync(request);