BigQuery Reservation API . projects . locations . reservations . assignments

Instance Methods

create(parent, body=None, x__xgafv=None)

Returns `google.rpc.Code.PERMISSION_DENIED` if user does not have

delete(name, x__xgafv=None)

Deletes a assignment. No expansion will happen.

list(parent, pageToken=None, pageSize=None, x__xgafv=None)

Lists assignments.

list_next(previous_request, previous_response)

Retrieves the next page of results.

move(name, body=None, x__xgafv=None)

Moves a assignment under a new reservation. Customers can do this by

Method Details

create(parent, body=None, x__xgafv=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.

Args:
  parent: string, Required. The parent resource name of the assignment
E.g.: projects/myproject/locations/US/reservations/team1-prod (required)
  body: object, The request body.
    The object takes the form of:

{ # A Assignment allows a project to submit jobs
    # of a certain type using slots from the specified reservation.
  "jobType": "A String", # Which type of jobs will use the reservation.
  "state": "A String", # Output only. State of the assignment.
  "name": "A String", # Output only. Name of the resource. E.g.:
      # projects/myproject/locations/US/reservations/team1-prod/assignments/123.
  "assignee": "A String", # The resource which will use the reservation. E.g.
      # projects/myproject, folders/123, organizations/456.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A Assignment allows a project to submit jobs
      # of a certain type using slots from the specified reservation.
    "jobType": "A String", # Which type of jobs will use the reservation.
    "state": "A String", # Output only. State of the assignment.
    "name": "A String", # Output only. Name of the resource. E.g.:
        # projects/myproject/locations/US/reservations/team1-prod/assignments/123.
    "assignee": "A String", # The resource which will use the reservation. E.g.
        # projects/myproject, folders/123, organizations/456.
  }
delete(name, x__xgafv=None)
Deletes a assignment. No expansion will happen.
E.g:
organizationA contains project1 and project2. Reservation res1 exists.
CreateAssignment was invoked previously and following assignments were
created explicitly:
  <organizationA, res1>
  <project1, res1>
Then deletion of <organizationA, res1> won't affect <project1, res1>. After
deletion of <organizationA, res1>, queries from project1 will still use
res1, while queries from project2 will use on-demand mode.

Args:
  name: string, Required. Name of the resource, e.g.:
  projects/myproject/locations/US/reservations/team1-prod/assignments/123 (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated
      # empty messages in your APIs. A typical example is to use it as the request
      # or the response type of an API method. For instance:
      #
      #     service Foo {
      #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
      #     }
      #
      # The JSON representation for `Empty` is empty JSON object `{}`.
  }
list(parent, pageToken=None, pageSize=None, x__xgafv=None)
Lists assignments.
Only explicitly created assignments will be returned. E.g:
organizationA contains project1 and project2. Reservation res1 exists.
CreateAssignment was invoked previously and following assignments were
created explicitly:
  <organizationA, res1>
  <project1, res1>
Then this API will just return the above two assignments for reservation
res1, and no expansion/merge will happen. 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.

Args:
  parent: string, Required. The parent resource name e.g.:
projects/myproject/locations/US/reservations/team1-prod
Or:
projects/myproject/locations/US/reservations/- (required)
  pageToken: string, The next_page_token value returned from a previous List request, if any.
  pageSize: integer, The maximum number of items to return.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The response for ReservationService.ListAssignments.
    "nextPageToken": "A String", # Token to retrieve the next page of results, or empty if there are no
        # more results in the list.
    "assignments": [ # List of assignments visible to the user.
      { # A Assignment allows a project to submit jobs
          # of a certain type using slots from the specified reservation.
        "jobType": "A String", # Which type of jobs will use the reservation.
        "state": "A String", # Output only. State of the assignment.
        "name": "A String", # Output only. Name of the resource. E.g.:
            # projects/myproject/locations/US/reservations/team1-prod/assignments/123.
        "assignee": "A String", # The resource which will use the reservation. E.g.
            # projects/myproject, folders/123, organizations/456.
      },
    ],
  }
list_next(previous_request, previous_response)
Retrieves the next page of results.

Args:
  previous_request: The request for the previous page. (required)
  previous_response: The response from the request for the previous page. (required)

Returns:
  A request object that you can call 'execute()' on to request the next
  page. Returns None if there are no more items in the collection.
    
move(name, body=None, x__xgafv=None)
Moves a assignment under a new reservation. Customers can do this by
deleting the existing assignment followed by creating another assignment
under the new reservation, but this method provides a transactional way to
do so, to make sure the assignee always has an associated reservation.
Without the method customers might see some queries run on-demand which
might be unexpected.

Args:
  name: string, Required. The resource name of the assignment,
e.g.:
  projects/myproject/locations/US/reservations/team1-prod/assignments/123 (required)
  body: object, The request body.
    The object takes the form of:

{ # The request for
      # ReservationService.MoveAssignment.
      # Note: "bigquery.reservationAssignments.create" permission is required on the
      # destination_id. Note: "bigquery.reservationAssignments.create" and
      # "bigquery.reservationAssignments.delete" permission is required on the
      # related assignee.
    "destinationId": "A String", # The new reservation ID, e.g.:
        #   projects/myotherproject/locations/US/reservations/team2-prod
  }

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A Assignment allows a project to submit jobs
      # of a certain type using slots from the specified reservation.
    "jobType": "A String", # Which type of jobs will use the reservation.
    "state": "A String", # Output only. State of the assignment.
    "name": "A String", # Output only. Name of the resource. E.g.:
        # projects/myproject/locations/US/reservations/team1-prod/assignments/123.
    "assignee": "A String", # The resource which will use the reservation. E.g.
        # projects/myproject, folders/123, organizations/456.
  }