BigQuery Reservation v1 API - Class ReservationServiceClientImpl (2.1.0)

public sealed class ReservationServiceClientImpl : ReservationServiceClient

Reference documentation and code samples for the BigQuery Reservation v1 API class ReservationServiceClientImpl.

ReservationService client wrapper implementation, for convenient use.

Inheritance

Object > ReservationServiceClient > ReservationServiceClientImpl

Namespace

Google.Cloud.BigQuery.Reservation.V1

Assembly

Google.Cloud.BigQuery.Reservation.V1.dll

Remarks

This API allows users to manage their flat-rate BigQuery reservations.

A reservation provides computational resource guarantees, in the form of slots, to users. A slot is a unit of computational power in BigQuery, and serves as the basic unit of parallelism. In a scan of a multi-partitioned table, a single slot operates on a single partition of the table. A reservation resource exists as a child resource of the admin project and location, e.g.: projects/myproject/locations/US/reservations/reservationName.

A capacity commitment is a way to purchase compute capacity for BigQuery jobs (in the form of slots) with some committed period of usage. A capacity commitment resource exists as a child resource of the admin project and location, e.g.: projects/myproject/locations/US/capacityCommitments/id.

Constructors

ReservationServiceClientImpl(ReservationService.ReservationServiceClient, ReservationServiceSettings, ILogger)

public ReservationServiceClientImpl(ReservationService.ReservationServiceClient grpcClient, ReservationServiceSettings settings, ILogger logger)

Constructs a client wrapper for the ReservationService service, with the specified gRPC client and settings.

Parameters
NameDescription
grpcClientReservationService.ReservationServiceClient

The underlying gRPC client.

settingsReservationServiceSettings

The base ReservationServiceSettings used within this client.

loggerILogger

Optional ILogger to use within this client.

Properties

GrpcClient

public override ReservationService.ReservationServiceClient GrpcClient { get; }

The underlying gRPC ReservationService client

Property Value
TypeDescription
ReservationService.ReservationServiceClient
Overrides

Methods

CreateAssignment(CreateAssignmentRequest, CallSettings)

public override Assignment CreateAssignment(CreateAssignmentRequest request, CallSettings callSettings = null)

Creates an assignment object which allows the given project to submit jobs of a certain type using slots from the specified reservation.

Currently a resource (project, folder, organization) can only have one assignment per each (job_type, location) combination, and that reservation will be used for all jobs of the matching type.

Different assignments can be created on different levels of the projects, folders or organization hierarchy. During query execution, the assignment is looked up at the project, folder and organization levels in that order. The first assignment found is applied to the query.

When creating assignments, it does not matter if other assignments exist at higher levels.

Example:

  • The organization organizationA contains two projects, project1 and project2.
  • Assignments for all three entities (organizationA, project1, and project2) could all be created and mapped to the same or different reservations.

"None" assignments represent an absence of the assignment. Projects assigned to None use on-demand pricing. To create a "None" assignment, use "none" as a reservation_id in the parent. Example parent: projects/myproject/locations/US/reservations/none.

Returns google.rpc.Code.PERMISSION_DENIED if user does not have 'bigquery.admin' permissions on the project using the reservation and the project that owns this reservation.

Returns google.rpc.Code.INVALID_ARGUMENT when location of the assignment does not match location of the reservation.

Parameters
NameDescription
requestCreateAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Assignment

The RPC response.

Overrides

CreateAssignmentAsync(CreateAssignmentRequest, CallSettings)

public override Task<Assignment> CreateAssignmentAsync(CreateAssignmentRequest request, CallSettings callSettings = null)

Creates an assignment object which allows the given project to submit jobs of a certain type using slots from the specified reservation.

Currently a resource (project, folder, organization) can only have one assignment per each (job_type, location) combination, and that reservation will be used for all jobs of the matching type.

Different assignments can be created on different levels of the projects, folders or organization hierarchy. During query execution, the assignment is looked up at the project, folder and organization levels in that order. The first assignment found is applied to the query.

When creating assignments, it does not matter if other assignments exist at higher levels.

Example:

  • The organization organizationA contains two projects, project1 and project2.
  • Assignments for all three entities (organizationA, project1, and project2) could all be created and mapped to the same or different reservations.

"None" assignments represent an absence of the assignment. Projects assigned to None use on-demand pricing. To create a "None" assignment, use "none" as a reservation_id in the parent. Example parent: projects/myproject/locations/US/reservations/none.

