google-apis-dns_v1-0.50.0/0000755000004100000410000000000015136232660015226 5ustar www-datawww-datagoogle-apis-dns_v1-0.50.0/OVERVIEW.md0000644000004100000410000001352015136232660017017 0ustar www-datawww-data# Simple REST client for version V1 of the Cloud DNS API This is a simple client library for version V1 of the Cloud DNS API. It provides: * A client object that connects to the HTTP/JSON REST endpoint for the service. * Ruby objects for data structures related to the service. * Integration with the googleauth gem for authentication using OAuth, API keys, and service accounts. * Control of retry, pagination, and timeouts. Note that although this client library is supported and will continue to be updated to track changes to the service, it is otherwise considered complete and not under active development. Many Google services, especially Google Cloud Platform services, may provide a more modern client that is under more active development and improvement. See the section below titled *Which client should I use?* for more information. ## Getting started ### Before you begin There are a few setup steps you need to complete before you can use this library: 1. If you don't already have a Google account, [sign up](https://www.google.com/accounts). 2. If you have never created a Google APIs Console project, read about [Managing Projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects) and create a project in the [Google API Console](https://console.cloud.google.com/). 3. Most APIs need to be enabled for your project. [Enable it](https://console.cloud.google.com/apis/library/dns.googleapis.com) in the console. ### Installation Add this line to your application's Gemfile: ```ruby gem 'google-apis-dns_v1', '~> 0.1' ``` And then execute: ``` $ bundle ``` Or install it yourself as: ``` $ gem install google-apis-dns_v1 ``` ### Creating a client object Once the gem is installed, you can load the client code and instantiate a client. ```ruby # Load the client require "google/apis/dns_v1" # Create a client object client = Google::Apis::DnsV1::DnsService.new # Authenticate calls client.authorization = # ... use the googleauth gem to create credentials ``` See the class reference docs for information on the methods you can call from a client. ## Documentation More detailed descriptions of the Google simple REST clients are available in two documents. * The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/main/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging. * The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/main/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables. (Note: the above documents are written for the simple REST clients in general, and their examples may not reflect the Dns service in particular.) For reference information on specific calls in the Cloud DNS API, see the {Google::Apis::DnsV1::DnsService class reference docs}. ## Which client should I use? Google provides two types of Ruby API client libraries: **simple REST clients** and **modern clients**. This library, `google-apis-dns_v1`, is a simple REST client. You can identify these clients by their gem names, which are always in the form `google-apis-_`. The simple REST clients connect to HTTP/JSON REST endpoints and are automatically generated from service discovery documents. They support most API functionality, but their class interfaces are sometimes awkward. Modern clients are produced by a modern code generator, sometimes combined with hand-crafted functionality. Most modern clients connect to high-performance gRPC endpoints, although a few are backed by REST services. Modern clients are available for many Google services, especially Google Cloud Platform services, but do not yet support all the services covered by the simple clients. Gem names for modern clients are often of the form `google-cloud-`. (For example, [google-cloud-pubsub](https://rubygems.org/gems/google-cloud-pubsub).) Note that most modern clients also have corresponding "versioned" gems with names like `google-cloud--`. (For example, [google-cloud-pubsub-v1](https://rubygems.org/gems/google-cloud-pubsub-v1).) The "versioned" gems can be used directly, but often provide lower-level interfaces. In most cases, the main gem is recommended. **For most users, we recommend the modern client, if one is available.** Compared with simple clients, modern clients are generally much easier to use and more Ruby-like, support more advanced features such as streaming and long-running operations, and often provide much better performance. You may consider using a simple client instead, if a modern client is not yet available for the service you want to use, or if you are not able to use gRPC on your infrastructure. The [product documentation](https://cloud.google.com/dns/docs) may provide guidance regarding the preferred client library to use. ## Supported Ruby versions This library is supported on Ruby 3.1+. Google provides official support for Ruby versions that are actively supported by Ruby Core -- that is, Ruby versions that are either in normal maintenance or in security maintenance, and not end of life. Older versions of Ruby _may_ still work, but are unsupported and not recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details about the Ruby support schedule. ## License This library is licensed under Apache 2.0. Full license text is available in the {file:LICENSE.md LICENSE}. ## Support Please [report bugs at the project on Github](https://github.com/google/google-api-ruby-client/issues). Don't hesitate to [ask questions](http://stackoverflow.com/questions/tagged/google-api-ruby-client) about the client or APIs on [StackOverflow](http://stackoverflow.com). google-apis-dns_v1-0.50.0/lib/0000755000004100000410000000000015136232660015774 5ustar www-datawww-datagoogle-apis-dns_v1-0.50.0/lib/google-apis-dns_v1.rb0000644000004100000410000000113515136232660021717 0ustar www-datawww-data# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require "google/apis/dns_v1" google-apis-dns_v1-0.50.0/lib/google/0000755000004100000410000000000015136232660017250 5ustar www-datawww-datagoogle-apis-dns_v1-0.50.0/lib/google/apis/0000755000004100000410000000000015136232660020204 5ustar www-datawww-datagoogle-apis-dns_v1-0.50.0/lib/google/apis/dns_v1.rb0000644000004100000410000000327315136232660021730 0ustar www-datawww-data# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'google/apis/dns_v1/service.rb' require 'google/apis/dns_v1/classes.rb' require 'google/apis/dns_v1/representations.rb' require 'google/apis/dns_v1/gem_version.rb' module Google module Apis # Cloud DNS API # # # # @see https://cloud.google.com/dns/docs module DnsV1 # Version of the Cloud DNS API this client connects to. # This is NOT the gem version. VERSION = 'V1' # See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account. AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' # View your data across Google Cloud services and see the email address of your Google Account AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' # View your DNS records hosted by Google Cloud DNS AUTH_NDEV_CLOUDDNS_READONLY = 'https://www.googleapis.com/auth/ndev.clouddns.readonly' # View and manage your DNS records hosted by Google Cloud DNS AUTH_NDEV_CLOUDDNS_READWRITE = 'https://www.googleapis.com/auth/ndev.clouddns.readwrite' end end end google-apis-dns_v1-0.50.0/lib/google/apis/dns_v1/0000755000004100000410000000000015136232660021376 5ustar www-datawww-datagoogle-apis-dns_v1-0.50.0/lib/google/apis/dns_v1/gem_version.rb0000644000004100000410000000163015136232660024240 0ustar www-datawww-data# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. module Google module Apis module DnsV1 # Version of the google-apis-dns_v1 gem GEM_VERSION = "0.50.0" # Version of the code generator used to generate this client GENERATOR_VERSION = "0.18.0" # Revision of the discovery document this client was generated from REVISION = "20260113" end end end google-apis-dns_v1-0.50.0/lib/google/apis/dns_v1/service.rb0000644000004100000410000032143615136232660023374 0ustar www-datawww-data# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'google/apis/core/base_service' require 'google/apis/core/json_representation' require 'google/apis/core/hashable' require 'google/apis/errors' module Google module Apis module DnsV1 # Cloud DNS API # # # # @example # require 'google/apis/dns_v1' # # Dns = Google::Apis::DnsV1 # Alias the module # service = Dns::DnsService.new # # @see https://cloud.google.com/dns/docs class DnsService < Google::Apis::Core::BaseService DEFAULT_ENDPOINT_TEMPLATE = "https://dns.$UNIVERSE_DOMAIN$/" # @return [String] # API key. Your API key identifies your project and provides you with API access, # quota, and reports. Required unless you provide an OAuth 2.0 token. attr_accessor :key # @return [String] # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. attr_accessor :quota_user def initialize super(DEFAULT_ENDPOINT_TEMPLATE, '', client_name: 'google-apis-dns_v1', client_version: Google::Apis::DnsV1::GEM_VERSION) @batch_path = 'batch' end # Atomically updates the ResourceRecordSet collection. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [Google::Apis::DnsV1::Change] change_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Change] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Change] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def create_change(project, managed_zone, change_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/projects/{project}/managedZones/{managedZone}/changes', options) command.request_representation = Google::Apis::DnsV1::Change::Representation command.request_object = change_object command.response_representation = Google::Apis::DnsV1::Change::Representation command.response_class = Google::Apis::DnsV1::Change command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing Change. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] change_id # The identifier of the requested change, from a previous # ResourceRecordSetsChangeResponse. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Change] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Change] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_change(project, managed_zone, change_id, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/changes/{changeId}', options) command.response_representation = Google::Apis::DnsV1::Change::Representation command.response_class = Google::Apis::DnsV1::Change command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.params['changeId'] = change_id unless change_id.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates Changes to a ResourceRecordSet collection. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] sort_by # Sorting criterion. The only supported value is change sequence. # @param [String] sort_order # Sorting order direction: 'ascending' or 'descending'. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ListChangesResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ListChangesResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_changes(project, managed_zone, max_results: nil, page_token: nil, sort_by: nil, sort_order: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/changes', options) command.response_representation = Google::Apis::DnsV1::ListChangesResponse::Representation command.response_class = Google::Apis::DnsV1::ListChangesResponse command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['sortBy'] = sort_by unless sort_by.nil? command.query['sortOrder'] = sort_order unless sort_order.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing DnsKey. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] dns_key_id # The identifier of the requested DnsKey. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] digest_type # An optional comma-separated list of digest types to compute and display for # key signing keys. If omitted, the recommended digest type is computed and # displayed. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::DnsKey] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::DnsKey] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_dns_key(project, managed_zone, dns_key_id, client_operation_id: nil, digest_type: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}', options) command.response_representation = Google::Apis::DnsV1::DnsKey::Representation command.response_class = Google::Apis::DnsV1::DnsKey command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.params['dnsKeyId'] = dns_key_id unless dns_key_id.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['digestType'] = digest_type unless digest_type.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates DnsKeys to a ResourceRecordSet collection. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] digest_type # An optional comma-separated list of digest types to compute and display for # key signing keys. If omitted, the recommended digest type is computed and # displayed. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::DnsKeysListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::DnsKeysListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_dns_keys(project, managed_zone, digest_type: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/dnsKeys', options) command.response_representation = Google::Apis::DnsV1::DnsKeysListResponse::Representation command.response_class = Google::Apis::DnsV1::DnsKeysListResponse command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['digestType'] = digest_type unless digest_type.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing Operation. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. # @param [String] operation # Identifies the operation addressed by this request (ID of the operation). # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Operation] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Operation] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_managed_zone_operation(project, managed_zone, operation, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/operations/{operation}', options) command.response_representation = Google::Apis::DnsV1::Operation::Representation command.response_class = Google::Apis::DnsV1::Operation command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.params['operation'] = operation unless operation.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates Operations for the given ManagedZone. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] sort_by # Sorting criterion. The only supported values are START_TIME and ID. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ManagedZoneOperationsListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ManagedZoneOperationsListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_managed_zone_operations(project, managed_zone, max_results: nil, page_token: nil, sort_by: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/operations', options) command.response_representation = Google::Apis::DnsV1::ManagedZoneOperationsListResponse::Representation command.response_class = Google::Apis::DnsV1::ManagedZoneOperationsListResponse command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['sortBy'] = sort_by unless sort_by.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Creates a new ManagedZone. # @param [String] project # Identifies the project addressed by this request. # @param [Google::Apis::DnsV1::ManagedZone] managed_zone_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ManagedZone] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ManagedZone] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def create_managed_zone(project, managed_zone_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/projects/{project}/managedZones', options) command.request_representation = Google::Apis::DnsV1::ManagedZone::Representation command.request_object = managed_zone_object command.response_representation = Google::Apis::DnsV1::ManagedZone::Representation command.response_class = Google::Apis::DnsV1::ManagedZone command.params['project'] = project unless project.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deletes a previously created ManagedZone. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_managed_zone(project, managed_zone, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'dns/v1/projects/{project}/managedZones/{managedZone}', options) command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing ManagedZone. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ManagedZone] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ManagedZone] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_managed_zone(project, managed_zone, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}', options) command.response_representation = Google::Apis::DnsV1::ManagedZone::Representation command.response_class = Google::Apis::DnsV1::ManagedZone command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Gets the access control policy for a resource. Returns an empty policy if the # resource exists and does not have a policy set. # @param [String] resource # REQUIRED: The resource for which the policy is being requested. See [Resource # names](https://cloud.google.com/apis/design/resource_names) for the # appropriate value for this field. # @param [Google::Apis::DnsV1::GoogleIamV1GetIamPolicyRequest] google_iam_v1_get_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::GoogleIamV1Policy] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::GoogleIamV1Policy] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_managed_zone_iam_policy(resource, google_iam_v1_get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/{+resource}:getIamPolicy', options) command.request_representation = Google::Apis::DnsV1::GoogleIamV1GetIamPolicyRequest::Representation command.request_object = google_iam_v1_get_iam_policy_request_object command.response_representation = Google::Apis::DnsV1::GoogleIamV1Policy::Representation command.response_class = Google::Apis::DnsV1::GoogleIamV1Policy command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates ManagedZones that have been created but not yet deleted. # @param [String] project # Identifies the project addressed by this request. # @param [String] dns_name # Restricts the list to return only zones with this domain name. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ListManagedZonesResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ListManagedZonesResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_managed_zones(project, dns_name: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones', options) command.response_representation = Google::Apis::DnsV1::ListManagedZonesResponse::Representation command.response_class = Google::Apis::DnsV1::ListManagedZonesResponse command.params['project'] = project unless project.nil? command.query['dnsName'] = dns_name unless dns_name.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Applies a partial update to an existing ManagedZone. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [Google::Apis::DnsV1::ManagedZone] managed_zone_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Operation] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Operation] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def patch_managed_zone(project, managed_zone, managed_zone_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:patch, 'dns/v1/projects/{project}/managedZones/{managedZone}', options) command.request_representation = Google::Apis::DnsV1::ManagedZone::Representation command.request_object = managed_zone_object command.response_representation = Google::Apis::DnsV1::Operation::Representation command.response_class = Google::Apis::DnsV1::Operation command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Sets the access control policy on the specified resource. Replaces any # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and ` # PERMISSION_DENIED` errors. # @param [String] resource # REQUIRED: The resource for which the policy is being specified. See [Resource # names](https://cloud.google.com/apis/design/resource_names) for the # appropriate value for this field. # @param [Google::Apis::DnsV1::GoogleIamV1SetIamPolicyRequest] google_iam_v1_set_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::GoogleIamV1Policy] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::GoogleIamV1Policy] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def set_managed_zone_iam_policy(resource, google_iam_v1_set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/{+resource}:setIamPolicy', options) command.request_representation = Google::Apis::DnsV1::GoogleIamV1SetIamPolicyRequest::Representation command.request_object = google_iam_v1_set_iam_policy_request_object command.response_representation = Google::Apis::DnsV1::GoogleIamV1Policy::Representation command.response_class = Google::Apis::DnsV1::GoogleIamV1Policy command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Returns permissions that a caller has on the specified resource. If the # resource does not exist, this returns an empty set of permissions, not a ` # NOT_FOUND` error. Note: This operation is designed to be used for building # permission-aware UIs and command-line tools, not for authorization checking. # This operation may "fail open" without warning. # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. See [ # Resource names](https://cloud.google.com/apis/design/resource_names) for the # appropriate value for this field. # @param [Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsRequest] google_iam_v1_test_iam_permissions_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def test_managed_zone_iam_permissions(resource, google_iam_v1_test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/{+resource}:testIamPermissions', options) command.request_representation = Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsRequest::Representation command.request_object = google_iam_v1_test_iam_permissions_request_object command.response_representation = Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse::Representation command.response_class = Google::Apis::DnsV1::GoogleIamV1TestIamPermissionsResponse command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Updates an existing ManagedZone. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [Google::Apis::DnsV1::ManagedZone] managed_zone_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Operation] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Operation] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_managed_zone(project, managed_zone, managed_zone_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:put, 'dns/v1/projects/{project}/managedZones/{managedZone}', options) command.request_representation = Google::Apis::DnsV1::ManagedZone::Representation command.request_object = managed_zone_object command.response_representation = Google::Apis::DnsV1::Operation::Representation command.response_class = Google::Apis::DnsV1::Operation command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Creates a new policy. # @param [String] project # Identifies the project addressed by this request. # @param [Google::Apis::DnsV1::Policy] policy_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Policy] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Policy] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def create_policy(project, policy_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/projects/{project}/policies', options) command.request_representation = Google::Apis::DnsV1::Policy::Representation command.request_object = policy_object command.response_representation = Google::Apis::DnsV1::Policy::Representation command.response_class = Google::Apis::DnsV1::Policy command.params['project'] = project unless project.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deletes a previously created policy. Fails if the policy is still being # referenced by a network. # @param [String] project # Identifies the project addressed by this request. # @param [String] policy # User given friendly name of the policy addressed by this request. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_policy(project, policy, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'dns/v1/projects/{project}/policies/{policy}', options) command.params['project'] = project unless project.nil? command.params['policy'] = policy unless policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing policy. # @param [String] project # Identifies the project addressed by this request. # @param [String] policy # User given friendly name of the policy addressed by this request. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Policy] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Policy] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_policy(project, policy, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/policies/{policy}', options) command.response_representation = Google::Apis::DnsV1::Policy::Representation command.response_class = Google::Apis::DnsV1::Policy command.params['project'] = project unless project.nil? command.params['policy'] = policy unless policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates all policies associated with a project. # @param [String] project # Identifies the project addressed by this request. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::PoliciesListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::PoliciesListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_policies(project, max_results: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/policies', options) command.response_representation = Google::Apis::DnsV1::PoliciesListResponse::Representation command.response_class = Google::Apis::DnsV1::PoliciesListResponse command.params['project'] = project unless project.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Applies a partial update to an existing policy. # @param [String] project # Identifies the project addressed by this request. # @param [String] policy # User given friendly name of the policy addressed by this request. # @param [Google::Apis::DnsV1::Policy] policy_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::PoliciesPatchResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::PoliciesPatchResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def patch_policy(project, policy, policy_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:patch, 'dns/v1/projects/{project}/policies/{policy}', options) command.request_representation = Google::Apis::DnsV1::Policy::Representation command.request_object = policy_object command.response_representation = Google::Apis::DnsV1::PoliciesPatchResponse::Representation command.response_class = Google::Apis::DnsV1::PoliciesPatchResponse command.params['project'] = project unless project.nil? command.params['policy'] = policy unless policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Updates an existing policy. # @param [String] project # Identifies the project addressed by this request. # @param [String] policy # User given friendly name of the policy addressed by this request. # @param [Google::Apis::DnsV1::Policy] policy_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::PoliciesUpdateResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::PoliciesUpdateResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_policy(project, policy, policy_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:put, 'dns/v1/projects/{project}/policies/{policy}', options) command.request_representation = Google::Apis::DnsV1::Policy::Representation command.request_object = policy_object command.response_representation = Google::Apis::DnsV1::PoliciesUpdateResponse::Representation command.response_class = Google::Apis::DnsV1::PoliciesUpdateResponse command.params['project'] = project unless project.nil? command.params['policy'] = policy unless policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing Project. # @param [String] project # Identifies the project addressed by this request. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::Project] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::Project] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_project(project, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}', options) command.response_representation = Google::Apis::DnsV1::Project::Representation command.response_class = Google::Apis::DnsV1::Project command.params['project'] = project unless project.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Creates a new ResourceRecordSet. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [Google::Apis::DnsV1::ResourceRecordSet] resource_record_set_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResourceRecordSet] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResourceRecordSet] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def create_resource_record_set(project, managed_zone, resource_record_set_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/projects/{project}/managedZones/{managedZone}/rrsets', options) command.request_representation = Google::Apis::DnsV1::ResourceRecordSet::Representation command.request_object = resource_record_set_object command.response_representation = Google::Apis::DnsV1::ResourceRecordSet::Representation command.response_class = Google::Apis::DnsV1::ResourceRecordSet command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deletes a previously created ResourceRecordSet. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] name # Fully qualified domain name. # @param [String] type # RRSet type. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResourceRecordSetsDeleteResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResourceRecordSetsDeleteResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_resource_record_set(project, managed_zone, name, type, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'dns/v1/projects/{project}/managedZones/{managedZone}/rrsets/{name}/{type}', options) command.response_representation = Google::Apis::DnsV1::ResourceRecordSetsDeleteResponse::Representation command.response_class = Google::Apis::DnsV1::ResourceRecordSetsDeleteResponse command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.params['name'] = name unless name.nil? command.params['type'] = type unless type.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing ResourceRecordSet. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] name # Fully qualified domain name. # @param [String] type # RRSet type. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResourceRecordSet] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResourceRecordSet] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_resource_record_set(project, managed_zone, name, type, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/rrsets/{name}/{type}', options) command.response_representation = Google::Apis::DnsV1::ResourceRecordSet::Representation command.response_class = Google::Apis::DnsV1::ResourceRecordSet command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.params['name'] = name unless name.nil? command.params['type'] = type unless type.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates ResourceRecordSets that you have created but not yet deleted. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] name # Specify a fully qualified domain name to view only those records. The name # parameter is not supported and must be omitted when you use filter. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] type # Specify a record type to view only those records. You must also specify the # name parameter. The type parameter is not supported and must be omitted when # you use filter. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ListResourceRecordSetsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ListResourceRecordSetsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_resource_record_sets(project, managed_zone, max_results: nil, name: nil, page_token: nil, type: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/managedZones/{managedZone}/rrsets', options) command.response_representation = Google::Apis::DnsV1::ListResourceRecordSetsResponse::Representation command.response_class = Google::Apis::DnsV1::ListResourceRecordSetsResponse command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['name'] = name unless name.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['type'] = type unless type.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Applies a partial update to an existing ResourceRecordSet. # @param [String] project # Identifies the project addressed by this request. # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or ID. # @param [String] name # Fully qualified domain name. # @param [String] type # RRSet type. # @param [Google::Apis::DnsV1::ResourceRecordSet] resource_record_set_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResourceRecordSet] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResourceRecordSet] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def patch_resource_record_set(project, managed_zone, name, type, resource_record_set_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:patch, 'dns/v1/projects/{project}/managedZones/{managedZone}/rrsets/{name}/{type}', options) command.request_representation = Google::Apis::DnsV1::ResourceRecordSet::Representation command.request_object = resource_record_set_object command.response_representation = Google::Apis::DnsV1::ResourceRecordSet::Representation command.response_class = Google::Apis::DnsV1::ResourceRecordSet command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.params['name'] = name unless name.nil? command.params['type'] = type unless type.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Creates a new Response Policy # @param [String] project # Identifies the project addressed by this request. # @param [Google::Apis::DnsV1::ResponsePolicy] response_policy_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePolicy] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePolicy] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def create_response_policy(project, response_policy_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/projects/{project}/responsePolicies', options) command.request_representation = Google::Apis::DnsV1::ResponsePolicy::Representation command.request_object = response_policy_object command.response_representation = Google::Apis::DnsV1::ResponsePolicy::Representation command.response_class = Google::Apis::DnsV1::ResponsePolicy command.params['project'] = project unless project.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deletes a previously created Response Policy. Fails if the response policy is # non-empty or still being referenced by a network. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy addressed by this request. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_response_policy(project, response_policy, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}', options) command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing Response Policy. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy addressed by this request. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePolicy] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePolicy] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_response_policy(project, response_policy, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}', options) command.response_representation = Google::Apis::DnsV1::ResponsePolicy::Representation command.response_class = Google::Apis::DnsV1::ResponsePolicy command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates all Response Policies associated with a project. # @param [String] project # Identifies the project addressed by this request. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePoliciesListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePoliciesListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_response_policies(project, max_results: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/responsePolicies', options) command.response_representation = Google::Apis::DnsV1::ResponsePoliciesListResponse::Representation command.response_class = Google::Apis::DnsV1::ResponsePoliciesListResponse command.params['project'] = project unless project.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Applies a partial update to an existing Response Policy. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the response policy addressed by this request. # @param [Google::Apis::DnsV1::ResponsePolicy] response_policy_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePoliciesPatchResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePoliciesPatchResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def patch_response_policy(project, response_policy, response_policy_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:patch, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}', options) command.request_representation = Google::Apis::DnsV1::ResponsePolicy::Representation command.request_object = response_policy_object command.response_representation = Google::Apis::DnsV1::ResponsePoliciesPatchResponse::Representation command.response_class = Google::Apis::DnsV1::ResponsePoliciesPatchResponse command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Updates an existing Response Policy. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy addressed by this request. # @param [Google::Apis::DnsV1::ResponsePolicy] response_policy_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePoliciesUpdateResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePoliciesUpdateResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_response_policy(project, response_policy, response_policy_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:put, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}', options) command.request_representation = Google::Apis::DnsV1::ResponsePolicy::Representation command.request_object = response_policy_object command.response_representation = Google::Apis::DnsV1::ResponsePoliciesUpdateResponse::Representation command.response_class = Google::Apis::DnsV1::ResponsePoliciesUpdateResponse command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Creates a new Response Policy Rule. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy containing the Response Policy Rule. # @param [Google::Apis::DnsV1::ResponsePolicyRule] response_policy_rule_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePolicyRule] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePolicyRule] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def create_response_policy_rule(project, response_policy, response_policy_rule_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}/rules', options) command.request_representation = Google::Apis::DnsV1::ResponsePolicyRule::Representation command.request_object = response_policy_rule_object command.response_representation = Google::Apis::DnsV1::ResponsePolicyRule::Representation command.response_class = Google::Apis::DnsV1::ResponsePolicyRule command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deletes a previously created Response Policy Rule. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy containing the Response Policy Rule. # @param [String] response_policy_rule # User assigned name of the Response Policy Rule addressed by this request. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_response_policy_rule(project, response_policy, response_policy_rule, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}', options) command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.params['responsePolicyRule'] = response_policy_rule unless response_policy_rule.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Fetches the representation of an existing Response Policy Rule. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy containing the Response Policy Rule. # @param [String] response_policy_rule # User assigned name of the Response Policy Rule addressed by this request. # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePolicyRule] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePolicyRule] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_response_policy_rule(project, response_policy, response_policy_rule, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}', options) command.response_representation = Google::Apis::DnsV1::ResponsePolicyRule::Representation command.response_class = Google::Apis::DnsV1::ResponsePolicyRule command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.params['responsePolicyRule'] = response_policy_rule unless response_policy_rule.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Enumerates all Response Policy Rules associated with a project. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy to list. # @param [Fixnum] max_results # Optional. Maximum number of results to be returned. If unspecified, the server # decides how many results to return. # @param [String] page_token # Optional. A tag returned by a previous list request that was truncated. Use # this parameter to continue a previous list request. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePolicyRulesListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePolicyRulesListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_response_policy_rules(project, response_policy, max_results: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}/rules', options) command.response_representation = Google::Apis::DnsV1::ResponsePolicyRulesListResponse::Representation command.response_class = Google::Apis::DnsV1::ResponsePolicyRulesListResponse command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Applies a partial update to an existing Response Policy Rule. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy containing the Response Policy Rule. # @param [String] response_policy_rule # User assigned name of the Response Policy Rule addressed by this request. # @param [Google::Apis::DnsV1::ResponsePolicyRule] response_policy_rule_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePolicyRulesPatchResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePolicyRulesPatchResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def patch_response_policy_rule(project, response_policy, response_policy_rule, response_policy_rule_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:patch, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}', options) command.request_representation = Google::Apis::DnsV1::ResponsePolicyRule::Representation command.request_object = response_policy_rule_object command.response_representation = Google::Apis::DnsV1::ResponsePolicyRulesPatchResponse::Representation command.response_class = Google::Apis::DnsV1::ResponsePolicyRulesPatchResponse command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.params['responsePolicyRule'] = response_policy_rule unless response_policy_rule.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Updates an existing Response Policy Rule. # @param [String] project # Identifies the project addressed by this request. # @param [String] response_policy # User assigned name of the Response Policy containing the Response Policy Rule. # @param [String] response_policy_rule # User assigned name of the Response Policy Rule addressed by this request. # @param [Google::Apis::DnsV1::ResponsePolicyRule] response_policy_rule_object # @param [String] client_operation_id # For mutating operation requests only. An optional identifier specified by the # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::DnsV1::ResponsePolicyRulesUpdateResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::DnsV1::ResponsePolicyRulesUpdateResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_response_policy_rule(project, response_policy, response_policy_rule, response_policy_rule_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:put, 'dns/v1/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}', options) command.request_representation = Google::Apis::DnsV1::ResponsePolicyRule::Representation command.request_object = response_policy_rule_object command.response_representation = Google::Apis::DnsV1::ResponsePolicyRulesUpdateResponse::Representation command.response_class = Google::Apis::DnsV1::ResponsePolicyRulesUpdateResponse command.params['project'] = project unless project.nil? command.params['responsePolicy'] = response_policy unless response_policy.nil? command.params['responsePolicyRule'] = response_policy_rule unless response_policy_rule.nil? command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end protected def apply_command_defaults(command) command.query['key'] = key unless key.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? end end end end end google-apis-dns_v1-0.50.0/lib/google/apis/dns_v1/classes.rb0000644000004100000410000035435015136232660023372 0ustar www-datawww-data# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'date' require 'google/apis/core/base_service' require 'google/apis/core/json_representation' require 'google/apis/core/hashable' require 'google/apis/errors' module Google module Apis module DnsV1 # A Change represents a set of `ResourceRecordSet` additions and deletions # applied atomically to a ManagedZone. ResourceRecordSets within a ManagedZone # are modified by creating a new Change element in the Changes collection. In # turn the Changes collection also records the past modifications to the ` # ResourceRecordSets` in a `ManagedZone`. The current state of the `ManagedZone` # is the sum effect of applying all `Change` elements in the `Changes` # collection in sequence. class Change include Google::Apis::Core::Hashable # Which ResourceRecordSets to add? # Corresponds to the JSON property `additions` # @return [Array] attr_accessor :additions # Which ResourceRecordSets to remove? Must match existing data exactly. # Corresponds to the JSON property `deletions` # @return [Array] attr_accessor :deletions # Unique identifier for the resource; defined by the server (output only). # Corresponds to the JSON property `id` # @return [String] attr_accessor :id # If the DNS queries for the zone will be served. # Corresponds to the JSON property `isServing` # @return [Boolean] attr_accessor :is_serving alias_method :is_serving?, :is_serving # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The time that this operation was started by the server (output only). This is # in RFC3339 text format. # Corresponds to the JSON property `startTime` # @return [String] attr_accessor :start_time # Status of the operation (output only). A status of "done" means that the # request to update the authoritative servers has been sent, but the servers # might not be updated yet. # Corresponds to the JSON property `status` # @return [String] attr_accessor :status def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @additions = args[:additions] if args.key?(:additions) @deletions = args[:deletions] if args.key?(:deletions) @id = args[:id] if args.key?(:id) @is_serving = args[:is_serving] if args.key?(:is_serving) @kind = args[:kind] if args.key?(:kind) @start_time = args[:start_time] if args.key?(:start_time) @status = args[:status] if args.key?(:status) end end # The response to a request to enumerate Changes to a ResourceRecordSets # collection. class ListChangesResponse include Google::Apis::Core::Hashable # The requested changes. # Corresponds to the JSON property `changes` # @return [Array] attr_accessor :changes # Type of resource. # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @changes = args[:changes] if args.key?(:changes) @kind = args[:kind] if args.key?(:kind) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end # A DNSSEC key pair. class DnsKey include Google::Apis::Core::Hashable # String mnemonic specifying the DNSSEC algorithm of this key. Immutable after # creation time. # Corresponds to the JSON property `algorithm` # @return [String] attr_accessor :algorithm # The time that this resource was created in the control plane. This is in # RFC3339 text format. Output only. # Corresponds to the JSON property `creationTime` # @return [String] attr_accessor :creation_time # A mutable string of at most 1024 characters associated with this resource for # the user's convenience. Has no effect on the resource's function. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. # These digests are needed to construct a DS record that points at this DNS key. # Output only. # Corresponds to the JSON property `digests` # @return [Array] attr_accessor :digests # Unique identifier for the resource; defined by the server (output only). # Corresponds to the JSON property `id` # @return [String] attr_accessor :id # Active keys are used to sign subsequent changes to the ManagedZone. Inactive # keys are still present as DNSKEY Resource Records for the use of resolvers # validating existing signatures. # Corresponds to the JSON property `isActive` # @return [Boolean] attr_accessor :is_active alias_method :is_active?, :is_active # Length of the key in bits. Specified at creation time, and then immutable. # Corresponds to the JSON property `keyLength` # @return [Fixnum] attr_accessor :key_length # The key tag is a non-cryptographic hash of the a DNSKEY resource record # associated with this DnsKey. The key tag can be used to identify a DNSKEY more # quickly (but it is not a unique identifier). In particular, the key tag is # used in a parent zone's DS record to point at the DNSKEY in this child # ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm # to calculate it is specified in RFC4034 Appendix B. Output only. # Corresponds to the JSON property `keyTag` # @return [Fixnum] attr_accessor :key_tag # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Base64 encoded public half of this key. Output only. # Corresponds to the JSON property `publicKey` # @return [String] attr_accessor :public_key # One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type KEY_SIGNING have the # Secure Entry Point flag set and, when active, are used to sign only resource # record sets of type DNSKEY. Otherwise, the Secure Entry Point flag is cleared, # and this key is used to sign only resource record sets of other types. # Immutable after creation time. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @algorithm = args[:algorithm] if args.key?(:algorithm) @creation_time = args[:creation_time] if args.key?(:creation_time) @description = args[:description] if args.key?(:description) @digests = args[:digests] if args.key?(:digests) @id = args[:id] if args.key?(:id) @is_active = args[:is_active] if args.key?(:is_active) @key_length = args[:key_length] if args.key?(:key_length) @key_tag = args[:key_tag] if args.key?(:key_tag) @kind = args[:kind] if args.key?(:kind) @public_key = args[:public_key] if args.key?(:public_key) @type = args[:type] if args.key?(:type) end end # class DnsKeyDigest include Google::Apis::Core::Hashable # The base-16 encoded bytes of this digest. Suitable for use in a DS resource # record. # Corresponds to the JSON property `digest` # @return [String] attr_accessor :digest # Specifies the algorithm used to calculate this digest. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @digest = args[:digest] if args.key?(:digest) @type = args[:type] if args.key?(:type) end end # Parameters for DnsKey key generation. Used for generating initial keys for a # new ManagedZone and as default when adding a new DnsKey. class DnsKeySpec include Google::Apis::Core::Hashable # String mnemonic specifying the DNSSEC algorithm of this key. # Corresponds to the JSON property `algorithm` # @return [String] attr_accessor :algorithm # Length of the keys in bits. # Corresponds to the JSON property `keyLength` # @return [Fixnum] attr_accessor :key_length # Specifies whether this is a key signing key (KSK) or a zone signing key (ZSK). # Key signing keys have the Secure Entry Point flag set and, when active, are # only used to sign resource record sets of type DNSKEY. Zone signing keys do # not have the Secure Entry Point flag set and are used to sign all other types # of resource record sets. # Corresponds to the JSON property `keyType` # @return [String] attr_accessor :key_type # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @algorithm = args[:algorithm] if args.key?(:algorithm) @key_length = args[:key_length] if args.key?(:key_length) @key_type = args[:key_type] if args.key?(:key_type) @kind = args[:kind] if args.key?(:kind) end end # The response to a request to enumerate DnsKeys in a ManagedZone. class DnsKeysListResponse include Google::Apis::Core::Hashable # The requested resources. # Corresponds to the JSON property `dnsKeys` # @return [Array] attr_accessor :dns_keys # Type of resource. # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dns_keys = args[:dns_keys] if args.key?(:dns_keys) @kind = args[:kind] if args.key?(:kind) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end # Represents a textual expression in the Common Expression Language (CEL) syntax. # CEL is a C-like expression language. The syntax and semantics of CEL are # documented at https://github.com/google/cel-spec. Example (Comparison): title: # "Summary size limit" description: "Determines if a summary is less than 100 # chars" expression: "document.summary.size() < 100" Example (Equality): title: " # Requestor is owner" description: "Determines if requestor is the document # owner" expression: "document.owner == request.auth.claims.email" Example ( # Logic): title: "Public documents" description: "Determine whether the document # should be publicly visible" expression: "document.type != 'private' && # document.type != 'internal'" Example (Data Manipulation): title: "Notification # string" description: "Create a notification string with a timestamp." # expression: "'New message received at ' + string(document.create_time)" The # exact variables and functions that may be referenced within an expression are # determined by the service that evaluates it. See the service documentation for # additional information. class Expr include Google::Apis::Core::Hashable # Optional. Description of the expression. This is a longer text which describes # the expression, e.g. when hovered over it in a UI. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # Textual representation of an expression in Common Expression Language syntax. # Corresponds to the JSON property `expression` # @return [String] attr_accessor :expression # Optional. String indicating the location of the expression for error reporting, # e.g. a file name and a position in the file. # Corresponds to the JSON property `location` # @return [String] attr_accessor :location # Optional. Title for the expression, i.e. a short string describing its purpose. # This can be used e.g. in UIs which allow to enter the expression. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @description = args[:description] if args.key?(:description) @expression = args[:expression] if args.key?(:expression) @location = args[:location] if args.key?(:location) @title = args[:title] if args.key?(:title) end end # Specifies the audit configuration for a service. The configuration determines # which permission types are logged, and what identities, if any, are exempted # from logging. An AuditConfig must have one or more AuditLogConfigs. If there # are AuditConfigs for both `allServices` and a specific service, the union of # the two AuditConfigs is used for that service: the log_types specified in each # AuditConfig are enabled, and the exempted_members in each AuditLogConfig are # exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` " # service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", " # exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `, # ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com", # "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE" # , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice, # this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also # exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` # from DATA_WRITE logging. class GoogleIamV1AuditConfig include Google::Apis::Core::Hashable # The configuration for logging of each type of permission. # Corresponds to the JSON property `auditLogConfigs` # @return [Array] attr_accessor :audit_log_configs # Specifies a service that will be enabled for audit logging. For example, ` # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special # value that covers all services. # Corresponds to the JSON property `service` # @return [String] attr_accessor :service def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) @service = args[:service] if args.key?(:service) end end # Provides the configuration for logging a type of permissions. Example: ` " # audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user: # jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables ' # DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from # DATA_READ logging. class GoogleIamV1AuditLogConfig include Google::Apis::Core::Hashable # Specifies the identities that do not cause logging for this type of permission. # Follows the same format of Binding.members. # Corresponds to the JSON property `exemptedMembers` # @return [Array] attr_accessor :exempted_members # The log type that this config enables. # Corresponds to the JSON property `logType` # @return [String] attr_accessor :log_type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @exempted_members = args[:exempted_members] if args.key?(:exempted_members) @log_type = args[:log_type] if args.key?(:log_type) end end # Associates `members`, or principals, with a `role`. class GoogleIamV1Binding include Google::Apis::Core::Hashable # Represents a textual expression in the Common Expression Language (CEL) syntax. # CEL is a C-like expression language. The syntax and semantics of CEL are # documented at https://github.com/google/cel-spec. Example (Comparison): title: # "Summary size limit" description: "Determines if a summary is less than 100 # chars" expression: "document.summary.size() < 100" Example (Equality): title: " # Requestor is owner" description: "Determines if requestor is the document # owner" expression: "document.owner == request.auth.claims.email" Example ( # Logic): title: "Public documents" description: "Determine whether the document # should be publicly visible" expression: "document.type != 'private' && # document.type != 'internal'" Example (Data Manipulation): title: "Notification # string" description: "Create a notification string with a timestamp." # expression: "'New message received at ' + string(document.create_time)" The # exact variables and functions that may be referenced within an expression are # determined by the service that evaluates it. See the service documentation for # additional information. # Corresponds to the JSON property `condition` # @return [Google::Apis::DnsV1::Expr] attr_accessor :condition # Specifies the principals requesting access for a Google Cloud resource. ` # members` can have the following values: * `allUsers`: A special identifier # that represents anyone who is on the internet; with or without a Google # account. * `allAuthenticatedUsers`: A special identifier that represents # anyone who is authenticated with a Google account or a service account. Does # not include identities that come from external identity providers (IdPs) # through identity federation. * `user:`emailid``: An email address that # represents a specific Google account. For example, `alice@example.com` . * ` # serviceAccount:`emailid``: An email address that represents a Google service # account. For example, `my-other-app@appspot.gserviceaccount.com`. * ` # serviceAccount:`projectid`.svc.id.goog[`namespace`/`kubernetes-sa`]`: An # identifier for a [Kubernetes service account](https://cloud.google.com/ # kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my- # project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An # email address that represents a Google group. For example, `admins@example.com` # . * `domain:`domain``: The G Suite domain (primary) that represents all the # users of that domain. For example, `google.com` or `example.com`. * `principal: # //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/` # subject_attribute_value``: A single identity in a workforce identity pool. * ` # principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/ # group/`group_id``: All workforce identities in a group. * `principalSet://iam. # googleapis.com/locations/global/workforcePools/`pool_id`/attribute.` # attribute_name`/`attribute_value``: All workforce identities with a specific # attribute value. * `principalSet://iam.googleapis.com/locations/global/ # workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * ` # principal://iam.googleapis.com/projects/`project_number`/locations/global/ # workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single # identity in a workload identity pool. * `principalSet://iam.googleapis.com/ # projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/ # group/`group_id``: A workload identity pool group. * `principalSet://iam. # googleapis.com/projects/`project_number`/locations/global/ # workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``: # All identities in a workload identity pool with a certain attribute. * ` # principalSet://iam.googleapis.com/projects/`project_number`/locations/global/ # workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool. # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique # identifier) representing a user that has been recently deleted. For example, ` # alice@example.com?uid=123456789012345678901`. If the user is recovered, this # value reverts to `user:`emailid`` and the recovered user retains the role in # the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email # address (plus unique identifier) representing a service account that has been # recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid= # 123456789012345678901`. If the service account is undeleted, this value # reverts to `serviceAccount:`emailid`` and the undeleted service account # retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``: # An email address (plus unique identifier) representing a Google group that has # been recently deleted. For example, `admins@example.com?uid= # 123456789012345678901`. If the group is recovered, this value reverts to ` # group:`emailid`` and the recovered group retains the role in the binding. * ` # deleted:principal://iam.googleapis.com/locations/global/workforcePools/` # pool_id`/subject/`subject_attribute_value``: Deleted single identity in a # workforce identity pool. For example, `deleted:principal://iam.googleapis.com/ # locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. # Corresponds to the JSON property `members` # @return [Array] attr_accessor :members # Role that is assigned to the list of `members`, or principals. For example, ` # roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM # roles and permissions, see the [IAM documentation](https://cloud.google.com/ # iam/docs/roles-overview). For a list of the available pre-defined roles, see [ # here](https://cloud.google.com/iam/docs/understanding-roles). # Corresponds to the JSON property `role` # @return [String] attr_accessor :role def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @condition = args[:condition] if args.key?(:condition) @members = args[:members] if args.key?(:members) @role = args[:role] if args.key?(:role) end end # Request message for `GetIamPolicy` method. class GoogleIamV1GetIamPolicyRequest include Google::Apis::Core::Hashable # Encapsulates settings provided to GetIamPolicy. # Corresponds to the JSON property `options` # @return [Google::Apis::DnsV1::GoogleIamV1GetPolicyOptions] attr_accessor :options def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @options = args[:options] if args.key?(:options) end end # Encapsulates settings provided to GetIamPolicy. class GoogleIamV1GetPolicyOptions include Google::Apis::Core::Hashable # Optional. The maximum policy version that will be used to format the policy. # Valid values are 0, 1, and 3. Requests specifying an invalid value will be # rejected. Requests for policies with any conditional role bindings must # specify version 3. Policies with no conditional role bindings may specify any # valid value or leave the field unset. The policy in the response might use the # policy version that you specified, or it might use a lower policy version. For # example, if you specify version 3, but the policy has no conditional role # bindings, the response uses version 1. To learn which resources support # conditions in their IAM policies, see the [IAM documentation](https://cloud. # google.com/iam/help/conditions/resource-policies). # Corresponds to the JSON property `requestedPolicyVersion` # @return [Fixnum] attr_accessor :requested_policy_version def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @requested_policy_version = args[:requested_policy_version] if args.key?(:requested_policy_version) end end # An Identity and Access Management (IAM) policy, which specifies access # controls for Google Cloud resources. A `Policy` is a collection of `bindings`. # A `binding` binds one or more `members`, or principals, to a single `role`. # Principals can be user accounts, service accounts, Google groups, and domains ( # such as G Suite). A `role` is a named list of permissions; each `role` can be # an IAM predefined role or a user-created custom role. For some types of Google # Cloud resources, a `binding` can also specify a `condition`, which is a # logical expression that allows access to a resource only if the expression # evaluates to `true`. A condition can add constraints based on attributes of # the request, the resource, or both. To learn which resources support # conditions in their IAM policies, see the [IAM documentation](https://cloud. # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` " # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", " # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": " # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" # ], "condition": ` "title": "expirable access", "description": "Does not grant # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00: # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML # example:** ``` bindings: - members: - user:mike@example.com - group:admins@ # example.com - domain:google.com - serviceAccount:my-project-id@appspot. # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - # user:eve@example.com role: roles/resourcemanager.organizationViewer condition: # title: expirable access description: Does not grant access after Sep 2020 # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the # [IAM documentation](https://cloud.google.com/iam/docs/). class GoogleIamV1Policy include Google::Apis::Core::Hashable # Specifies cloud audit logging configuration for this policy. # Corresponds to the JSON property `auditConfigs` # @return [Array] attr_accessor :audit_configs # Associates a list of `members`, or principals, with a `role`. Optionally, may # specify a `condition` that determines how and when the `bindings` are applied. # Each of the `bindings` must contain at least one principal. The `bindings` in # a `Policy` can refer to up to 1,500 principals; up to 250 of these principals # can be Google groups. Each occurrence of a principal counts towards these # limits. For example, if the `bindings` grant 50 different roles to `user:alice@ # example.com`, and not to any other principal, then you can add another 1,450 # principals to the `bindings` in the `Policy`. # Corresponds to the JSON property `bindings` # @return [Array] attr_accessor :bindings # `etag` is used for optimistic concurrency control as a way to help prevent # simultaneous updates of a policy from overwriting each other. It is strongly # suggested that systems make use of the `etag` in the read-modify-write cycle # to perform policy updates in order to avoid race conditions: An `etag` is # returned in the response to `getIamPolicy`, and systems are expected to put # that etag in the request to `setIamPolicy` to ensure that their change will be # applied to the same version of the policy. **Important:** If you use IAM # Conditions, you must include the `etag` field whenever you call `setIamPolicy`. # If you omit this field, then IAM allows you to overwrite a version `3` policy # with a version `1` policy, and all of the conditions in the version `3` policy # are lost. # Corresponds to the JSON property `etag` # NOTE: Values are automatically base64 encoded/decoded in the client library. # @return [String] attr_accessor :etag # Specifies the format of the policy. Valid values are `0`, `1`, and `3`. # Requests that specify an invalid value are rejected. Any operation that # affects conditional role bindings must specify version `3`. This requirement # applies to the following operations: * Getting a policy that includes a # conditional role binding * Adding a conditional role binding to a policy * # Changing a conditional role binding in a policy * Removing any role binding, # with or without a condition, from a policy that includes conditions ** # Important:** If you use IAM Conditions, you must include the `etag` field # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you # to overwrite a version `3` policy with a version `1` policy, and all of the # conditions in the version `3` policy are lost. If a policy does not include # any conditions, operations on that policy may specify any valid version or # leave the field unset. To learn which resources support conditions in their # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/ # conditions/resource-policies). # Corresponds to the JSON property `version` # @return [Fixnum] attr_accessor :version def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @audit_configs = args[:audit_configs] if args.key?(:audit_configs) @bindings = args[:bindings] if args.key?(:bindings) @etag = args[:etag] if args.key?(:etag) @version = args[:version] if args.key?(:version) end end # Request message for `SetIamPolicy` method. class GoogleIamV1SetIamPolicyRequest include Google::Apis::Core::Hashable # An Identity and Access Management (IAM) policy, which specifies access # controls for Google Cloud resources. A `Policy` is a collection of `bindings`. # A `binding` binds one or more `members`, or principals, to a single `role`. # Principals can be user accounts, service accounts, Google groups, and domains ( # such as G Suite). A `role` is a named list of permissions; each `role` can be # an IAM predefined role or a user-created custom role. For some types of Google # Cloud resources, a `binding` can also specify a `condition`, which is a # logical expression that allows access to a resource only if the expression # evaluates to `true`. A condition can add constraints based on attributes of # the request, the resource, or both. To learn which resources support # conditions in their IAM policies, see the [IAM documentation](https://cloud. # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` " # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", " # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": " # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" # ], "condition": ` "title": "expirable access", "description": "Does not grant # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00: # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML # example:** ``` bindings: - members: - user:mike@example.com - group:admins@ # example.com - domain:google.com - serviceAccount:my-project-id@appspot. # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - # user:eve@example.com role: roles/resourcemanager.organizationViewer condition: # title: expirable access description: Does not grant access after Sep 2020 # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the # [IAM documentation](https://cloud.google.com/iam/docs/). # Corresponds to the JSON property `policy` # @return [Google::Apis::DnsV1::GoogleIamV1Policy] attr_accessor :policy # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only # the fields in the mask will be modified. If no mask is provided, the following # default mask is used: `paths: "bindings, etag"` # Corresponds to the JSON property `updateMask` # @return [String] attr_accessor :update_mask def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @policy = args[:policy] if args.key?(:policy) @update_mask = args[:update_mask] if args.key?(:update_mask) end end # Request message for `TestIamPermissions` method. class GoogleIamV1TestIamPermissionsRequest include Google::Apis::Core::Hashable # The set of permissions to check for the `resource`. Permissions with wildcards # (such as `*` or `storage.*`) are not allowed. For more information see [IAM # Overview](https://cloud.google.com/iam/docs/overview#permissions). # Corresponds to the JSON property `permissions` # @return [Array] attr_accessor :permissions def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @permissions = args[:permissions] if args.key?(:permissions) end end # Response message for `TestIamPermissions` method. class GoogleIamV1TestIamPermissionsResponse include Google::Apis::Core::Hashable # A subset of `TestPermissionsRequest.permissions` that the caller is allowed. # Corresponds to the JSON property `permissions` # @return [Array] attr_accessor :permissions def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @permissions = args[:permissions] if args.key?(:permissions) end end # A zone is a subtree of the DNS namespace under one administrative # responsibility. A ManagedZone is a resource that represents a DNS zone hosted # by the Cloud DNS service. class ManagedZone include Google::Apis::Core::Hashable # Cloud Logging configurations for publicly visible zones. # Corresponds to the JSON property `cloudLoggingConfig` # @return [Google::Apis::DnsV1::ManagedZoneCloudLoggingConfig] attr_accessor :cloud_logging_config # The time that this resource was created on the server. This is in RFC3339 text # format. Output only. # Corresponds to the JSON property `creationTime` # @return [String] attr_accessor :creation_time # A mutable string of at most 1024 characters associated with this resource for # the user's convenience. Has no effect on the managed zone's function. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # The DNS name of this managed zone, for instance "example.com.". # Corresponds to the JSON property `dnsName` # @return [String] attr_accessor :dns_name # DNSSEC configuration. # Corresponds to the JSON property `dnssecConfig` # @return [Google::Apis::DnsV1::ManagedZoneDnsSecConfig] attr_accessor :dnssec_config # The presence for this field indicates that outbound forwarding is enabled for # this zone. The value of this field contains the set of destinations to forward # to. # Corresponds to the JSON property `forwardingConfig` # @return [Google::Apis::DnsV1::ManagedZoneForwardingConfig] attr_accessor :forwarding_config # Unique identifier for the resource; defined by the server (output only) # Corresponds to the JSON property `id` # @return [Fixnum] attr_accessor :id # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # User labels. # Corresponds to the JSON property `labels` # @return [Hash] attr_accessor :labels # User assigned name for this resource. Must be unique within the project. The # name must be 1-63 characters long, must begin with a letter, end with a letter # or digit, and only contain lowercase letters, digits or dashes. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet # is a set of DNS name servers that all host the same ManagedZones. Most users # leave this field unset. If you need to use this field, contact your account # team. # Corresponds to the JSON property `nameServerSet` # @return [String] attr_accessor :name_server_set # Delegate your managed_zone to these virtual name servers; defined by the # server (output only) # Corresponds to the JSON property `nameServers` # @return [Array] attr_accessor :name_servers # The presence of this field indicates that DNS Peering is enabled for this zone. # The value of this field contains the network to peer with. # Corresponds to the JSON property `peeringConfig` # @return [Google::Apis::DnsV1::ManagedZonePeeringConfig] attr_accessor :peering_config # For privately visible zones, the set of Virtual Private Cloud resources that # the zone is visible from. # Corresponds to the JSON property `privateVisibilityConfig` # @return [Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfig] attr_accessor :private_visibility_config # The presence of this field indicates that this is a managed reverse lookup # zone and Cloud DNS resolves reverse lookup queries using automatically # configured records for VPC resources. This only applies to networks listed # under private_visibility_config. # Corresponds to the JSON property `reverseLookupConfig` # @return [Google::Apis::DnsV1::ManagedZoneReverseLookupConfig] attr_accessor :reverse_lookup_config # Contains information about Service Directory-backed zones. # Corresponds to the JSON property `serviceDirectoryConfig` # @return [Google::Apis::DnsV1::ManagedZoneServiceDirectoryConfig] attr_accessor :service_directory_config # The zone's visibility: public zones are exposed to the Internet, while private # zones are visible only to Virtual Private Cloud resources. # Corresponds to the JSON property `visibility` # @return [String] attr_accessor :visibility def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @cloud_logging_config = args[:cloud_logging_config] if args.key?(:cloud_logging_config) @creation_time = args[:creation_time] if args.key?(:creation_time) @description = args[:description] if args.key?(:description) @dns_name = args[:dns_name] if args.key?(:dns_name) @dnssec_config = args[:dnssec_config] if args.key?(:dnssec_config) @forwarding_config = args[:forwarding_config] if args.key?(:forwarding_config) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @name_server_set = args[:name_server_set] if args.key?(:name_server_set) @name_servers = args[:name_servers] if args.key?(:name_servers) @peering_config = args[:peering_config] if args.key?(:peering_config) @private_visibility_config = args[:private_visibility_config] if args.key?(:private_visibility_config) @reverse_lookup_config = args[:reverse_lookup_config] if args.key?(:reverse_lookup_config) @service_directory_config = args[:service_directory_config] if args.key?(:service_directory_config) @visibility = args[:visibility] if args.key?(:visibility) end end # Cloud Logging configurations for publicly visible zones. class ManagedZoneCloudLoggingConfig include Google::Apis::Core::Hashable # If set, enable query logging for this ManagedZone. False by default, making # logging opt-in. # Corresponds to the JSON property `enableLogging` # @return [Boolean] attr_accessor :enable_logging alias_method :enable_logging?, :enable_logging # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @enable_logging = args[:enable_logging] if args.key?(:enable_logging) @kind = args[:kind] if args.key?(:kind) end end # class ManagedZoneDnsSecConfig include Google::Apis::Core::Hashable # Specifies parameters for generating initial DnsKeys for this ManagedZone. Can # only be changed while the state is OFF. # Corresponds to the JSON property `defaultKeySpecs` # @return [Array] attr_accessor :default_key_specs # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Specifies the mechanism for authenticated denial-of-existence responses. Can # only be changed while the state is OFF. # Corresponds to the JSON property `nonExistence` # @return [String] attr_accessor :non_existence # Specifies whether DNSSEC is enabled, and what mode it is in. # Corresponds to the JSON property `state` # @return [String] attr_accessor :state def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @default_key_specs = args[:default_key_specs] if args.key?(:default_key_specs) @kind = args[:kind] if args.key?(:kind) @non_existence = args[:non_existence] if args.key?(:non_existence) @state = args[:state] if args.key?(:state) end end # class ManagedZoneForwardingConfig include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # List of target name servers to forward to. Cloud DNS selects the best # available name server if more than one target is given. # Corresponds to the JSON property `targetNameServers` # @return [Array] attr_accessor :target_name_servers def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @target_name_servers = args[:target_name_servers] if args.key?(:target_name_servers) end end # class ManagedZoneForwardingConfigNameServerTarget include Google::Apis::Core::Hashable # Fully qualified domain name for the forwarding target. # Corresponds to the JSON property `domainName` # @return [String] attr_accessor :domain_name # Forwarding path for this NameServerTarget. If unset or set to DEFAULT, Cloud # DNS makes forwarding decisions based on IP address ranges; that is, RFC1918 # addresses go to the VPC network, non-RFC1918 addresses go to the internet. # When set to PRIVATE, Cloud DNS always sends queries through the VPC network # for this target. # Corresponds to the JSON property `forwardingPath` # @return [String] attr_accessor :forwarding_path # IPv4 address of a target name server. # Corresponds to the JSON property `ipv4Address` # @return [String] attr_accessor :ipv4_address # IPv6 address of a target name server. Does not accept both fields (ipv4 & ipv6) # being populated. Public preview as of November 2022. # Corresponds to the JSON property `ipv6Address` # @return [String] attr_accessor :ipv6_address # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @domain_name = args[:domain_name] if args.key?(:domain_name) @forwarding_path = args[:forwarding_path] if args.key?(:forwarding_path) @ipv4_address = args[:ipv4_address] if args.key?(:ipv4_address) @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address) @kind = args[:kind] if args.key?(:kind) end end # class ManagedZoneOperationsListResponse include Google::Apis::Core::Hashable # Type of resource. # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # The operation resources. # Corresponds to the JSON property `operations` # @return [Array] attr_accessor :operations def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @operations = args[:operations] if args.key?(:operations) end end # class ManagedZonePeeringConfig include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The network with which to peer. # Corresponds to the JSON property `targetNetwork` # @return [Google::Apis::DnsV1::ManagedZonePeeringConfigTargetNetwork] attr_accessor :target_network def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @target_network = args[:target_network] if args.key?(:target_network) end end # class ManagedZonePeeringConfigTargetNetwork include Google::Apis::Core::Hashable # The time at which the zone was deactivated, in RFC 3339 date-time format. An # empty string indicates that the peering connection is active. The producer # network can deactivate a zone. The zone is automatically deactivated if the # producer network that the zone targeted is deleted. Output only. # Corresponds to the JSON property `deactivateTime` # @return [String] attr_accessor :deactivate_time # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The fully qualified URL of the VPC network to forward queries to. This should # be formatted like `https://www.googleapis.com/compute/v1/projects/`project`/ # global/networks/`network`` # Corresponds to the JSON property `networkUrl` # @return [String] attr_accessor :network_url def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @deactivate_time = args[:deactivate_time] if args.key?(:deactivate_time) @kind = args[:kind] if args.key?(:kind) @network_url = args[:network_url] if args.key?(:network_url) end end # class ManagedZonePrivateVisibilityConfig include Google::Apis::Core::Hashable # The list of Google Kubernetes Engine clusters that can see this zone. # Corresponds to the JSON property `gkeClusters` # @return [Array] attr_accessor :gke_clusters # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The list of VPC networks that can see this zone. # Corresponds to the JSON property `networks` # @return [Array] attr_accessor :networks def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @gke_clusters = args[:gke_clusters] if args.key?(:gke_clusters) @kind = args[:kind] if args.key?(:kind) @networks = args[:networks] if args.key?(:networks) end end # class ManagedZonePrivateVisibilityConfigGkeCluster include Google::Apis::Core::Hashable # The resource name of the cluster to bind this ManagedZone to. This should be # specified in the format like: projects/*/locations/*/clusters/*. This is # referenced from GKE projects.locations.clusters.get API: https://cloud.google. # com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters/get # Corresponds to the JSON property `gkeClusterName` # @return [String] attr_accessor :gke_cluster_name # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @gke_cluster_name = args[:gke_cluster_name] if args.key?(:gke_cluster_name) @kind = args[:kind] if args.key?(:kind) end end # class ManagedZonePrivateVisibilityConfigNetwork include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The fully qualified URL of the VPC network to bind to. Format this URL like ` # https://www.googleapis.com/compute/v1/projects/`project`/global/networks/` # network`` # Corresponds to the JSON property `networkUrl` # @return [String] attr_accessor :network_url def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @network_url = args[:network_url] if args.key?(:network_url) end end # class ManagedZoneReverseLookupConfig include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) end end # Contains information about Service Directory-backed zones. class ManagedZoneServiceDirectoryConfig include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Contains information about the namespace associated with the zone. # Corresponds to the JSON property `namespace` # @return [Google::Apis::DnsV1::ManagedZoneServiceDirectoryConfigNamespace] attr_accessor :namespace def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @namespace = args[:namespace] if args.key?(:namespace) end end # class ManagedZoneServiceDirectoryConfigNamespace include Google::Apis::Core::Hashable # The time that the namespace backing this zone was deleted; an empty string if # it still exists. This is in RFC3339 text format. Output only. # Corresponds to the JSON property `deletionTime` # @return [String] attr_accessor :deletion_time # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The fully qualified URL of the namespace associated with the zone. Format must # be `https://servicedirectory.googleapis.com/v1/projects/`project`/locations/` # location`/namespaces/`namespace`` # Corresponds to the JSON property `namespaceUrl` # @return [String] attr_accessor :namespace_url def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @deletion_time = args[:deletion_time] if args.key?(:deletion_time) @kind = args[:kind] if args.key?(:kind) @namespace_url = args[:namespace_url] if args.key?(:namespace_url) end end # class ListManagedZonesResponse include Google::Apis::Core::Hashable # Type of resource. # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The managed zone resources. # Corresponds to the JSON property `managedZones` # @return [Array] attr_accessor :managed_zones # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @managed_zones = args[:managed_zones] if args.key?(:managed_zones) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end # An operation represents a successful mutation performed on a Cloud DNS # resource. Operations provide: - An audit log of server resource mutations. - A # way to recover/retry API calls in the case where the response is never # received by the caller. Use the caller specified client_operation_id. class Operation include Google::Apis::Core::Hashable # Only populated if the operation targeted a DnsKey (output only). # Corresponds to the JSON property `dnsKeyContext` # @return [Google::Apis::DnsV1::OperationDnsKeyContext] attr_accessor :dns_key_context # Unique identifier for the resource. This is the client_operation_id if the # client specified it when the mutation was initiated, otherwise, it is # generated by the server. The name must be 1-63 characters long and match the # regular expression [-a-z0-9]? (output only) # Corresponds to the JSON property `id` # @return [String] attr_accessor :id # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The time that this operation was started by the server. This is in RFC3339 # text format (output only). # Corresponds to the JSON property `startTime` # @return [String] attr_accessor :start_time # Status of the operation. Can be one of the following: "PENDING" or "DONE" ( # output only). A status of "DONE" means that the request to update the # authoritative servers has been sent, but the servers might not be updated yet. # Corresponds to the JSON property `status` # @return [String] attr_accessor :status # Type of the operation. Operations include insert, update, and delete (output # only). # Corresponds to the JSON property `type` # @return [String] attr_accessor :type # User who requested the operation, for example: user@example.com. cloud-dns- # system for operations automatically done by the system. (output only) # Corresponds to the JSON property `user` # @return [String] attr_accessor :user # Only populated if the operation targeted a ManagedZone (output only). # Corresponds to the JSON property `zoneContext` # @return [Google::Apis::DnsV1::OperationManagedZoneContext] attr_accessor :zone_context def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dns_key_context = args[:dns_key_context] if args.key?(:dns_key_context) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @start_time = args[:start_time] if args.key?(:start_time) @status = args[:status] if args.key?(:status) @type = args[:type] if args.key?(:type) @user = args[:user] if args.key?(:user) @zone_context = args[:zone_context] if args.key?(:zone_context) end end # class OperationDnsKeyContext include Google::Apis::Core::Hashable # A DNSSEC key pair. # Corresponds to the JSON property `newValue` # @return [Google::Apis::DnsV1::DnsKey] attr_accessor :new_value # A DNSSEC key pair. # Corresponds to the JSON property `oldValue` # @return [Google::Apis::DnsV1::DnsKey] attr_accessor :old_value def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @new_value = args[:new_value] if args.key?(:new_value) @old_value = args[:old_value] if args.key?(:old_value) end end # class OperationManagedZoneContext include Google::Apis::Core::Hashable # A zone is a subtree of the DNS namespace under one administrative # responsibility. A ManagedZone is a resource that represents a DNS zone hosted # by the Cloud DNS service. # Corresponds to the JSON property `newValue` # @return [Google::Apis::DnsV1::ManagedZone] attr_accessor :new_value # A zone is a subtree of the DNS namespace under one administrative # responsibility. A ManagedZone is a resource that represents a DNS zone hosted # by the Cloud DNS service. # Corresponds to the JSON property `oldValue` # @return [Google::Apis::DnsV1::ManagedZone] attr_accessor :old_value def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @new_value = args[:new_value] if args.key?(:new_value) @old_value = args[:old_value] if args.key?(:old_value) end end # class PoliciesListResponse include Google::Apis::Core::Hashable # Type of resource. # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # The policy resources. # Corresponds to the JSON property `policies` # @return [Array] attr_accessor :policies def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @policies = args[:policies] if args.key?(:policies) end end # class PoliciesPatchResponse include Google::Apis::Core::Hashable # A policy is a collection of DNS rules applied to one or more Virtual Private # Cloud resources. # Corresponds to the JSON property `policy` # @return [Google::Apis::DnsV1::Policy] attr_accessor :policy def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @policy = args[:policy] if args.key?(:policy) end end # class PoliciesUpdateResponse include Google::Apis::Core::Hashable # A policy is a collection of DNS rules applied to one or more Virtual Private # Cloud resources. # Corresponds to the JSON property `policy` # @return [Google::Apis::DnsV1::Policy] attr_accessor :policy def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @policy = args[:policy] if args.key?(:policy) end end # A policy is a collection of DNS rules applied to one or more Virtual Private # Cloud resources. class Policy include Google::Apis::Core::Hashable # Sets an alternative name server for the associated networks. When specified, # all DNS queries are forwarded to a name server that you choose. Names such as . # internal are not available when an alternative name server is specified. # Corresponds to the JSON property `alternativeNameServerConfig` # @return [Google::Apis::DnsV1::PolicyAlternativeNameServerConfig] attr_accessor :alternative_name_server_config # A mutable string of at most 1024 characters associated with this resource for # the user's convenience. Has no effect on the policy's function. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # DNS64 policies # Corresponds to the JSON property `dns64Config` # @return [Google::Apis::DnsV1::PolicyDns64Config] attr_accessor :dns64_config # Allows networks bound to this policy to receive DNS queries sent by VMs or # applications over VPN connections. When enabled, a virtual IP address is # allocated from each of the subnetworks that are bound to this policy. # Corresponds to the JSON property `enableInboundForwarding` # @return [Boolean] attr_accessor :enable_inbound_forwarding alias_method :enable_inbound_forwarding?, :enable_inbound_forwarding # Controls whether logging is enabled for the networks bound to this policy. # Defaults to no logging if not set. # Corresponds to the JSON property `enableLogging` # @return [Boolean] attr_accessor :enable_logging alias_method :enable_logging?, :enable_logging # Unique identifier for the resource; defined by the server (output only). # Corresponds to the JSON property `id` # @return [Fixnum] attr_accessor :id # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # User-assigned name for this policy. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # List of network names specifying networks to which this policy is applied. # Corresponds to the JSON property `networks` # @return [Array] attr_accessor :networks def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @alternative_name_server_config = args[:alternative_name_server_config] if args.key?(:alternative_name_server_config) @description = args[:description] if args.key?(:description) @dns64_config = args[:dns64_config] if args.key?(:dns64_config) @enable_inbound_forwarding = args[:enable_inbound_forwarding] if args.key?(:enable_inbound_forwarding) @enable_logging = args[:enable_logging] if args.key?(:enable_logging) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @networks = args[:networks] if args.key?(:networks) end end # class PolicyAlternativeNameServerConfig include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Sets an alternative name server for the associated networks. When specified, # all DNS queries are forwarded to a name server that you choose. Names such as . # internal are not available when an alternative name server is specified. # Corresponds to the JSON property `targetNameServers` # @return [Array] attr_accessor :target_name_servers def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @target_name_servers = args[:target_name_servers] if args.key?(:target_name_servers) end end # class PolicyAlternativeNameServerConfigTargetNameServer include Google::Apis::Core::Hashable # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud # DNS makes forwarding decisions based on address ranges; that is, RFC1918 # addresses go to the VPC network, non-RFC1918 addresses go to the internet. # When set to PRIVATE, Cloud DNS always sends queries through the VPC network # for this target. # Corresponds to the JSON property `forwardingPath` # @return [String] attr_accessor :forwarding_path # IPv4 address to forward queries to. # Corresponds to the JSON property `ipv4Address` # @return [String] attr_accessor :ipv4_address # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being # populated. Public preview as of November 2022. # Corresponds to the JSON property `ipv6Address` # @return [String] attr_accessor :ipv6_address # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @forwarding_path = args[:forwarding_path] if args.key?(:forwarding_path) @ipv4_address = args[:ipv4_address] if args.key?(:ipv4_address) @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address) @kind = args[:kind] if args.key?(:kind) end end # DNS64 policies class PolicyDns64Config include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The scope to which DNS64 config will be applied to. # Corresponds to the JSON property `scope` # @return [Google::Apis::DnsV1::PolicyDns64ConfigScope] attr_accessor :scope def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @scope = args[:scope] if args.key?(:scope) end end # class PolicyDns64ConfigScope include Google::Apis::Core::Hashable # Controls whether DNS64 is enabled globally for all networks bound to the # policy. # Corresponds to the JSON property `allQueries` # @return [Boolean] attr_accessor :all_queries alias_method :all_queries?, :all_queries # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @all_queries = args[:all_queries] if args.key?(:all_queries) @kind = args[:kind] if args.key?(:kind) end end # class PolicyNetwork include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The fully qualified URL of the VPC network to bind to. This should be # formatted like https://www.googleapis.com/compute/v1/projects/`project`/global/ # networks/`network` # Corresponds to the JSON property `networkUrl` # @return [String] attr_accessor :network_url def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @network_url = args[:network_url] if args.key?(:network_url) end end # A project resource. The project is a top level container for resources # including Cloud DNS ManagedZones. Projects can be created only in the APIs # console. class Project include Google::Apis::Core::Hashable # User assigned unique identifier for the resource (output only). # Corresponds to the JSON property `id` # @return [String] attr_accessor :id # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Unique numeric identifier for the resource; defined by the server (output only) # . # Corresponds to the JSON property `number` # @return [Fixnum] attr_accessor :number # Limits associated with a Project. # Corresponds to the JSON property `quota` # @return [Google::Apis::DnsV1::Quota] attr_accessor :quota def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @number = args[:number] if args.key?(:number) @quota = args[:quota] if args.key?(:quota) end end # Limits associated with a Project. class Quota include Google::Apis::Core::Hashable # Maximum allowed number of DnsKeys per ManagedZone. # Corresponds to the JSON property `dnsKeysPerManagedZone` # @return [Fixnum] attr_accessor :dns_keys_per_managed_zone # Maximum allowed number of GKE clusters to which a privately scoped zone can be # attached. # Corresponds to the JSON property `gkeClustersPerManagedZone` # @return [Fixnum] attr_accessor :gke_clusters_per_managed_zone # Maximum allowed number of GKE clusters per policy. # Corresponds to the JSON property `gkeClustersPerPolicy` # @return [Fixnum] attr_accessor :gke_clusters_per_policy # Maximum allowed number of GKE clusters per response policy. # Corresponds to the JSON property `gkeClustersPerResponsePolicy` # @return [Fixnum] attr_accessor :gke_clusters_per_response_policy # # Corresponds to the JSON property `internetHealthChecksPerManagedZone` # @return [Fixnum] attr_accessor :internet_health_checks_per_managed_zone # Maximum allowed number of items per routing policy. # Corresponds to the JSON property `itemsPerRoutingPolicy` # @return [Fixnum] attr_accessor :items_per_routing_policy # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Maximum allowed number of managed zones in the project. # Corresponds to the JSON property `managedZones` # @return [Fixnum] attr_accessor :managed_zones # Maximum allowed number of managed zones which can be attached to a GKE cluster. # Corresponds to the JSON property `managedZonesPerGkeCluster` # @return [Fixnum] attr_accessor :managed_zones_per_gke_cluster # Maximum allowed number of managed zones which can be attached to a network. # Corresponds to the JSON property `managedZonesPerNetwork` # @return [Fixnum] attr_accessor :managed_zones_per_network # Maximum number of nameservers per delegation, meant to prevent abuse # Corresponds to the JSON property `nameserversPerDelegation` # @return [Fixnum] attr_accessor :nameservers_per_delegation # Maximum allowed number of networks to which a privately scoped zone can be # attached. # Corresponds to the JSON property `networksPerManagedZone` # @return [Fixnum] attr_accessor :networks_per_managed_zone # Maximum allowed number of networks per policy. # Corresponds to the JSON property `networksPerPolicy` # @return [Fixnum] attr_accessor :networks_per_policy # Maximum allowed number of networks per response policy. # Corresponds to the JSON property `networksPerResponsePolicy` # @return [Fixnum] attr_accessor :networks_per_response_policy # Maximum allowed number of consumer peering zones per target network owned by # this producer project # Corresponds to the JSON property `peeringZonesPerTargetNetwork` # @return [Fixnum] attr_accessor :peering_zones_per_target_network # Maximum allowed number of policies per project. # Corresponds to the JSON property `policies` # @return [Fixnum] attr_accessor :policies # Maximum allowed number of ResourceRecords per ResourceRecordSet. # Corresponds to the JSON property `resourceRecordsPerRrset` # @return [Fixnum] attr_accessor :resource_records_per_rrset # Maximum allowed number of response policies per project. # Corresponds to the JSON property `responsePolicies` # @return [Fixnum] attr_accessor :response_policies # Maximum allowed number of rules per response policy. # Corresponds to the JSON property `responsePolicyRulesPerResponsePolicy` # @return [Fixnum] attr_accessor :response_policy_rules_per_response_policy # Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest. # Corresponds to the JSON property `rrsetAdditionsPerChange` # @return [Fixnum] attr_accessor :rrset_additions_per_change # Maximum allowed number of ResourceRecordSets to delete per # ChangesCreateRequest. # Corresponds to the JSON property `rrsetDeletionsPerChange` # @return [Fixnum] attr_accessor :rrset_deletions_per_change # Maximum allowed number of ResourceRecordSets per zone in the project. # Corresponds to the JSON property `rrsetsPerManagedZone` # @return [Fixnum] attr_accessor :rrsets_per_managed_zone # Maximum allowed number of target name servers per managed forwarding zone. # Corresponds to the JSON property `targetNameServersPerManagedZone` # @return [Fixnum] attr_accessor :target_name_servers_per_managed_zone # Maximum allowed number of alternative target name servers per policy. # Corresponds to the JSON property `targetNameServersPerPolicy` # @return [Fixnum] attr_accessor :target_name_servers_per_policy # Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes. # Corresponds to the JSON property `totalRrdataSizePerChange` # @return [Fixnum] attr_accessor :total_rrdata_size_per_change # DNSSEC algorithm and key length types that can be used for DnsKeys. # Corresponds to the JSON property `whitelistedKeySpecs` # @return [Array] attr_accessor :whitelisted_key_specs def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dns_keys_per_managed_zone = args[:dns_keys_per_managed_zone] if args.key?(:dns_keys_per_managed_zone) @gke_clusters_per_managed_zone = args[:gke_clusters_per_managed_zone] if args.key?(:gke_clusters_per_managed_zone) @gke_clusters_per_policy = args[:gke_clusters_per_policy] if args.key?(:gke_clusters_per_policy) @gke_clusters_per_response_policy = args[:gke_clusters_per_response_policy] if args.key?(:gke_clusters_per_response_policy) @internet_health_checks_per_managed_zone = args[:internet_health_checks_per_managed_zone] if args.key?(:internet_health_checks_per_managed_zone) @items_per_routing_policy = args[:items_per_routing_policy] if args.key?(:items_per_routing_policy) @kind = args[:kind] if args.key?(:kind) @managed_zones = args[:managed_zones] if args.key?(:managed_zones) @managed_zones_per_gke_cluster = args[:managed_zones_per_gke_cluster] if args.key?(:managed_zones_per_gke_cluster) @managed_zones_per_network = args[:managed_zones_per_network] if args.key?(:managed_zones_per_network) @nameservers_per_delegation = args[:nameservers_per_delegation] if args.key?(:nameservers_per_delegation) @networks_per_managed_zone = args[:networks_per_managed_zone] if args.key?(:networks_per_managed_zone) @networks_per_policy = args[:networks_per_policy] if args.key?(:networks_per_policy) @networks_per_response_policy = args[:networks_per_response_policy] if args.key?(:networks_per_response_policy) @peering_zones_per_target_network = args[:peering_zones_per_target_network] if args.key?(:peering_zones_per_target_network) @policies = args[:policies] if args.key?(:policies) @resource_records_per_rrset = args[:resource_records_per_rrset] if args.key?(:resource_records_per_rrset) @response_policies = args[:response_policies] if args.key?(:response_policies) @response_policy_rules_per_response_policy = args[:response_policy_rules_per_response_policy] if args.key?(:response_policy_rules_per_response_policy) @rrset_additions_per_change = args[:rrset_additions_per_change] if args.key?(:rrset_additions_per_change) @rrset_deletions_per_change = args[:rrset_deletions_per_change] if args.key?(:rrset_deletions_per_change) @rrsets_per_managed_zone = args[:rrsets_per_managed_zone] if args.key?(:rrsets_per_managed_zone) @target_name_servers_per_managed_zone = args[:target_name_servers_per_managed_zone] if args.key?(:target_name_servers_per_managed_zone) @target_name_servers_per_policy = args[:target_name_servers_per_policy] if args.key?(:target_name_servers_per_policy) @total_rrdata_size_per_change = args[:total_rrdata_size_per_change] if args.key?(:total_rrdata_size_per_change) @whitelisted_key_specs = args[:whitelisted_key_specs] if args.key?(:whitelisted_key_specs) end end # A RRSetRoutingPolicy represents ResourceRecordSet data that is returned # dynamically with the response varying based on configured properties such as # geolocation or by weighted random selection. class RrSetRoutingPolicy include Google::Apis::Core::Hashable # Configures a `RRSetRoutingPolicy` that routes based on the geo location of the # querying user. # Corresponds to the JSON property `geo` # @return [Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicy] attr_accessor :geo # The fully qualified URL of the HealthCheck to use for this RRSetRoutingPolicy. # Format this URL like `https://www.googleapis.com/compute/v1/projects/`project`/ # global/healthChecks/`healthCheck``. https://cloud.google.com/compute/docs/ # reference/rest/v1/healthChecks # Corresponds to the JSON property `healthCheck` # @return [String] attr_accessor :health_check # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Configures a RRSetRoutingPolicy such that all queries are responded with the # primary_targets if they are healthy. And if all of them are unhealthy, then we # fallback to a geo localized policy. # Corresponds to the JSON property `primaryBackup` # @return [Google::Apis::DnsV1::RrSetRoutingPolicyPrimaryBackupPolicy] attr_accessor :primary_backup # Configures a RRSetRoutingPolicy that routes in a weighted round robin fashion. # Corresponds to the JSON property `wrr` # @return [Google::Apis::DnsV1::RrSetRoutingPolicyWrrPolicy] attr_accessor :wrr def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @geo = args[:geo] if args.key?(:geo) @health_check = args[:health_check] if args.key?(:health_check) @kind = args[:kind] if args.key?(:kind) @primary_backup = args[:primary_backup] if args.key?(:primary_backup) @wrr = args[:wrr] if args.key?(:wrr) end end # Configures a `RRSetRoutingPolicy` that routes based on the geo location of the # querying user. class RrSetRoutingPolicyGeoPolicy include Google::Apis::Core::Hashable # Without fencing, if health check fails for all configured items in the current # geo bucket, we failover to the next nearest geo bucket. With fencing, if # health checking is enabled, as long as some targets in the current geo bucket # are healthy, we return only the healthy targets. However, if all targets are # unhealthy, we don't failover to the next nearest bucket; instead, we return # all the items in the current bucket even when all targets are unhealthy. # Corresponds to the JSON property `enableFencing` # @return [Boolean] attr_accessor :enable_fencing alias_method :enable_fencing?, :enable_fencing # The primary geo routing configuration. If there are multiple items with the # same location, an error is returned instead. # Corresponds to the JSON property `items` # @return [Array] attr_accessor :items # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @enable_fencing = args[:enable_fencing] if args.key?(:enable_fencing) @items = args[:items] if args.key?(:items) @kind = args[:kind] if args.key?(:kind) end end # ResourceRecordSet data for one geo location. class RrSetRoutingPolicyGeoPolicyGeoPolicyItem include Google::Apis::Core::Hashable # HealthCheckTargets describes endpoints to health-check when responding to # Routing Policy queries. Only the healthy endpoints will be included in the # response. Set either `internal_load_balancer` or `external_endpoints`. Do not # set both. # Corresponds to the JSON property `healthCheckedTargets` # @return [Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets] attr_accessor :health_checked_targets # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The geo-location granularity is a GCP region. This location string should # correspond to a GCP region. e.g. "us-east1", "southamerica-east1", "asia-east1" # , etc. # Corresponds to the JSON property `location` # @return [String] attr_accessor :location # # Corresponds to the JSON property `rrdatas` # @return [Array] attr_accessor :rrdatas # DNSSEC generated signatures for all the `rrdata` within this item. When using # health-checked targets for DNSSEC-enabled zones, you can only use at most one # health-checked IP address per item. # Corresponds to the JSON property `signatureRrdatas` # @return [Array] attr_accessor :signature_rrdatas def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @health_checked_targets = args[:health_checked_targets] if args.key?(:health_checked_targets) @kind = args[:kind] if args.key?(:kind) @location = args[:location] if args.key?(:location) @rrdatas = args[:rrdatas] if args.key?(:rrdatas) @signature_rrdatas = args[:signature_rrdatas] if args.key?(:signature_rrdatas) end end # HealthCheckTargets describes endpoints to health-check when responding to # Routing Policy queries. Only the healthy endpoints will be included in the # response. Set either `internal_load_balancer` or `external_endpoints`. Do not # set both. class RrSetRoutingPolicyHealthCheckTargets include Google::Apis::Core::Hashable # The Internet IP addresses to be health checked. The format matches the format # of ResourceRecordSet.rrdata as defined in RFC 1035 (section 5) and RFC 1034 ( # section 3.6.1) # Corresponds to the JSON property `externalEndpoints` # @return [Array] attr_accessor :external_endpoints # Configuration for internal load balancers to be health checked. # Corresponds to the JSON property `internalLoadBalancers` # @return [Array] attr_accessor :internal_load_balancers def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @external_endpoints = args[:external_endpoints] if args.key?(:external_endpoints) @internal_load_balancers = args[:internal_load_balancers] if args.key?(:internal_load_balancers) end end # The configuration for an individual load balancer to health check. class RrSetRoutingPolicyLoadBalancerTarget include Google::Apis::Core::Hashable # The frontend IP address of the load balancer to health check. # Corresponds to the JSON property `ipAddress` # @return [String] attr_accessor :ip_address # The protocol of the load balancer to health check. # Corresponds to the JSON property `ipProtocol` # @return [String] attr_accessor :ip_protocol # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The type of load balancer specified by this target. This value must match the # configuration of the load balancer located at the LoadBalancerTarget's IP # address, port, and region. Use the following: - *regionalL4ilb*: for a # regional internal passthrough Network Load Balancer. - *regionalL7ilb*: for a # regional internal Application Load Balancer. - *globalL7ilb*: for a global # internal Application Load Balancer. # Corresponds to the JSON property `loadBalancerType` # @return [String] attr_accessor :load_balancer_type # The fully qualified URL of the network that the load balancer is attached to. # This should be formatted like `https://www.googleapis.com/compute/v1/projects/` # project`/global/networks/`network``. # Corresponds to the JSON property `networkUrl` # @return [String] attr_accessor :network_url # The configured port of the load balancer. # Corresponds to the JSON property `port` # @return [String] attr_accessor :port # The project ID in which the load balancer is located. # Corresponds to the JSON property `project` # @return [String] attr_accessor :project # The region in which the load balancer is located. # Corresponds to the JSON property `region` # @return [String] attr_accessor :region def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @ip_address = args[:ip_address] if args.key?(:ip_address) @ip_protocol = args[:ip_protocol] if args.key?(:ip_protocol) @kind = args[:kind] if args.key?(:kind) @load_balancer_type = args[:load_balancer_type] if args.key?(:load_balancer_type) @network_url = args[:network_url] if args.key?(:network_url) @port = args[:port] if args.key?(:port) @project = args[:project] if args.key?(:project) @region = args[:region] if args.key?(:region) end end # Configures a RRSetRoutingPolicy such that all queries are responded with the # primary_targets if they are healthy. And if all of them are unhealthy, then we # fallback to a geo localized policy. class RrSetRoutingPolicyPrimaryBackupPolicy include Google::Apis::Core::Hashable # Configures a `RRSetRoutingPolicy` that routes based on the geo location of the # querying user. # Corresponds to the JSON property `backupGeoTargets` # @return [Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicy] attr_accessor :backup_geo_targets # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # HealthCheckTargets describes endpoints to health-check when responding to # Routing Policy queries. Only the healthy endpoints will be included in the # response. Set either `internal_load_balancer` or `external_endpoints`. Do not # set both. # Corresponds to the JSON property `primaryTargets` # @return [Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets] attr_accessor :primary_targets # When serving state is `PRIMARY`, this field provides the option of sending a # small percentage of the traffic to the backup targets. # Corresponds to the JSON property `trickleTraffic` # @return [Float] attr_accessor :trickle_traffic def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @backup_geo_targets = args[:backup_geo_targets] if args.key?(:backup_geo_targets) @kind = args[:kind] if args.key?(:kind) @primary_targets = args[:primary_targets] if args.key?(:primary_targets) @trickle_traffic = args[:trickle_traffic] if args.key?(:trickle_traffic) end end # Configures a RRSetRoutingPolicy that routes in a weighted round robin fashion. class RrSetRoutingPolicyWrrPolicy include Google::Apis::Core::Hashable # # Corresponds to the JSON property `items` # @return [Array] attr_accessor :items # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @items = args[:items] if args.key?(:items) @kind = args[:kind] if args.key?(:kind) end end # A routing block which contains the routing information for one WRR item. class RrSetRoutingPolicyWrrPolicyWrrPolicyItem include Google::Apis::Core::Hashable # HealthCheckTargets describes endpoints to health-check when responding to # Routing Policy queries. Only the healthy endpoints will be included in the # response. Set either `internal_load_balancer` or `external_endpoints`. Do not # set both. # Corresponds to the JSON property `healthCheckedTargets` # @return [Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets] attr_accessor :health_checked_targets # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # # Corresponds to the JSON property `rrdatas` # @return [Array] attr_accessor :rrdatas # DNSSEC generated signatures for all the `rrdata` within this item. When using # health-checked targets for DNSSEC-enabled zones, you can only use at most one # health-checked IP address per item. # Corresponds to the JSON property `signatureRrdatas` # @return [Array] attr_accessor :signature_rrdatas # The weight corresponding to this `WrrPolicyItem` object. When multiple ` # WrrPolicyItem` objects are configured, the probability of returning an ` # WrrPolicyItem` object's data is proportional to its weight relative to the sum # of weights configured for all items. This weight must be non-negative. # Corresponds to the JSON property `weight` # @return [Float] attr_accessor :weight def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @health_checked_targets = args[:health_checked_targets] if args.key?(:health_checked_targets) @kind = args[:kind] if args.key?(:kind) @rrdatas = args[:rrdatas] if args.key?(:rrdatas) @signature_rrdatas = args[:signature_rrdatas] if args.key?(:signature_rrdatas) @weight = args[:weight] if args.key?(:weight) end end # A unit of data that is returned by the DNS servers. class ResourceRecordSet include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # For example, www.example.com. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # A RRSetRoutingPolicy represents ResourceRecordSet data that is returned # dynamically with the response varying based on configured properties such as # geolocation or by weighted random selection. # Corresponds to the JSON property `routingPolicy` # @return [Google::Apis::DnsV1::RrSetRoutingPolicy] attr_accessor :routing_policy # As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) -- see # examples. # Corresponds to the JSON property `rrdatas` # @return [Array] attr_accessor :rrdatas # As defined in RFC 4034 (section 3.2). # Corresponds to the JSON property `signatureRrdatas` # @return [Array] attr_accessor :signature_rrdatas # Number of seconds that this `ResourceRecordSet` can be cached by resolvers. # Corresponds to the JSON property `ttl` # @return [Fixnum] attr_accessor :ttl # The identifier of a supported record type. See the list of Supported DNS # record types. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @routing_policy = args[:routing_policy] if args.key?(:routing_policy) @rrdatas = args[:rrdatas] if args.key?(:rrdatas) @signature_rrdatas = args[:signature_rrdatas] if args.key?(:signature_rrdatas) @ttl = args[:ttl] if args.key?(:ttl) @type = args[:type] if args.key?(:type) end end # class ResourceRecordSetsDeleteResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # class ListResourceRecordSetsResponse include Google::Apis::Core::Hashable # Type of resource. # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # The resource record set resources. # Corresponds to the JSON property `rrsets` # @return [Array] attr_accessor :rrsets def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @rrsets = args[:rrsets] if args.key?(:rrsets) end end # class ResponsePoliciesListResponse include Google::Apis::Core::Hashable # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # The Response Policy resources. # Corresponds to the JSON property `responsePolicies` # @return [Array] attr_accessor :response_policies def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @response_policies = args[:response_policies] if args.key?(:response_policies) end end # class ResponsePoliciesPatchResponse include Google::Apis::Core::Hashable # A Response Policy is a collection of selectors that apply to queries made # against one or more Virtual Private Cloud networks. # Corresponds to the JSON property `responsePolicy` # @return [Google::Apis::DnsV1::ResponsePolicy] attr_accessor :response_policy def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @response_policy = args[:response_policy] if args.key?(:response_policy) end end # class ResponsePoliciesUpdateResponse include Google::Apis::Core::Hashable # A Response Policy is a collection of selectors that apply to queries made # against one or more Virtual Private Cloud networks. # Corresponds to the JSON property `responsePolicy` # @return [Google::Apis::DnsV1::ResponsePolicy] attr_accessor :response_policy def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @response_policy = args[:response_policy] if args.key?(:response_policy) end end # A Response Policy is a collection of selectors that apply to queries made # against one or more Virtual Private Cloud networks. class ResponsePolicy include Google::Apis::Core::Hashable # User-provided description for this Response Policy. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # The list of Google Kubernetes Engine clusters to which this response policy is # applied. # Corresponds to the JSON property `gkeClusters` # @return [Array] attr_accessor :gke_clusters # Unique identifier for the resource; defined by the server (output only). # Corresponds to the JSON property `id` # @return [Fixnum] attr_accessor :id # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # User labels. # Corresponds to the JSON property `labels` # @return [Hash] attr_accessor :labels # List of network names specifying networks to which this policy is applied. # Corresponds to the JSON property `networks` # @return [Array] attr_accessor :networks # User assigned name for this Response Policy. # Corresponds to the JSON property `responsePolicyName` # @return [String] attr_accessor :response_policy_name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @description = args[:description] if args.key?(:description) @gke_clusters = args[:gke_clusters] if args.key?(:gke_clusters) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @networks = args[:networks] if args.key?(:networks) @response_policy_name = args[:response_policy_name] if args.key?(:response_policy_name) end end # class ResponsePolicyGkeCluster include Google::Apis::Core::Hashable # The resource name of the cluster to bind this response policy to. This should # be specified in the format like: projects/*/locations/*/clusters/*. This is # referenced from GKE projects.locations.clusters.get API: https://cloud.google. # com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters/get # Corresponds to the JSON property `gkeClusterName` # @return [String] attr_accessor :gke_cluster_name # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @gke_cluster_name = args[:gke_cluster_name] if args.key?(:gke_cluster_name) @kind = args[:kind] if args.key?(:kind) end end # class ResponsePolicyNetwork include Google::Apis::Core::Hashable # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # The fully qualified URL of the VPC network to bind to. This should be # formatted like `https://www.googleapis.com/compute/v1/projects/`project`/ # global/networks/`network`` # Corresponds to the JSON property `networkUrl` # @return [String] attr_accessor :network_url def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @kind = args[:kind] if args.key?(:kind) @network_url = args[:network_url] if args.key?(:network_url) end end # A Response Policy Rule is a selector that applies its behavior to queries that # match the selector. Selectors are DNS names, which may be wildcards or exact # matches. Each DNS query subject to a Response Policy matches at most one # ResponsePolicyRule, as identified by the dns_name field with the longest # matching suffix. class ResponsePolicyRule include Google::Apis::Core::Hashable # Answer this query with a behavior rather than DNS data. # Corresponds to the JSON property `behavior` # @return [String] attr_accessor :behavior # The DNS name (wildcard or exact) to apply this rule to. Must be unique within # the Response Policy Rule. # Corresponds to the JSON property `dnsName` # @return [String] attr_accessor :dns_name # # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Answer this query directly with DNS data. These ResourceRecordSets override # any other DNS behavior for the matched name; in particular they override # private zones, the public internet, and GCP internal DNS. No SOA nor NS types # are allowed. # Corresponds to the JSON property `localData` # @return [Google::Apis::DnsV1::ResponsePolicyRuleLocalData] attr_accessor :local_data # An identifier for this rule. Must be unique with the ResponsePolicy. # Corresponds to the JSON property `ruleName` # @return [String] attr_accessor :rule_name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @behavior = args[:behavior] if args.key?(:behavior) @dns_name = args[:dns_name] if args.key?(:dns_name) @kind = args[:kind] if args.key?(:kind) @local_data = args[:local_data] if args.key?(:local_data) @rule_name = args[:rule_name] if args.key?(:rule_name) end end # class ResponsePolicyRuleLocalData include Google::Apis::Core::Hashable # All resource record sets for this selector, one per resource record type. The # name must match the dns_name. # Corresponds to the JSON property `localDatas` # @return [Array] attr_accessor :local_datas def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @local_datas = args[:local_datas] if args.key?(:local_datas) end end # class ResponsePolicyRulesListResponse include Google::Apis::Core::Hashable # This field indicates that more results are available beyond the last page # displayed. To fetch the results, make another list request and use this value # as your page token. This lets you retrieve the complete contents of a very # large collection one page at a time. However, if the contents of the # collection change between the first and last paginated list request, the set # of all elements returned are an inconsistent view of the collection. You can't # retrieve a consistent snapshot of a collection larger than the maximum page # size. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # The Response Policy Rule resources. # Corresponds to the JSON property `responsePolicyRules` # @return [Array] attr_accessor :response_policy_rules def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @response_policy_rules = args[:response_policy_rules] if args.key?(:response_policy_rules) end end # class ResponsePolicyRulesPatchResponse include Google::Apis::Core::Hashable # A Response Policy Rule is a selector that applies its behavior to queries that # match the selector. Selectors are DNS names, which may be wildcards or exact # matches. Each DNS query subject to a Response Policy matches at most one # ResponsePolicyRule, as identified by the dns_name field with the longest # matching suffix. # Corresponds to the JSON property `responsePolicyRule` # @return [Google::Apis::DnsV1::ResponsePolicyRule] attr_accessor :response_policy_rule def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @response_policy_rule = args[:response_policy_rule] if args.key?(:response_policy_rule) end end # class ResponsePolicyRulesUpdateResponse include Google::Apis::Core::Hashable # A Response Policy Rule is a selector that applies its behavior to queries that # match the selector. Selectors are DNS names, which may be wildcards or exact # matches. Each DNS query subject to a Response Policy matches at most one # ResponsePolicyRule, as identified by the dns_name field with the longest # matching suffix. # Corresponds to the JSON property `responsePolicyRule` # @return [Google::Apis::DnsV1::ResponsePolicyRule] attr_accessor :response_policy_rule def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @response_policy_rule = args[:response_policy_rule] if args.key?(:response_policy_rule) end end end end end google-apis-dns_v1-0.50.0/lib/google/apis/dns_v1/representations.rb0000644000004100000410000012763315136232660025164 0ustar www-datawww-data# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'date' require 'google/apis/core/base_service' require 'google/apis/core/json_representation' require 'google/apis/core/hashable' require 'google/apis/errors' module Google module Apis module DnsV1 class Change class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ListChangesResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class DnsKey class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class DnsKeyDigest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class DnsKeySpec class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class DnsKeysListResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class Expr class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1AuditConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1AuditLogConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1Binding class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1GetIamPolicyRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1GetPolicyOptions class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1Policy class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1SetIamPolicyRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1TestIamPermissionsRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class GoogleIamV1TestIamPermissionsResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZone class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneCloudLoggingConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneDnsSecConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneForwardingConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneForwardingConfigNameServerTarget class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneOperationsListResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZonePeeringConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZonePeeringConfigTargetNetwork class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZonePrivateVisibilityConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZonePrivateVisibilityConfigGkeCluster class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZonePrivateVisibilityConfigNetwork class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneReverseLookupConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneServiceDirectoryConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ManagedZoneServiceDirectoryConfigNamespace class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ListManagedZonesResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class Operation class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class OperationDnsKeyContext class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class OperationManagedZoneContext class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PoliciesListResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PoliciesPatchResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PoliciesUpdateResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class Policy class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PolicyAlternativeNameServerConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PolicyAlternativeNameServerConfigTargetNameServer class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PolicyDns64Config class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PolicyDns64ConfigScope class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class PolicyNetwork class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class Project class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class Quota class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicy class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicyGeoPolicy class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicyGeoPolicyGeoPolicyItem class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicyHealthCheckTargets class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicyLoadBalancerTarget class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicyPrimaryBackupPolicy class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicyWrrPolicy class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class RrSetRoutingPolicyWrrPolicyWrrPolicyItem class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResourceRecordSet class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResourceRecordSetsDeleteResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ListResourceRecordSetsResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePoliciesListResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePoliciesPatchResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePoliciesUpdateResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicy class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicyGkeCluster class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicyNetwork class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicyRule class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicyRuleLocalData class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicyRulesListResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicyRulesPatchResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class ResponsePolicyRulesUpdateResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class Change # @private class Representation < Google::Apis::Core::JsonRepresentation collection :additions, as: 'additions', class: Google::Apis::DnsV1::ResourceRecordSet, decorator: Google::Apis::DnsV1::ResourceRecordSet::Representation collection :deletions, as: 'deletions', class: Google::Apis::DnsV1::ResourceRecordSet, decorator: Google::Apis::DnsV1::ResourceRecordSet::Representation property :id, as: 'id' property :is_serving, as: 'isServing' property :kind, as: 'kind' property :start_time, as: 'startTime' property :status, as: 'status' end end class ListChangesResponse # @private class Representation < Google::Apis::Core::JsonRepresentation collection :changes, as: 'changes', class: Google::Apis::DnsV1::Change, decorator: Google::Apis::DnsV1::Change::Representation property :kind, as: 'kind' property :next_page_token, as: 'nextPageToken' end end class DnsKey # @private class Representation < Google::Apis::Core::JsonRepresentation property :algorithm, as: 'algorithm' property :creation_time, as: 'creationTime' property :description, as: 'description' collection :digests, as: 'digests', class: Google::Apis::DnsV1::DnsKeyDigest, decorator: Google::Apis::DnsV1::DnsKeyDigest::Representation property :id, as: 'id' property :is_active, as: 'isActive' property :key_length, as: 'keyLength' property :key_tag, as: 'keyTag' property :kind, as: 'kind' property :public_key, as: 'publicKey' property :type, as: 'type' end end class DnsKeyDigest # @private class Representation < Google::Apis::Core::JsonRepresentation property :digest, as: 'digest' property :type, as: 'type' end end class DnsKeySpec # @private class Representation < Google::Apis::Core::JsonRepresentation property :algorithm, as: 'algorithm' property :key_length, as: 'keyLength' property :key_type, as: 'keyType' property :kind, as: 'kind' end end class DnsKeysListResponse # @private class Representation < Google::Apis::Core::JsonRepresentation collection :dns_keys, as: 'dnsKeys', class: Google::Apis::DnsV1::DnsKey, decorator: Google::Apis::DnsV1::DnsKey::Representation property :kind, as: 'kind' property :next_page_token, as: 'nextPageToken' end end class Expr # @private class Representation < Google::Apis::Core::JsonRepresentation property :description, as: 'description' property :expression, as: 'expression' property :location, as: 'location' property :title, as: 'title' end end class GoogleIamV1AuditConfig # @private class Representation < Google::Apis::Core::JsonRepresentation collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::DnsV1::GoogleIamV1AuditLogConfig, decorator: Google::Apis::DnsV1::GoogleIamV1AuditLogConfig::Representation property :service, as: 'service' end end class GoogleIamV1AuditLogConfig # @private class Representation < Google::Apis::Core::JsonRepresentation collection :exempted_members, as: 'exemptedMembers' property :log_type, as: 'logType' end end class GoogleIamV1Binding # @private class Representation < Google::Apis::Core::JsonRepresentation property :condition, as: 'condition', class: Google::Apis::DnsV1::Expr, decorator: Google::Apis::DnsV1::Expr::Representation collection :members, as: 'members' property :role, as: 'role' end end class GoogleIamV1GetIamPolicyRequest # @private class Representation < Google::Apis::Core::JsonRepresentation property :options, as: 'options', class: Google::Apis::DnsV1::GoogleIamV1GetPolicyOptions, decorator: Google::Apis::DnsV1::GoogleIamV1GetPolicyOptions::Representation end end class GoogleIamV1GetPolicyOptions # @private class Representation < Google::Apis::Core::JsonRepresentation property :requested_policy_version, as: 'requestedPolicyVersion' end end class GoogleIamV1Policy # @private class Representation < Google::Apis::Core::JsonRepresentation collection :audit_configs, as: 'auditConfigs', class: Google::Apis::DnsV1::GoogleIamV1AuditConfig, decorator: Google::Apis::DnsV1::GoogleIamV1AuditConfig::Representation collection :bindings, as: 'bindings', class: Google::Apis::DnsV1::GoogleIamV1Binding, decorator: Google::Apis::DnsV1::GoogleIamV1Binding::Representation property :etag, :base64 => true, as: 'etag' property :version, as: 'version' end end class GoogleIamV1SetIamPolicyRequest # @private class Representation < Google::Apis::Core::JsonRepresentation property :policy, as: 'policy', class: Google::Apis::DnsV1::GoogleIamV1Policy, decorator: Google::Apis::DnsV1::GoogleIamV1Policy::Representation property :update_mask, as: 'updateMask' end end class GoogleIamV1TestIamPermissionsRequest # @private class Representation < Google::Apis::Core::JsonRepresentation collection :permissions, as: 'permissions' end end class GoogleIamV1TestIamPermissionsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation collection :permissions, as: 'permissions' end end class ManagedZone # @private class Representation < Google::Apis::Core::JsonRepresentation property :cloud_logging_config, as: 'cloudLoggingConfig', class: Google::Apis::DnsV1::ManagedZoneCloudLoggingConfig, decorator: Google::Apis::DnsV1::ManagedZoneCloudLoggingConfig::Representation property :creation_time, as: 'creationTime' property :description, as: 'description' property :dns_name, as: 'dnsName' property :dnssec_config, as: 'dnssecConfig', class: Google::Apis::DnsV1::ManagedZoneDnsSecConfig, decorator: Google::Apis::DnsV1::ManagedZoneDnsSecConfig::Representation property :forwarding_config, as: 'forwardingConfig', class: Google::Apis::DnsV1::ManagedZoneForwardingConfig, decorator: Google::Apis::DnsV1::ManagedZoneForwardingConfig::Representation property :id, :numeric_string => true, as: 'id' property :kind, as: 'kind' hash :labels, as: 'labels' property :name, as: 'name' property :name_server_set, as: 'nameServerSet' collection :name_servers, as: 'nameServers' property :peering_config, as: 'peeringConfig', class: Google::Apis::DnsV1::ManagedZonePeeringConfig, decorator: Google::Apis::DnsV1::ManagedZonePeeringConfig::Representation property :private_visibility_config, as: 'privateVisibilityConfig', class: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfig, decorator: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfig::Representation property :reverse_lookup_config, as: 'reverseLookupConfig', class: Google::Apis::DnsV1::ManagedZoneReverseLookupConfig, decorator: Google::Apis::DnsV1::ManagedZoneReverseLookupConfig::Representation property :service_directory_config, as: 'serviceDirectoryConfig', class: Google::Apis::DnsV1::ManagedZoneServiceDirectoryConfig, decorator: Google::Apis::DnsV1::ManagedZoneServiceDirectoryConfig::Representation property :visibility, as: 'visibility' end end class ManagedZoneCloudLoggingConfig # @private class Representation < Google::Apis::Core::JsonRepresentation property :enable_logging, as: 'enableLogging' property :kind, as: 'kind' end end class ManagedZoneDnsSecConfig # @private class Representation < Google::Apis::Core::JsonRepresentation collection :default_key_specs, as: 'defaultKeySpecs', class: Google::Apis::DnsV1::DnsKeySpec, decorator: Google::Apis::DnsV1::DnsKeySpec::Representation property :kind, as: 'kind' property :non_existence, as: 'nonExistence' property :state, as: 'state' end end class ManagedZoneForwardingConfig # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' collection :target_name_servers, as: 'targetNameServers', class: Google::Apis::DnsV1::ManagedZoneForwardingConfigNameServerTarget, decorator: Google::Apis::DnsV1::ManagedZoneForwardingConfigNameServerTarget::Representation end end class ManagedZoneForwardingConfigNameServerTarget # @private class Representation < Google::Apis::Core::JsonRepresentation property :domain_name, as: 'domainName' property :forwarding_path, as: 'forwardingPath' property :ipv4_address, as: 'ipv4Address' property :ipv6_address, as: 'ipv6Address' property :kind, as: 'kind' end end class ManagedZoneOperationsListResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :next_page_token, as: 'nextPageToken' collection :operations, as: 'operations', class: Google::Apis::DnsV1::Operation, decorator: Google::Apis::DnsV1::Operation::Representation end end class ManagedZonePeeringConfig # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :target_network, as: 'targetNetwork', class: Google::Apis::DnsV1::ManagedZonePeeringConfigTargetNetwork, decorator: Google::Apis::DnsV1::ManagedZonePeeringConfigTargetNetwork::Representation end end class ManagedZonePeeringConfigTargetNetwork # @private class Representation < Google::Apis::Core::JsonRepresentation property :deactivate_time, as: 'deactivateTime' property :kind, as: 'kind' property :network_url, as: 'networkUrl' end end class ManagedZonePrivateVisibilityConfig # @private class Representation < Google::Apis::Core::JsonRepresentation collection :gke_clusters, as: 'gkeClusters', class: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfigGkeCluster, decorator: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfigGkeCluster::Representation property :kind, as: 'kind' collection :networks, as: 'networks', class: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfigNetwork, decorator: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfigNetwork::Representation end end class ManagedZonePrivateVisibilityConfigGkeCluster # @private class Representation < Google::Apis::Core::JsonRepresentation property :gke_cluster_name, as: 'gkeClusterName' property :kind, as: 'kind' end end class ManagedZonePrivateVisibilityConfigNetwork # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :network_url, as: 'networkUrl' end end class ManagedZoneReverseLookupConfig # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' end end class ManagedZoneServiceDirectoryConfig # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :namespace, as: 'namespace', class: Google::Apis::DnsV1::ManagedZoneServiceDirectoryConfigNamespace, decorator: Google::Apis::DnsV1::ManagedZoneServiceDirectoryConfigNamespace::Representation end end class ManagedZoneServiceDirectoryConfigNamespace # @private class Representation < Google::Apis::Core::JsonRepresentation property :deletion_time, as: 'deletionTime' property :kind, as: 'kind' property :namespace_url, as: 'namespaceUrl' end end class ListManagedZonesResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' collection :managed_zones, as: 'managedZones', class: Google::Apis::DnsV1::ManagedZone, decorator: Google::Apis::DnsV1::ManagedZone::Representation property :next_page_token, as: 'nextPageToken' end end class Operation # @private class Representation < Google::Apis::Core::JsonRepresentation property :dns_key_context, as: 'dnsKeyContext', class: Google::Apis::DnsV1::OperationDnsKeyContext, decorator: Google::Apis::DnsV1::OperationDnsKeyContext::Representation property :id, as: 'id' property :kind, as: 'kind' property :start_time, as: 'startTime' property :status, as: 'status' property :type, as: 'type' property :user, as: 'user' property :zone_context, as: 'zoneContext', class: Google::Apis::DnsV1::OperationManagedZoneContext, decorator: Google::Apis::DnsV1::OperationManagedZoneContext::Representation end end class OperationDnsKeyContext # @private class Representation < Google::Apis::Core::JsonRepresentation property :new_value, as: 'newValue', class: Google::Apis::DnsV1::DnsKey, decorator: Google::Apis::DnsV1::DnsKey::Representation property :old_value, as: 'oldValue', class: Google::Apis::DnsV1::DnsKey, decorator: Google::Apis::DnsV1::DnsKey::Representation end end class OperationManagedZoneContext # @private class Representation < Google::Apis::Core::JsonRepresentation property :new_value, as: 'newValue', class: Google::Apis::DnsV1::ManagedZone, decorator: Google::Apis::DnsV1::ManagedZone::Representation property :old_value, as: 'oldValue', class: Google::Apis::DnsV1::ManagedZone, decorator: Google::Apis::DnsV1::ManagedZone::Representation end end class PoliciesListResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :next_page_token, as: 'nextPageToken' collection :policies, as: 'policies', class: Google::Apis::DnsV1::Policy, decorator: Google::Apis::DnsV1::Policy::Representation end end class PoliciesPatchResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :policy, as: 'policy', class: Google::Apis::DnsV1::Policy, decorator: Google::Apis::DnsV1::Policy::Representation end end class PoliciesUpdateResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :policy, as: 'policy', class: Google::Apis::DnsV1::Policy, decorator: Google::Apis::DnsV1::Policy::Representation end end class Policy # @private class Representation < Google::Apis::Core::JsonRepresentation property :alternative_name_server_config, as: 'alternativeNameServerConfig', class: Google::Apis::DnsV1::PolicyAlternativeNameServerConfig, decorator: Google::Apis::DnsV1::PolicyAlternativeNameServerConfig::Representation property :description, as: 'description' property :dns64_config, as: 'dns64Config', class: Google::Apis::DnsV1::PolicyDns64Config, decorator: Google::Apis::DnsV1::PolicyDns64Config::Representation property :enable_inbound_forwarding, as: 'enableInboundForwarding' property :enable_logging, as: 'enableLogging' property :id, :numeric_string => true, as: 'id' property :kind, as: 'kind' property :name, as: 'name' collection :networks, as: 'networks', class: Google::Apis::DnsV1::PolicyNetwork, decorator: Google::Apis::DnsV1::PolicyNetwork::Representation end end class PolicyAlternativeNameServerConfig # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' collection :target_name_servers, as: 'targetNameServers', class: Google::Apis::DnsV1::PolicyAlternativeNameServerConfigTargetNameServer, decorator: Google::Apis::DnsV1::PolicyAlternativeNameServerConfigTargetNameServer::Representation end end class PolicyAlternativeNameServerConfigTargetNameServer # @private class Representation < Google::Apis::Core::JsonRepresentation property :forwarding_path, as: 'forwardingPath' property :ipv4_address, as: 'ipv4Address' property :ipv6_address, as: 'ipv6Address' property :kind, as: 'kind' end end class PolicyDns64Config # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :scope, as: 'scope', class: Google::Apis::DnsV1::PolicyDns64ConfigScope, decorator: Google::Apis::DnsV1::PolicyDns64ConfigScope::Representation end end class PolicyDns64ConfigScope # @private class Representation < Google::Apis::Core::JsonRepresentation property :all_queries, as: 'allQueries' property :kind, as: 'kind' end end class PolicyNetwork # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :network_url, as: 'networkUrl' end end class Project # @private class Representation < Google::Apis::Core::JsonRepresentation property :id, as: 'id' property :kind, as: 'kind' property :number, :numeric_string => true, as: 'number' property :quota, as: 'quota', class: Google::Apis::DnsV1::Quota, decorator: Google::Apis::DnsV1::Quota::Representation end end class Quota # @private class Representation < Google::Apis::Core::JsonRepresentation property :dns_keys_per_managed_zone, as: 'dnsKeysPerManagedZone' property :gke_clusters_per_managed_zone, as: 'gkeClustersPerManagedZone' property :gke_clusters_per_policy, as: 'gkeClustersPerPolicy' property :gke_clusters_per_response_policy, as: 'gkeClustersPerResponsePolicy' property :internet_health_checks_per_managed_zone, as: 'internetHealthChecksPerManagedZone' property :items_per_routing_policy, as: 'itemsPerRoutingPolicy' property :kind, as: 'kind' property :managed_zones, as: 'managedZones' property :managed_zones_per_gke_cluster, as: 'managedZonesPerGkeCluster' property :managed_zones_per_network, as: 'managedZonesPerNetwork' property :nameservers_per_delegation, as: 'nameserversPerDelegation' property :networks_per_managed_zone, as: 'networksPerManagedZone' property :networks_per_policy, as: 'networksPerPolicy' property :networks_per_response_policy, as: 'networksPerResponsePolicy' property :peering_zones_per_target_network, as: 'peeringZonesPerTargetNetwork' property :policies, as: 'policies' property :resource_records_per_rrset, as: 'resourceRecordsPerRrset' property :response_policies, as: 'responsePolicies' property :response_policy_rules_per_response_policy, as: 'responsePolicyRulesPerResponsePolicy' property :rrset_additions_per_change, as: 'rrsetAdditionsPerChange' property :rrset_deletions_per_change, as: 'rrsetDeletionsPerChange' property :rrsets_per_managed_zone, as: 'rrsetsPerManagedZone' property :target_name_servers_per_managed_zone, as: 'targetNameServersPerManagedZone' property :target_name_servers_per_policy, as: 'targetNameServersPerPolicy' property :total_rrdata_size_per_change, as: 'totalRrdataSizePerChange' collection :whitelisted_key_specs, as: 'whitelistedKeySpecs', class: Google::Apis::DnsV1::DnsKeySpec, decorator: Google::Apis::DnsV1::DnsKeySpec::Representation end end class RrSetRoutingPolicy # @private class Representation < Google::Apis::Core::JsonRepresentation property :geo, as: 'geo', class: Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicy, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicy::Representation property :health_check, as: 'healthCheck' property :kind, as: 'kind' property :primary_backup, as: 'primaryBackup', class: Google::Apis::DnsV1::RrSetRoutingPolicyPrimaryBackupPolicy, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyPrimaryBackupPolicy::Representation property :wrr, as: 'wrr', class: Google::Apis::DnsV1::RrSetRoutingPolicyWrrPolicy, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyWrrPolicy::Representation end end class RrSetRoutingPolicyGeoPolicy # @private class Representation < Google::Apis::Core::JsonRepresentation property :enable_fencing, as: 'enableFencing' collection :items, as: 'items', class: Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicyGeoPolicyItem, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicyGeoPolicyItem::Representation property :kind, as: 'kind' end end class RrSetRoutingPolicyGeoPolicyGeoPolicyItem # @private class Representation < Google::Apis::Core::JsonRepresentation property :health_checked_targets, as: 'healthCheckedTargets', class: Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets::Representation property :kind, as: 'kind' property :location, as: 'location' collection :rrdatas, as: 'rrdatas' collection :signature_rrdatas, as: 'signatureRrdatas' end end class RrSetRoutingPolicyHealthCheckTargets # @private class Representation < Google::Apis::Core::JsonRepresentation collection :external_endpoints, as: 'externalEndpoints' collection :internal_load_balancers, as: 'internalLoadBalancers', class: Google::Apis::DnsV1::RrSetRoutingPolicyLoadBalancerTarget, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyLoadBalancerTarget::Representation end end class RrSetRoutingPolicyLoadBalancerTarget # @private class Representation < Google::Apis::Core::JsonRepresentation property :ip_address, as: 'ipAddress' property :ip_protocol, as: 'ipProtocol' property :kind, as: 'kind' property :load_balancer_type, as: 'loadBalancerType' property :network_url, as: 'networkUrl' property :port, as: 'port' property :project, as: 'project' property :region, as: 'region' end end class RrSetRoutingPolicyPrimaryBackupPolicy # @private class Representation < Google::Apis::Core::JsonRepresentation property :backup_geo_targets, as: 'backupGeoTargets', class: Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicy, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyGeoPolicy::Representation property :kind, as: 'kind' property :primary_targets, as: 'primaryTargets', class: Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets::Representation property :trickle_traffic, as: 'trickleTraffic' end end class RrSetRoutingPolicyWrrPolicy # @private class Representation < Google::Apis::Core::JsonRepresentation collection :items, as: 'items', class: Google::Apis::DnsV1::RrSetRoutingPolicyWrrPolicyWrrPolicyItem, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyWrrPolicyWrrPolicyItem::Representation property :kind, as: 'kind' end end class RrSetRoutingPolicyWrrPolicyWrrPolicyItem # @private class Representation < Google::Apis::Core::JsonRepresentation property :health_checked_targets, as: 'healthCheckedTargets', class: Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets, decorator: Google::Apis::DnsV1::RrSetRoutingPolicyHealthCheckTargets::Representation property :kind, as: 'kind' collection :rrdatas, as: 'rrdatas' collection :signature_rrdatas, as: 'signatureRrdatas' property :weight, as: 'weight' end end class ResourceRecordSet # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :name, as: 'name' property :routing_policy, as: 'routingPolicy', class: Google::Apis::DnsV1::RrSetRoutingPolicy, decorator: Google::Apis::DnsV1::RrSetRoutingPolicy::Representation collection :rrdatas, as: 'rrdatas' collection :signature_rrdatas, as: 'signatureRrdatas' property :ttl, as: 'ttl' property :type, as: 'type' end end class ResourceRecordSetsDeleteResponse # @private class Representation < Google::Apis::Core::JsonRepresentation end end class ListResourceRecordSetsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :next_page_token, as: 'nextPageToken' collection :rrsets, as: 'rrsets', class: Google::Apis::DnsV1::ResourceRecordSet, decorator: Google::Apis::DnsV1::ResourceRecordSet::Representation end end class ResponsePoliciesListResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :next_page_token, as: 'nextPageToken' collection :response_policies, as: 'responsePolicies', class: Google::Apis::DnsV1::ResponsePolicy, decorator: Google::Apis::DnsV1::ResponsePolicy::Representation end end class ResponsePoliciesPatchResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :response_policy, as: 'responsePolicy', class: Google::Apis::DnsV1::ResponsePolicy, decorator: Google::Apis::DnsV1::ResponsePolicy::Representation end end class ResponsePoliciesUpdateResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :response_policy, as: 'responsePolicy', class: Google::Apis::DnsV1::ResponsePolicy, decorator: Google::Apis::DnsV1::ResponsePolicy::Representation end end class ResponsePolicy # @private class Representation < Google::Apis::Core::JsonRepresentation property :description, as: 'description' collection :gke_clusters, as: 'gkeClusters', class: Google::Apis::DnsV1::ResponsePolicyGkeCluster, decorator: Google::Apis::DnsV1::ResponsePolicyGkeCluster::Representation property :id, :numeric_string => true, as: 'id' property :kind, as: 'kind' hash :labels, as: 'labels' collection :networks, as: 'networks', class: Google::Apis::DnsV1::ResponsePolicyNetwork, decorator: Google::Apis::DnsV1::ResponsePolicyNetwork::Representation property :response_policy_name, as: 'responsePolicyName' end end class ResponsePolicyGkeCluster # @private class Representation < Google::Apis::Core::JsonRepresentation property :gke_cluster_name, as: 'gkeClusterName' property :kind, as: 'kind' end end class ResponsePolicyNetwork # @private class Representation < Google::Apis::Core::JsonRepresentation property :kind, as: 'kind' property :network_url, as: 'networkUrl' end end class ResponsePolicyRule # @private class Representation < Google::Apis::Core::JsonRepresentation property :behavior, as: 'behavior' property :dns_name, as: 'dnsName' property :kind, as: 'kind' property :local_data, as: 'localData', class: Google::Apis::DnsV1::ResponsePolicyRuleLocalData, decorator: Google::Apis::DnsV1::ResponsePolicyRuleLocalData::Representation property :rule_name, as: 'ruleName' end end class ResponsePolicyRuleLocalData # @private class Representation < Google::Apis::Core::JsonRepresentation collection :local_datas, as: 'localDatas', class: Google::Apis::DnsV1::ResourceRecordSet, decorator: Google::Apis::DnsV1::ResourceRecordSet::Representation end end class ResponsePolicyRulesListResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :next_page_token, as: 'nextPageToken' collection :response_policy_rules, as: 'responsePolicyRules', class: Google::Apis::DnsV1::ResponsePolicyRule, decorator: Google::Apis::DnsV1::ResponsePolicyRule::Representation end end class ResponsePolicyRulesPatchResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :response_policy_rule, as: 'responsePolicyRule', class: Google::Apis::DnsV1::ResponsePolicyRule, decorator: Google::Apis::DnsV1::ResponsePolicyRule::Representation end end class ResponsePolicyRulesUpdateResponse # @private class Representation < Google::Apis::Core::JsonRepresentation property :response_policy_rule, as: 'responsePolicyRule', class: Google::Apis::DnsV1::ResponsePolicyRule, decorator: Google::Apis::DnsV1::ResponsePolicyRule::Representation end end end end end google-apis-dns_v1-0.50.0/.yardopts0000644000004100000410000000034215136232660017073 0ustar www-datawww-data--hide-void-return --no-private --verbose --title=google-apis-dns_v1 --markup-provider=redcarpet --markup=markdown --main OVERVIEW.md lib/google/apis/dns_v1/*.rb lib/google/apis/dns_v1.rb - OVERVIEW.md CHANGELOG.md LICENSE.md google-apis-dns_v1-0.50.0/LICENSE.md0000644000004100000410000002636115136232660016642 0ustar www-datawww-data Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. google-apis-dns_v1-0.50.0/google-apis-dns_v1.gemspec0000644000004100000410000000451015136232660022171 0ustar www-datawww-data######################################################### # This file has been automatically generated by gem2tgz # ######################################################### # -*- encoding: utf-8 -*- # stub: google-apis-dns_v1 0.50.0 ruby lib Gem::Specification.new do |s| s.name = "google-apis-dns_v1".freeze s.version = "0.50.0".freeze s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version= s.metadata = { "bug_tracker_uri" => "https://github.com/googleapis/google-api-ruby-client/issues", "changelog_uri" => "https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-dns_v1/CHANGELOG.md", "documentation_uri" => "https://googleapis.dev/ruby/google-apis-dns_v1/v0.50.0", "source_code_uri" => "https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-dns_v1" } if s.respond_to? :metadata= s.require_paths = ["lib".freeze] s.authors = ["Google LLC".freeze] s.date = "1980-01-02" s.description = "This is the simple REST client for Cloud DNS API V1. Simple REST clients are Ruby client libraries that provide access to Google services via their HTTP REST API endpoints. These libraries are generated and updated automatically based on the discovery documents published by the service, and they handle most concerns such as authentication, pagination, retry, timeouts, and logging. You can use this client to access the Cloud DNS API, but note that some services may provide a separate modern client that is easier to use.".freeze s.email = "googleapis-packages@google.com".freeze s.files = [".yardopts".freeze, "CHANGELOG.md".freeze, "LICENSE.md".freeze, "OVERVIEW.md".freeze, "lib/google-apis-dns_v1.rb".freeze, "lib/google/apis/dns_v1.rb".freeze, "lib/google/apis/dns_v1/classes.rb".freeze, "lib/google/apis/dns_v1/gem_version.rb".freeze, "lib/google/apis/dns_v1/representations.rb".freeze, "lib/google/apis/dns_v1/service.rb".freeze] s.homepage = "https://github.com/google/google-api-ruby-client".freeze s.licenses = ["Apache-2.0".freeze] s.required_ruby_version = Gem::Requirement.new(">= 3.1".freeze) s.rubygems_version = "3.6.9".freeze s.summary = "Simple REST client for Cloud DNS API V1".freeze s.specification_version = 4 s.add_runtime_dependency(%q.freeze, [">= 0.15.0".freeze, "< 2.a".freeze]) end google-apis-dns_v1-0.50.0/CHANGELOG.md0000644000004100000410000001066615136232660017050 0ustar www-datawww-data# Release history for google-apis-dns_v1 ### v0.50.0 (2026-01-18) * Regenerated from discovery document revision 20260113 ### v0.49.0 (2025-09-07) * Regenerated from discovery document revision 20250828 * Regenerated using generator version 0.18.0 ### v0.48.0 (2025-05-04) * Regenerated using generator version 0.17.0 ### v0.47.0 (2025-04-20) * Regenerated from discovery document revision 20250411 ### v0.46.0 (2025-03-09) * Regenerated from discovery document revision 20250227 ### v0.45.0 (2025-01-12) * Regenerated from discovery document revision 20250102 * Regenerated using generator version 0.16.0 ### v0.44.0 (2024-07-25) * Regenerated from discovery document revision 20240719 ### v0.43.0 (2024-06-09) * Regenerated from discovery document revision 20240531 ### v0.42.0 (2024-05-19) * Regenerated using generator version 0.15.0 ### v0.41.0 (2024-04-28) * Regenerated from discovery document revision 20240419 ### v0.40.0 (2024-03-03) * Regenerated from discovery document revision 20240222 ### v0.39.0 (2024-02-23) * Regenerated using generator version 0.14.0 ### v0.38.0 (2024-01-28) * Regenerated from discovery document revision 20240118 * Regenerated using generator version 0.13.1 ### v0.37.0 (2024-01-23) * Regenerated using generator version 0.13.0 ### v0.36.0 (2023-12-24) * Regenerated from discovery document revision 20231218 ### v0.35.0 (2023-12-10) * Regenerated from discovery document revision 20231130 ### v0.34.0 (2023-09-10) * Regenerated from discovery document revision 20230831 ### v0.33.0 (2023-08-27) * Regenerated from discovery document revision 20230807 ### v0.32.0 (2023-04-16) * Regenerated from discovery document revision 20230330 ### v0.31.0 (2023-02-19) * Regenerated using generator version 0.12.0 ### v0.30.0 (2023-02-05) * Regenerated from discovery document revision 20230126 * Regenerated using generator version 0.11.1 ### v0.29.0 (2022-11-19) * Regenerated from discovery document revision 20221110 * Regenerated using generator version 0.11.0 ### v0.28.0 (2022-09-25) * Regenerated from discovery document revision 20220915 * Regenerated using generator version 0.10.0 ### v0.27.0 (2022-09-16) * Unspecified changes ### v0.26.0 (2022-09-09) * Regenerated from discovery document revision 20220831 ### v0.25.0 (2022-08-10) * Regenerated from discovery document revision 20220804 ### v0.24.0 (2022-08-02) * Regenerated from discovery document revision 20220728 * Regenerated using generator version 0.9.0 ### v0.23.0 (2022-06-30) * Regenerated from discovery document revision 20220622 * Regenerated using generator version 0.8.0 ### v0.22.0 (2022-06-20) * Regenerated using generator version 0.7.0 ### v0.21.0 (2022-06-06) * Regenerated using generator version 0.5.0 ### v0.20.0 (2022-05-25) * Regenerated from discovery document revision 20220518 ### v0.19.0 (2022-02-01) * Regenerated from discovery document revision 20220127 ### v0.18.0 (2022-01-21) * Regenerated from discovery document revision 20220114 * Regenerated using generator version 0.4.1 ### v0.17.0 (2022-01-08) * Regenerated from discovery document revision 20220106 * Unspecified changes ### v0.16.0 (2021-11-09) * Regenerated from discovery document revision 20211103 ### v0.15.0 (2021-10-21) * Unspecified changes ### v0.14.0 (2021-09-01) * Regenerated from discovery document revision 20210809 ### v0.13.0 (2021-07-20) * Regenerated from discovery document revision 20210712 ### v0.12.0 (2021-06-29) * Regenerated using generator version 0.4.0 ### v0.11.0 (2021-06-24) * Regenerated using generator version 0.3.0 ### v0.10.0 (2021-05-19) * Unspecified changes ### v0.9.0 (2021-04-29) * Regenerated from discovery document revision 20210423 ### v0.8.0 (2021-03-29) * Regenerated from discovery document revision 20210319 ### v0.7.0 (2021-03-22) * Regenerated from discovery document revision 20210314 ### v0.6.0 (2021-03-17) * Regenerated from discovery document revision 20210309 ### v0.5.0 (2021-03-08) * Regenerated from discovery document revision 20210303 * Regenerated using generator version 0.2.0 ### v0.4.0 (2021-03-04) * Regenerated from discovery document revision 20210227 ### v0.3.0 (2021-02-23) * Regenerated from discovery document revision 20210213 ### v0.2.0 (2021-02-11) * Regenerated from discovery document revision 20210204 * Regenerated using generator version 0.1.2 ### v0.1.0 (2021-01-07) * Regenerated using generator version 0.1.1 * Regenerated from discovery document revision 20201127