Returns google.rpc.Code.PERMISSION_DENIED if user does not have 'bigquery.admin' permissions on the project using the reservation and the project that owns this reservation.

Returns google.rpc.Code.INVALID_ARGUMENT when location of the assignment does not match location of the reservation.

Parameters
NameDescription
requestCreateAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Assignment>

A Task containing the RPC response.

Overrides

CreateCapacityCommitment(CreateCapacityCommitmentRequest, CallSettings)

public override CapacityCommitment CreateCapacityCommitment(CreateCapacityCommitmentRequest request, CallSettings callSettings = null)

Creates a new capacity commitment resource.

Parameters
NameDescription
requestCreateCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
CapacityCommitment

The RPC response.

Overrides

CreateCapacityCommitmentAsync(CreateCapacityCommitmentRequest, CallSettings)

public override Task<CapacityCommitment> CreateCapacityCommitmentAsync(CreateCapacityCommitmentRequest request, CallSettings callSettings = null)

Creates a new capacity commitment resource.

Parameters
NameDescription
requestCreateCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<CapacityCommitment>

A Task containing the RPC response.

Overrides

CreateReservation(CreateReservationRequest, CallSettings)

public override Reservation CreateReservation(CreateReservationRequest request, CallSettings callSettings = null)

Creates a new reservation resource.

Parameters
NameDescription
requestCreateReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Reservation

The RPC response.

Overrides

CreateReservationAsync(CreateReservationRequest, CallSettings)

public override Task<Reservation> CreateReservationAsync(CreateReservationRequest request, CallSettings callSettings = null)

Creates a new reservation resource.

Parameters
NameDescription
requestCreateReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Reservation>

A Task containing the RPC response.

Overrides

DeleteAssignment(DeleteAssignmentRequest, CallSettings)

public override void DeleteAssignment(DeleteAssignmentRequest request, CallSettings callSettings = null)

Deletes a assignment. No expansion will happen.

Example:

  • Organization organizationA contains two projects, project1 and project2.
  • Reservation res1 exists and was created previously.
  • CreateAssignment was used previously to define the following associations between entities and reservations: <organizationA, res1> and <project1, res1>

In this example, deletion of the <organizationA, res1> assignment won't affect the other assignment <project1, res1>. After said deletion, queries from project1 will still use res1 while queries from project2 will switch to use on-demand mode.

Parameters
NameDescription
requestDeleteAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Overrides

DeleteAssignmentAsync(DeleteAssignmentRequest, CallSettings)

public override Task DeleteAssignmentAsync(DeleteAssignmentRequest request, CallSettings callSettings = null)

Deletes a assignment. No expansion will happen.

Example:

  • Organization organizationA contains two projects, project1 and project2.
  • Reservation res1 exists and was created previously.
  • CreateAssignment was used previously to define the following associations between entities and reservations: <organizationA, res1> and <project1, res1>

In this example, deletion of the <organizationA, res1> assignment won't affect the other assignment <project1, res1>. After said deletion, queries from project1 will still use res1 while queries from project2 will switch to use on-demand mode.

Parameters
NameDescription
requestDeleteAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task

A Task containing the RPC response.

Overrides

DeleteCapacityCommitment(DeleteCapacityCommitmentRequest, CallSettings)

public override void DeleteCapacityCommitment(DeleteCapacityCommitmentRequest request, CallSettings callSettings = null)

Deletes a capacity commitment. Attempting to delete capacity commitment before its commitment_end_time will fail with the error code google.rpc.Code.FAILED_PRECONDITION.

Parameters
NameDescription
requestDeleteCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Overrides

DeleteCapacityCommitmentAsync(DeleteCapacityCommitmentRequest, CallSettings)

public override Task DeleteCapacityCommitmentAsync(DeleteCapacityCommitmentRequest request, CallSettings callSettings = null)

Deletes a capacity commitment. Attempting to delete capacity commitment before its commitment_end_time will fail with the error code google.rpc.Code.FAILED_PRECONDITION.

Parameters
NameDescription
requestDeleteCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task

A Task containing the RPC response.

Overrides

DeleteReservation(DeleteReservationRequest, CallSettings)

public override void DeleteReservation(DeleteReservationRequest request, CallSettings callSettings = null)

Deletes a reservation. Returns google.rpc.Code.FAILED_PRECONDITION when reservation has assignments.

Parameters
NameDescription
requestDeleteReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Overrides

DeleteReservationAsync(DeleteReservationRequest, CallSettings)

public override Task DeleteReservationAsync(DeleteReservationRequest request, CallSettings callSettings = null)

Deletes a reservation. Returns google.rpc.Code.FAILED_PRECONDITION when reservation has assignments.

Parameters
NameDescription
requestDeleteReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task

A Task containing the RPC response.

Overrides

GetBiReservation(GetBiReservationRequest, CallSettings)

public override BiReservation GetBiReservation(GetBiReservationRequest request, CallSettings callSettings = null)

Retrieves a BI reservation.

Parameters
NameDescription
requestGetBiReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
BiReservation

The RPC response.

Overrides

GetBiReservationAsync(GetBiReservationRequest, CallSettings)

public override Task<BiReservation> GetBiReservationAsync(GetBiReservationRequest request, CallSettings callSettings = null)

Retrieves a BI reservation.

Parameters
NameDescription
requestGetBiReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<BiReservation>

A Task containing the RPC response.

Overrides

GetCapacityCommitment(GetCapacityCommitmentRequest, CallSettings)

public override CapacityCommitment GetCapacityCommitment(GetCapacityCommitmentRequest request, CallSettings callSettings = null)

Returns information about the capacity commitment.

Parameters
NameDescription
requestGetCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
CapacityCommitment

The RPC response.

Overrides

GetCapacityCommitmentAsync(GetCapacityCommitmentRequest, CallSettings)

public override Task<CapacityCommitment> GetCapacityCommitmentAsync(GetCapacityCommitmentRequest request, CallSettings callSettings = null)

Returns information about the capacity commitment.

Parameters
NameDescription
requestGetCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<CapacityCommitment>

A Task containing the RPC response.

Overrides

GetReservation(GetReservationRequest, CallSettings)

public override Reservation GetReservation(GetReservationRequest request, CallSettings callSettings = null)

Returns information about the reservation.

Parameters
NameDescription
requestGetReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Reservation

The RPC response.

Overrides

GetReservationAsync(GetReservationRequest, CallSettings)

public override Task<Reservation> GetReservationAsync(GetReservationRequest request, CallSettings callSettings = null)

Returns information about the reservation.

Parameters
NameDescription
requestGetReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Reservation>

A Task containing the RPC response.

Overrides

ListAssignments(ListAssignmentsRequest, CallSettings)

public override PagedEnumerable<ListAssignmentsResponse, Assignment> ListAssignments(ListAssignmentsRequest request, CallSettings callSettings = null)

Lists assignments.

Only explicitly created assignments will be returned.

Example:

  • Organization organizationA contains two projects, project1 and project2.
  • Reservation res1 exists and was created previously.
  • CreateAssignment was used previously to define the following associations between entities and reservations: <organizationA, res1> and <project1, res1>

In this example, ListAssignments will just return the above two assignments for reservation res1, and no expansion/merge will happen.

The wildcard "-" can be used for reservations in the request. In that case all assignments belongs to the specified project and location will be listed.

Note "-" cannot be used for projects nor locations.

Parameters
NameDescription
requestListAssignmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<ListAssignmentsResponse, Assignment>

A pageable sequence of Assignment resources.

Overrides

ListAssignmentsAsync(ListAssignmentsRequest, CallSettings)

public override PagedAsyncEnumerable<ListAssignmentsResponse, Assignment> ListAssignmentsAsync(ListAssignmentsRequest request, CallSettings callSettings = null)

Lists assignments.

Only explicitly created assignments will be returned.

Example:

  • Organization organizationA contains two projects, project1 and project2.
  • Reservation res1 exists and was created previously.
  • CreateAssignment was used previously to define the following associations between entities and reservations: <organizationA, res1> and <project1, res1>

In this example, ListAssignments will just return the above two assignments for reservation res1, and no expansion/merge will happen.

The wildcard "-" can be used for reservations in the request. In that case all assignments belongs to the specified project and location will be listed.

Note "-" cannot be used for projects nor locations.

Parameters
NameDescription
requestListAssignmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<ListAssignmentsResponse, Assignment>

A pageable asynchronous sequence of Assignment resources.

Overrides

ListCapacityCommitments(ListCapacityCommitmentsRequest, CallSettings)

public override PagedEnumerable<ListCapacityCommitmentsResponse, CapacityCommitment> ListCapacityCommitments(ListCapacityCommitmentsRequest request, CallSettings callSettings = null)

Lists all the capacity commitments for the admin project.

Parameters
NameDescription
requestListCapacityCommitmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<ListCapacityCommitmentsResponse, CapacityCommitment>

A pageable sequence of CapacityCommitment resources.

Overrides

ListCapacityCommitmentsAsync(ListCapacityCommitmentsRequest, CallSettings)

public override PagedAsyncEnumerable<ListCapacityCommitmentsResponse, CapacityCommitment> ListCapacityCommitmentsAsync(ListCapacityCommitmentsRequest request, CallSettings callSettings = null)

Lists all the capacity commitments for the admin project.

Parameters
NameDescription
requestListCapacityCommitmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<ListCapacityCommitmentsResponse, CapacityCommitment>

A pageable asynchronous sequence of CapacityCommitment resources.

Overrides

ListReservations(ListReservationsRequest, CallSettings)

public override PagedEnumerable<ListReservationsResponse, Reservation> ListReservations(ListReservationsRequest request, CallSettings callSettings = null)

Lists all the reservations for the project in the specified location.

Parameters
NameDescription
requestListReservationsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<ListReservationsResponse, Reservation>

A pageable sequence of Reservation resources.

Overrides

ListReservationsAsync(ListReservationsRequest, CallSettings)

public override PagedAsyncEnumerable<ListReservationsResponse, Reservation> ListReservationsAsync(ListReservationsRequest request, CallSettings callSettings = null)

Lists all the reservations for the project in the specified location.

Parameters
NameDescription
requestListReservationsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<ListReservationsResponse, Reservation>

A pageable asynchronous sequence of Reservation resources.

Overrides

MergeCapacityCommitments(MergeCapacityCommitmentsRequest, CallSettings)

public override CapacityCommitment MergeCapacityCommitments(MergeCapacityCommitmentsRequest request, CallSettings callSettings = null)

Merges capacity commitments of the same plan into a single commitment.

The resulting capacity commitment has the greater commitment_end_time out of the to-be-merged capacity commitments.

Attempting to merge capacity commitments of different plan will fail with the error code google.rpc.Code.FAILED_PRECONDITION.

Parameters
NameDescription
requestMergeCapacityCommitmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
CapacityCommitment

The RPC response.

Overrides

MergeCapacityCommitmentsAsync(MergeCapacityCommitmentsRequest, CallSettings)

public override Task<CapacityCommitment> MergeCapacityCommitmentsAsync(MergeCapacityCommitmentsRequest request, CallSettings callSettings = null)

Merges capacity commitments of the same plan into a single commitment.

The resulting capacity commitment has the greater commitment_end_time out of the to-be-merged capacity commitments.

Attempting to merge capacity commitments of different plan will fail with the error code google.rpc.Code.FAILED_PRECONDITION.

Parameters
NameDescription
requestMergeCapacityCommitmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<CapacityCommitment>

A Task containing the RPC response.

Overrides

MoveAssignment(MoveAssignmentRequest, CallSettings)

public override Assignment MoveAssignment(MoveAssignmentRequest request, CallSettings callSettings = null)

Moves an assignment under a new reservation.

This differs from removing an existing assignment and recreating a new one by providing a transactional change that ensures an assignee always has an associated reservation.

Parameters
NameDescription
requestMoveAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Assignment

The RPC response.

Overrides

MoveAssignmentAsync(MoveAssignmentRequest, CallSettings)

public override Task<Assignment> MoveAssignmentAsync(MoveAssignmentRequest request, CallSettings callSettings = null)

Moves an assignment under a new reservation.

This differs from removing an existing assignment and recreating a new one by providing a transactional change that ensures an assignee always has an associated reservation.

Parameters
NameDescription
requestMoveAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Assignment>

A Task containing the RPC response.

Overrides

SearchAllAssignments(SearchAllAssignmentsRequest, CallSettings)

public override PagedEnumerable<SearchAllAssignmentsResponse, Assignment> SearchAllAssignments(SearchAllAssignmentsRequest request, CallSettings callSettings = null)

Looks up assignments for a specified resource for a particular region. If the request is about a project:

  1. Assignments created on the project will be returned if they exist.
  2. Otherwise assignments created on the closest ancestor will be returned.
  3. Assignments for different JobTypes will all be returned.

The same logic applies if the request is about a folder.

If the request is about an organization, then assignments created on the organization will be returned (organization doesn't have ancestors).

Comparing to ListAssignments, there are some behavior differences:

  1. permission on the assignee will be verified in this API.
  2. Hierarchy lookup (project->folder->organization) happens in this API.
  3. Parent here is projects/*/locations/*, instead of projects/*/locations/*reservations/*.
Parameters
NameDescription
requestSearchAllAssignmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<SearchAllAssignmentsResponse, Assignment>

A pageable sequence of Assignment resources.

Overrides

SearchAllAssignmentsAsync(SearchAllAssignmentsRequest, CallSettings)

public override PagedAsyncEnumerable<SearchAllAssignmentsResponse, Assignment> SearchAllAssignmentsAsync(SearchAllAssignmentsRequest request, CallSettings callSettings = null)

Looks up assignments for a specified resource for a particular region. If the request is about a project:

  1. Assignments created on the project will be returned if they exist.
  2. Otherwise assignments created on the closest ancestor will be returned.
  3. Assignments for different JobTypes will all be returned.

The same logic applies if the request is about a folder.

If the request is about an organization, then assignments created on the organization will be returned (organization doesn't have ancestors).

Comparing to ListAssignments, there are some behavior differences:

  1. permission on the assignee will be verified in this API.
  2. Hierarchy lookup (project->folder->organization) happens in this API.
  3. Parent here is projects/*/locations/*, instead of projects/*/locations/*reservations/*.
Parameters
NameDescription
requestSearchAllAssignmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<SearchAllAssignmentsResponse, Assignment>

A pageable asynchronous sequence of Assignment resources.

Overrides

SearchAssignments(SearchAssignmentsRequest, CallSettings)

[Obsolete]
public override PagedEnumerable<SearchAssignmentsResponse, Assignment> SearchAssignments(SearchAssignmentsRequest request, CallSettings callSettings = null)

Deprecated: Looks up assignments for a specified resource for a particular region. If the request is about a project:

  1. Assignments created on the project will be returned if they exist.
  2. Otherwise assignments created on the closest ancestor will be returned.
  3. Assignments for different JobTypes will all be returned.

The same logic applies if the request is about a folder.

If the request is about an organization, then assignments created on the organization will be returned (organization doesn't have ancestors).

Comparing to ListAssignments, there are some behavior differences:

  1. permission on the assignee will be verified in this API.
  2. Hierarchy lookup (project->folder->organization) happens in this API.
  3. Parent here is projects/*/locations/*, instead of projects/*/locations/*reservations/*.

Note "-" cannot be used for projects nor locations.

Parameters
NameDescription
requestSearchAssignmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<SearchAssignmentsResponse, Assignment>

A pageable sequence of Assignment resources.

Overrides

SearchAssignmentsAsync(SearchAssignmentsRequest, CallSettings)

[Obsolete]
public override PagedAsyncEnumerable<SearchAssignmentsResponse, Assignment> SearchAssignmentsAsync(SearchAssignmentsRequest request, CallSettings callSettings = null)

Deprecated: Looks up assignments for a specified resource for a particular region. If the request is about a project:

  1. Assignments created on the project will be returned if they exist.
  2. Otherwise assignments created on the closest ancestor will be returned.
  3. Assignments for different JobTypes will all be returned.

The same logic applies if the request is about a folder.

If the request is about an organization, then assignments created on the organization will be returned (organization doesn't have ancestors).

Comparing to ListAssignments, there are some behavior differences:

  1. permission on the assignee will be verified in this API.
  2. Hierarchy lookup (project->folder->organization) happens in this API.
  3. Parent here is projects/*/locations/*, instead of projects/*/locations/*reservations/*.

Note "-" cannot be used for projects nor locations.

Parameters
NameDescription
requestSearchAssignmentsRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<SearchAssignmentsResponse, Assignment>

A pageable asynchronous sequence of Assignment resources.

Overrides

SplitCapacityCommitment(SplitCapacityCommitmentRequest, CallSettings)

public override SplitCapacityCommitmentResponse SplitCapacityCommitment(SplitCapacityCommitmentRequest request, CallSettings callSettings = null)

Splits capacity commitment to two commitments of the same plan and commitment_end_time.

A common use case is to enable downgrading commitments.

For example, in order to downgrade from 10000 slots to 8000, you might split a 10000 capacity commitment into commitments of 2000 and 8000. Then, you delete the first one after the commitment end time passes.

Parameters
NameDescription
requestSplitCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
SplitCapacityCommitmentResponse

The RPC response.

Overrides

SplitCapacityCommitmentAsync(SplitCapacityCommitmentRequest, CallSettings)

public override Task<SplitCapacityCommitmentResponse> SplitCapacityCommitmentAsync(SplitCapacityCommitmentRequest request, CallSettings callSettings = null)

Splits capacity commitment to two commitments of the same plan and commitment_end_time.

A common use case is to enable downgrading commitments.

For example, in order to downgrade from 10000 slots to 8000, you might split a 10000 capacity commitment into commitments of 2000 and 8000. Then, you delete the first one after the commitment end time passes.

Parameters
NameDescription
requestSplitCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<SplitCapacityCommitmentResponse>

A Task containing the RPC response.

Overrides

UpdateAssignment(UpdateAssignmentRequest, CallSettings)

public override Assignment UpdateAssignment(UpdateAssignmentRequest request, CallSettings callSettings = null)

Updates an existing assignment.

Only the priority field can be updated.

Parameters
NameDescription
requestUpdateAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Assignment

The RPC response.

Overrides

UpdateAssignmentAsync(UpdateAssignmentRequest, CallSettings)

public override Task<Assignment> UpdateAssignmentAsync(UpdateAssignmentRequest request, CallSettings callSettings = null)

Updates an existing assignment.

Only the priority field can be updated.

Parameters
NameDescription
requestUpdateAssignmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Assignment>

A Task containing the RPC response.

Overrides

UpdateBiReservation(UpdateBiReservationRequest, CallSettings)

public override BiReservation UpdateBiReservation(UpdateBiReservationRequest request, CallSettings callSettings = null)

Updates a BI reservation.

Only fields specified in the field_mask are updated.

A singleton BI reservation always exists with default size 0. In order to reserve BI capacity it needs to be updated to an amount greater than 0. In order to release BI capacity reservation size must be set to 0.

Parameters
NameDescription
requestUpdateBiReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
BiReservation

The RPC response.

Overrides

UpdateBiReservationAsync(UpdateBiReservationRequest, CallSettings)

public override Task<BiReservation> UpdateBiReservationAsync(UpdateBiReservationRequest request, CallSettings callSettings = null)

Updates a BI reservation.

Only fields specified in the field_mask are updated.

A singleton BI reservation always exists with default size 0. In order to reserve BI capacity it needs to be updated to an amount greater than 0. In order to release BI capacity reservation size must be set to 0.

Parameters
NameDescription
requestUpdateBiReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<BiReservation>

A Task containing the RPC response.

Overrides

UpdateCapacityCommitment(UpdateCapacityCommitmentRequest, CallSettings)

public override CapacityCommitment UpdateCapacityCommitment(UpdateCapacityCommitmentRequest request, CallSettings callSettings = null)

Updates an existing capacity commitment.

Only plan and renewal_plan fields can be updated.

Plan can only be changed to a plan of a longer commitment period. Attempting to change to a plan with shorter commitment period will fail with the error code google.rpc.Code.FAILED_PRECONDITION.

Parameters
NameDescription
requestUpdateCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
CapacityCommitment

The RPC response.

Overrides

UpdateCapacityCommitmentAsync(UpdateCapacityCommitmentRequest, CallSettings)

public override Task<CapacityCommitment> UpdateCapacityCommitmentAsync(UpdateCapacityCommitmentRequest request, CallSettings callSettings = null)

Updates an existing capacity commitment.

Only plan and renewal_plan fields can be updated.

Plan can only be changed to a plan of a longer commitment period. Attempting to change to a plan with shorter commitment period will fail with the error code google.rpc.Code.FAILED_PRECONDITION.

Parameters
NameDescription
requestUpdateCapacityCommitmentRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<CapacityCommitment>

A Task containing the RPC response.

Overrides

UpdateReservation(UpdateReservationRequest, CallSettings)

public override Reservation UpdateReservation(UpdateReservationRequest request, CallSettings callSettings = null)

Updates an existing reservation resource.

Parameters
NameDescription
requestUpdateReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Reservation

The RPC response.

Overrides

UpdateReservationAsync(UpdateReservationRequest, CallSettings)

public override Task<Reservation> UpdateReservationAsync(UpdateReservationRequest request, CallSettings callSettings = null)

Updates an existing reservation resource.

Parameters
NameDescription
requestUpdateReservationRequest

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

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Reservation>

A Task containing the RPC response.

Overrides