diff --git a/api_names_out.yaml b/api_names_out.yaml index e8617f898..5fdf983b8 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -49471,6 +49471,7 @@ "/container:v1/NodeConfig/metadata": metadata "/container:v1/NodeConfig/metadata/metadatum": metadatum "/container:v1/NodeConfig/minCpuPlatform": min_cpu_platform +"/container:v1/NodeConfig/nodeGroup": node_group "/container:v1/NodeConfig/oauthScopes": oauth_scopes "/container:v1/NodeConfig/oauthScopes/oauth_scope": oauth_scope "/container:v1/NodeConfig/preemptible": preemptible @@ -50301,6 +50302,7 @@ "/container:v1beta1/NodeConfig/metadata": metadata "/container:v1beta1/NodeConfig/metadata/metadatum": metadatum "/container:v1beta1/NodeConfig/minCpuPlatform": min_cpu_platform +"/container:v1beta1/NodeConfig/nodeGroup": node_group "/container:v1beta1/NodeConfig/oauthScopes": oauth_scopes "/container:v1beta1/NodeConfig/oauthScopes/oauth_scope": oauth_scope "/container:v1beta1/NodeConfig/preemptible": preemptible @@ -50574,6 +50576,7 @@ "/container:v1beta1/VerticalPodAutoscaling/enabled": enabled "/container:v1beta1/WorkloadIdentityConfig": workload_identity_config "/container:v1beta1/WorkloadIdentityConfig/identityNamespace": identity_namespace +"/container:v1beta1/WorkloadIdentityConfig/identityProvider": identity_provider "/container:v1beta1/WorkloadIdentityConfig/workloadPool": workload_pool "/container:v1beta1/WorkloadMetadataConfig": workload_metadata_config "/container:v1beta1/WorkloadMetadataConfig/mode": mode diff --git a/generated/google/apis/container_v1.rb b/generated/google/apis/container_v1.rb index 37d3b1761..3c5713f02 100644 --- a/generated/google/apis/container_v1.rb +++ b/generated/google/apis/container_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/container-engine/ module ContainerV1 VERSION = 'V1' - REVISION = '20200619' + REVISION = '20200709' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/container_v1/classes.rb b/generated/google/apis/container_v1/classes.rb index a6c3a6cbe..c81e2f594 100644 --- a/generated/google/apis/container_v1/classes.rb +++ b/generated/google/apis/container_v1/classes.rb @@ -2230,6 +2230,14 @@ module Google # @return [String] attr_accessor :min_cpu_platform + # Setting this field will assign instances of this + # pool to run on the specified node group. This is useful for running + # workloads on [sole tenant + # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes). + # Corresponds to the JSON property `nodeGroup` + # @return [String] + attr_accessor :node_group + # The set of Google API scopes to be made available on all of the # node VMs under the "default" service account. # The following scopes are recommended, but not required, and by default are @@ -2316,6 +2324,7 @@ module Google @machine_type = args[:machine_type] if args.key?(:machine_type) @metadata = args[:metadata] if args.key?(:metadata) @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) + @node_group = args[:node_group] if args.key?(:node_group) @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) @preemptible = args[:preemptible] if args.key?(:preemptible) @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity) diff --git a/generated/google/apis/container_v1/representations.rb b/generated/google/apis/container_v1/representations.rb index 368e8d7a5..42679aab6 100644 --- a/generated/google/apis/container_v1/representations.rb +++ b/generated/google/apis/container_v1/representations.rb @@ -1082,6 +1082,7 @@ module Google property :machine_type, as: 'machineType' hash :metadata, as: 'metadata' property :min_cpu_platform, as: 'minCpuPlatform' + property :node_group, as: 'nodeGroup' collection :oauth_scopes, as: 'oauthScopes' property :preemptible, as: 'preemptible' property :reservation_affinity, as: 'reservationAffinity', class: Google::Apis::ContainerV1::ReservationAffinity, decorator: Google::Apis::ContainerV1::ReservationAffinity::Representation diff --git a/generated/google/apis/container_v1beta1.rb b/generated/google/apis/container_v1beta1.rb index 0622e8c6b..290f2f7ea 100644 --- a/generated/google/apis/container_v1beta1.rb +++ b/generated/google/apis/container_v1beta1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/container-engine/ module ContainerV1beta1 VERSION = 'V1beta1' - REVISION = '20200619' + REVISION = '20200709' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/container_v1beta1/classes.rb b/generated/google/apis/container_v1beta1/classes.rb index d8707fe0d..2436cd16d 100644 --- a/generated/google/apis/container_v1beta1/classes.rb +++ b/generated/google/apis/container_v1beta1/classes.rb @@ -2678,6 +2678,14 @@ module Google # @return [String] attr_accessor :min_cpu_platform + # Setting this field will assign instances of this + # pool to run on the specified node group. This is useful for running + # workloads on [sole tenant + # nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes). + # Corresponds to the JSON property `nodeGroup` + # @return [String] + attr_accessor :node_group + # The set of Google API scopes to be made available on all of the # node VMs under the "default" service account. # The following scopes are recommended, but not required, and by default are @@ -2766,6 +2774,7 @@ module Google @machine_type = args[:machine_type] if args.key?(:machine_type) @metadata = args[:metadata] if args.key?(:metadata) @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) + @node_group = args[:node_group] if args.key?(:node_group) @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) @preemptible = args[:preemptible] if args.key?(:preemptible) @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity) @@ -4925,6 +4934,11 @@ module Google # @return [String] attr_accessor :identity_namespace + # identity provider is the third party identity provider. + # Corresponds to the JSON property `identityProvider` + # @return [String] + attr_accessor :identity_provider + # The workload pool to attach all Kubernetes service accounts to. # Corresponds to the JSON property `workloadPool` # @return [String] @@ -4937,6 +4951,7 @@ module Google # Update properties of this object def update!(**args) @identity_namespace = args[:identity_namespace] if args.key?(:identity_namespace) + @identity_provider = args[:identity_provider] if args.key?(:identity_provider) @workload_pool = args[:workload_pool] if args.key?(:workload_pool) end end diff --git a/generated/google/apis/container_v1beta1/representations.rb b/generated/google/apis/container_v1beta1/representations.rb index 1eb522615..721d6b563 100644 --- a/generated/google/apis/container_v1beta1/representations.rb +++ b/generated/google/apis/container_v1beta1/representations.rb @@ -1294,6 +1294,7 @@ module Google property :machine_type, as: 'machineType' hash :metadata, as: 'metadata' property :min_cpu_platform, as: 'minCpuPlatform' + property :node_group, as: 'nodeGroup' collection :oauth_scopes, as: 'oauthScopes' property :preemptible, as: 'preemptible' property :reservation_affinity, as: 'reservationAffinity', class: Google::Apis::ContainerV1beta1::ReservationAffinity, decorator: Google::Apis::ContainerV1beta1::ReservationAffinity::Representation @@ -1806,6 +1807,7 @@ module Google # @private class Representation < Google::Apis::Core::JsonRepresentation property :identity_namespace, as: 'identityNamespace' + property :identity_provider, as: 'identityProvider' property :workload_pool, as: 'workloadPool' end end diff --git a/generated/google/apis/dns_v1.rb b/generated/google/apis/dns_v1.rb new file mode 100644 index 000000000..307911c8b --- /dev/null +++ b/generated/google/apis/dns_v1.rb @@ -0,0 +1,43 @@ +# Copyright 2015 Google Inc. +# +# 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' + +module Google + module Apis + # Cloud DNS API + # + # + # + # @see http://developers.google.com/cloud-dns + module DnsV1 + VERSION = 'V1' + REVISION = '20200709' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + 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 diff --git a/generated/google/apis/dns_v1/classes.rb b/generated/google/apis/dns_v1/classes.rb new file mode 100644 index 000000000..1744fcb88 --- /dev/null +++ b/generated/google/apis/dns_v1/classes.rb @@ -0,0 +1,1447 @@ +# Copyright 2015 Google Inc. +# +# 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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to retrieve a "snapshot" of collections 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) + @header = args[:header] if args.key?(:header) + @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 will be used to sign subsequent changes to the ManagedZone. + # Inactive keys will still be 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 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, will be used to sign only + # resource record sets of type DNSKEY. Otherwise, the Secure Entry Point + # flag will be cleared and this key will be 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, will only be used to sign resource record sets of type DNSKEY. + # Zone signing keys do not have the Secure Entry Point flag set and will be + # 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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to retrieve a "snapshot" of collections 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) + @header = args[:header] if args.key?(:header) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + 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 + + # 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 will leave this field unset. + # 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 will resolve 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 + + # 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) + @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) + @visibility = args[:visibility] if args.key?(:visibility) + 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 will select 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 + + # Forwarding path for this NameServerTarget, if unset or set to DEFAULT, + # Cloud DNS will make forwarding decision based on address ranges, + # i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the + # Internet. When set to PRIVATE, Cloud DNS will always send queries + # through VPC 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 + + # + # 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) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class ManagedZoneOperationsListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # + # 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) + @kind = args[:kind] if args.key?(:kind) + @networks = args[:networks] if args.key?(:networks) + 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. + # 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 + + # + 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 + + # + class ListManagedZonesResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # 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 + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # 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) + @header = args[:header] if args.key?(:header) + @policy = args[:policy] if args.key?(:policy) + end + end + + # + class PoliciesUpdateResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # 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) + @header = args[:header] if args.key?(:header) + @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 + + # Allows networks bound to this policy to receive DNS queries sent by VMs or + # applications over VPN connections. When enabled, a virtual IP address will + # be allocated from each of the sub-networks 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) + @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 will make forwarding decision based on address ranges, + # i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the + # Internet. When set to PRIVATE, Cloud DNS will always send queries + # through VPC for this target + # Corresponds to the JSON property `forwardingPath` + # @return [String] + attr_accessor :forwarding_path + + # IPv4 address to forward to. + # Corresponds to the JSON property `ipv4Address` + # @return [String] + attr_accessor :ipv4_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) + @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 + + # + # 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 + # network. + # Corresponds to the JSON property `managedZonesPerNetwork` + # @return [Fixnum] + attr_accessor :managed_zones_per_network + + # 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 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 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) + @kind = args[:kind] if args.key?(:kind) + @managed_zones = args[:managed_zones] if args.key?(:managed_zones) + @managed_zones_per_network = args[:managed_zones_per_network] if args.key?(:managed_zones_per_network) + @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) + @policies = args[:policies] if args.key?(:policies) + @resource_records_per_rrset = args[:resource_records_per_rrset] if args.key?(:resource_records_per_rrset) + @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 unit of data that will be 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 + + # 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) + @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 ListResourceRecordSetsResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # Elements common to every response. + class ResponseHeader + include Google::Apis::Core::Hashable + + # For mutating operation requests that completed successfully. + # This is the client_operation_id if the client specified it, + # otherwise it is generated by the server (output only). + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operation_id = args[:operation_id] if args.key?(:operation_id) + end + end + end + end +end diff --git a/generated/google/apis/dns_v1/representations.rb b/generated/google/apis/dns_v1/representations.rb new file mode 100644 index 000000000..3641253b2 --- /dev/null +++ b/generated/google/apis/dns_v1/representations.rb @@ -0,0 +1,588 @@ +# Copyright 2015 Google Inc. +# +# 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 ManagedZone + 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 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 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 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 ResourceRecordSet + 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 ResponseHeader + 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 :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::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 :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class ManagedZone + # @private + class Representation < Google::Apis::Core::JsonRepresentation + 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 :visibility, as: 'visibility' + 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 :forwarding_path, as: 'forwardingPath' + property :ipv4_address, as: 'ipv4Address' + property :kind, as: 'kind' + end + end + + class ManagedZoneOperationsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + 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 + property :kind, as: 'kind' + collection :networks, as: 'networks', class: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfigNetwork, decorator: Google::Apis::DnsV1::ManagedZonePrivateVisibilityConfigNetwork::Representation + + 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 ListManagedZonesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + 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 :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + 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 :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + 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 :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + 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 :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 :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 :kind, as: 'kind' + property :managed_zones, as: 'managedZones' + property :managed_zones_per_network, as: 'managedZonesPerNetwork' + property :networks_per_managed_zone, as: 'networksPerManagedZone' + property :networks_per_policy, as: 'networksPerPolicy' + property :policies, as: 'policies' + property :resource_records_per_rrset, as: 'resourceRecordsPerRrset' + 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 ResourceRecordSet + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :name, as: 'name' + collection :rrdatas, as: 'rrdatas' + collection :signature_rrdatas, as: 'signatureRrdatas' + property :ttl, as: 'ttl' + property :type, as: 'type' + end + end + + class ListResourceRecordSetsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + 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 ResponseHeader + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :operation_id, as: 'operationId' + end + end + end + end +end diff --git a/generated/google/apis/dns_v1/service.rb b/generated/google/apis/dns_v1/service.rb new file mode 100644 index 000000000..e183cc23c --- /dev/null +++ b/generated/google/apis/dns_v1/service.rb @@ -0,0 +1,928 @@ +# Copyright 2015 Google Inc. +# +# 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 http://developers.google.com/cloud-dns + class DnsService < Google::Apis::Core::BaseService + # @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('https://dns.googleapis.com/', '') + @batch_path = 'batch' + end + + # Atomically update 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 + + # Fetch 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 + + # Enumerate 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 will decide 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 + + # Fetch 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 will be + # 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 + + # Enumerate 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 will be + # computed and displayed. + # @param [Fixnum] max_results + # Optional. Maximum number of results to be returned. If unspecified, the + # server will decide 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 + + # Fetch 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. + # @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 + + # Enumerate 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 will decide 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 + + # Create 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 + + # Delete 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 + + # Fetch 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 + + # Enumerate 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 will decide 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 + + # Apply 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 + + # Update 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 + + # Create 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 + + # Delete a previously created Policy. Will fail 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 + + # Fetch 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 + + # Enumerate 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 will decide 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 + + # Apply 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 + + # Update 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 + + # Fetch 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 + + # Enumerate ResourceRecordSets that have been 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 will decide how many results to return. + # @param [String] name + # Restricts the list to return only records with this fully qualified domain + # name. + # @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 + # Restricts the list to return only records of this type. If present, the + # "name" parameter must also be present. + # @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 + + 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 diff --git a/generated/google/apis/dns_v1beta2.rb b/generated/google/apis/dns_v1beta2.rb new file mode 100644 index 000000000..7316612cf --- /dev/null +++ b/generated/google/apis/dns_v1beta2.rb @@ -0,0 +1,43 @@ +# Copyright 2015 Google Inc. +# +# 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_v1beta2/service.rb' +require 'google/apis/dns_v1beta2/classes.rb' +require 'google/apis/dns_v1beta2/representations.rb' + +module Google + module Apis + # Cloud DNS API + # + # + # + # @see http://developers.google.com/cloud-dns + module DnsV1beta2 + VERSION = 'V1beta2' + REVISION = '20200709' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + 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 diff --git a/generated/google/apis/dns_v1beta2/classes.rb b/generated/google/apis/dns_v1beta2/classes.rb new file mode 100644 index 000000000..11b39f68d --- /dev/null +++ b/generated/google/apis/dns_v1beta2/classes.rb @@ -0,0 +1,1514 @@ +# Copyright 2015 Google Inc. +# +# 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 DnsV1beta2 + + # 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 ChangesListResponse + include Google::Apis::Core::Hashable + + # The requested changes. + # Corresponds to the JSON property `changes` + # @return [Array] + attr_accessor :changes + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to retrieve a "snapshot" of collections 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) + @header = args[:header] if args.key?(:header) + @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 will be used to sign subsequent changes to the ManagedZone. + # Inactive keys will still be 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 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, will be used to sign only + # resource record sets of type DNSKEY. Otherwise, the Secure Entry Point + # flag will be cleared and this key will be 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, will only be used to sign resource record sets of type DNSKEY. + # Zone signing keys do not have the Secure Entry Point flag set and will be + # 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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to retrieve a "snapshot" of collections 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) + @header = args[:header] if args.key?(:header) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + 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 + + # 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::DnsV1beta2::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::DnsV1beta2::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 will leave this field unset. + # 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::DnsV1beta2::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::DnsV1beta2::ManagedZonePrivateVisibilityConfig] + attr_accessor :private_visibility_config + + # The presence of this field indicates that this is a managed reverse + # lookup zone and Cloud DNS will resolve 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::DnsV1beta2::ManagedZoneReverseLookupConfig] + attr_accessor :reverse_lookup_config + + # Contains information about Service Directory-backed zones. + # Corresponds to the JSON property `serviceDirectoryConfig` + # @return [Google::Apis::DnsV1beta2::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) + @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 + + # + 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 will select 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 + + # Forwarding path for this NameServerTarget, if unset or set to DEFAULT, + # Cloud DNS will make forwarding decision based on address ranges, + # i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the + # Internet. When set to PRIVATE, Cloud DNS will always send queries + # through VPC 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 + + # + # 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) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class ManagedZoneOperationsListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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::DnsV1beta2::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 + + # + # 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) + @kind = args[:kind] if args.key?(:kind) + @networks = args[:networks] if args.key?(:networks) + 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. + # 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 + + # + 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::DnsV1beta2::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, 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. + # This should be formatted like + # 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 ManagedZonesListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # 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 + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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::DnsV1beta2::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::DnsV1beta2::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::DnsV1beta2::DnsKey] + attr_accessor :new_value + + # A DNSSEC key pair. + # Corresponds to the JSON property `oldValue` + # @return [Google::Apis::DnsV1beta2::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::DnsV1beta2::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::DnsV1beta2::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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # 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::DnsV1beta2::Policy] + attr_accessor :policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @header = args[:header] if args.key?(:header) + @policy = args[:policy] if args.key?(:policy) + end + end + + # + class PoliciesUpdateResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # 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::DnsV1beta2::Policy] + attr_accessor :policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @header = args[:header] if args.key?(:header) + @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::DnsV1beta2::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 + + # Allows networks bound to this policy to receive DNS queries sent by VMs or + # applications over VPN connections. When enabled, a virtual IP address will + # be allocated from each of the sub-networks 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) + @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 will make forwarding decision based on address ranges, + # i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the + # Internet. When set to PRIVATE, Cloud DNS will always send queries + # through VPC for this target + # Corresponds to the JSON property `forwardingPath` + # @return [String] + attr_accessor :forwarding_path + + # IPv4 address to forward to. + # Corresponds to the JSON property `ipv4Address` + # @return [String] + attr_accessor :ipv4_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) + @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::DnsV1beta2::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 + + # + # 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 + # network. + # Corresponds to the JSON property `managedZonesPerNetwork` + # @return [Fixnum] + attr_accessor :managed_zones_per_network + + # 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 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 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) + @kind = args[:kind] if args.key?(:kind) + @managed_zones = args[:managed_zones] if args.key?(:managed_zones) + @managed_zones_per_network = args[:managed_zones_per_network] if args.key?(:managed_zones_per_network) + @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) + @policies = args[:policies] if args.key?(:policies) + @resource_records_per_rrset = args[:resource_records_per_rrset] if args.key?(:resource_records_per_rrset) + @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 unit of data that will be 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 + + # 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) + @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 ResourceRecordSetsListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1beta2::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # Elements common to every response. + class ResponseHeader + include Google::Apis::Core::Hashable + + # For mutating operation requests that completed successfully. + # This is the client_operation_id if the client specified it, + # otherwise it is generated by the server (output only). + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operation_id = args[:operation_id] if args.key?(:operation_id) + end + end + end + end +end diff --git a/generated/google/apis/dns_v1beta2/representations.rb b/generated/google/apis/dns_v1beta2/representations.rb new file mode 100644 index 000000000..938bd8d8d --- /dev/null +++ b/generated/google/apis/dns_v1beta2/representations.rb @@ -0,0 +1,620 @@ +# Copyright 2015 Google Inc. +# +# 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 DnsV1beta2 + + class Change + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ChangesListResponse + 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 ManagedZone + 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 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 ManagedZonesListResponse + 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 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 ResourceRecordSet + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceRecordSetsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResponseHeader + 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::DnsV1beta2::ResourceRecordSet, decorator: Google::Apis::DnsV1beta2::ResourceRecordSet::Representation + + collection :deletions, as: 'deletions', class: Google::Apis::DnsV1beta2::ResourceRecordSet, decorator: Google::Apis::DnsV1beta2::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 ChangesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :changes, as: 'changes', class: Google::Apis::DnsV1beta2::Change, decorator: Google::Apis::DnsV1beta2::Change::Representation + + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::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::DnsV1beta2::DnsKeyDigest, decorator: Google::Apis::DnsV1beta2::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::DnsV1beta2::DnsKey, decorator: Google::Apis::DnsV1beta2::DnsKey::Representation + + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class ManagedZone + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_time, as: 'creationTime' + property :description, as: 'description' + property :dns_name, as: 'dnsName' + property :dnssec_config, as: 'dnssecConfig', class: Google::Apis::DnsV1beta2::ManagedZoneDnsSecConfig, decorator: Google::Apis::DnsV1beta2::ManagedZoneDnsSecConfig::Representation + + property :forwarding_config, as: 'forwardingConfig', class: Google::Apis::DnsV1beta2::ManagedZoneForwardingConfig, decorator: Google::Apis::DnsV1beta2::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::DnsV1beta2::ManagedZonePeeringConfig, decorator: Google::Apis::DnsV1beta2::ManagedZonePeeringConfig::Representation + + property :private_visibility_config, as: 'privateVisibilityConfig', class: Google::Apis::DnsV1beta2::ManagedZonePrivateVisibilityConfig, decorator: Google::Apis::DnsV1beta2::ManagedZonePrivateVisibilityConfig::Representation + + property :reverse_lookup_config, as: 'reverseLookupConfig', class: Google::Apis::DnsV1beta2::ManagedZoneReverseLookupConfig, decorator: Google::Apis::DnsV1beta2::ManagedZoneReverseLookupConfig::Representation + + property :service_directory_config, as: 'serviceDirectoryConfig', class: Google::Apis::DnsV1beta2::ManagedZoneServiceDirectoryConfig, decorator: Google::Apis::DnsV1beta2::ManagedZoneServiceDirectoryConfig::Representation + + property :visibility, as: 'visibility' + end + end + + class ManagedZoneDnsSecConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :default_key_specs, as: 'defaultKeySpecs', class: Google::Apis::DnsV1beta2::DnsKeySpec, decorator: Google::Apis::DnsV1beta2::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::DnsV1beta2::ManagedZoneForwardingConfigNameServerTarget, decorator: Google::Apis::DnsV1beta2::ManagedZoneForwardingConfigNameServerTarget::Representation + + end + end + + class ManagedZoneForwardingConfigNameServerTarget + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :forwarding_path, as: 'forwardingPath' + property :ipv4_address, as: 'ipv4Address' + property :kind, as: 'kind' + end + end + + class ManagedZoneOperationsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::DnsV1beta2::Operation, decorator: Google::Apis::DnsV1beta2::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::DnsV1beta2::ManagedZonePeeringConfigTargetNetwork, decorator: Google::Apis::DnsV1beta2::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 + property :kind, as: 'kind' + collection :networks, as: 'networks', class: Google::Apis::DnsV1beta2::ManagedZonePrivateVisibilityConfigNetwork, decorator: Google::Apis::DnsV1beta2::ManagedZonePrivateVisibilityConfigNetwork::Representation + + 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::DnsV1beta2::ManagedZoneServiceDirectoryConfigNamespace, decorator: Google::Apis::DnsV1beta2::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 ManagedZonesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::Representation + + property :kind, as: 'kind' + collection :managed_zones, as: 'managedZones', class: Google::Apis::DnsV1beta2::ManagedZone, decorator: Google::Apis::DnsV1beta2::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::DnsV1beta2::OperationDnsKeyContext, decorator: Google::Apis::DnsV1beta2::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::DnsV1beta2::OperationManagedZoneContext, decorator: Google::Apis::DnsV1beta2::OperationManagedZoneContext::Representation + + end + end + + class OperationDnsKeyContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_value, as: 'newValue', class: Google::Apis::DnsV1beta2::DnsKey, decorator: Google::Apis::DnsV1beta2::DnsKey::Representation + + property :old_value, as: 'oldValue', class: Google::Apis::DnsV1beta2::DnsKey, decorator: Google::Apis::DnsV1beta2::DnsKey::Representation + + end + end + + class OperationManagedZoneContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_value, as: 'newValue', class: Google::Apis::DnsV1beta2::ManagedZone, decorator: Google::Apis::DnsV1beta2::ManagedZone::Representation + + property :old_value, as: 'oldValue', class: Google::Apis::DnsV1beta2::ManagedZone, decorator: Google::Apis::DnsV1beta2::ManagedZone::Representation + + end + end + + class PoliciesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :policies, as: 'policies', class: Google::Apis::DnsV1beta2::Policy, decorator: Google::Apis::DnsV1beta2::Policy::Representation + + end + end + + class PoliciesPatchResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::Representation + + property :policy, as: 'policy', class: Google::Apis::DnsV1beta2::Policy, decorator: Google::Apis::DnsV1beta2::Policy::Representation + + end + end + + class PoliciesUpdateResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::Representation + + property :policy, as: 'policy', class: Google::Apis::DnsV1beta2::Policy, decorator: Google::Apis::DnsV1beta2::Policy::Representation + + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :alternative_name_server_config, as: 'alternativeNameServerConfig', class: Google::Apis::DnsV1beta2::PolicyAlternativeNameServerConfig, decorator: Google::Apis::DnsV1beta2::PolicyAlternativeNameServerConfig::Representation + + property :description, as: 'description' + 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::DnsV1beta2::PolicyNetwork, decorator: Google::Apis::DnsV1beta2::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::DnsV1beta2::PolicyAlternativeNameServerConfigTargetNameServer, decorator: Google::Apis::DnsV1beta2::PolicyAlternativeNameServerConfigTargetNameServer::Representation + + end + end + + class PolicyAlternativeNameServerConfigTargetNameServer + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :forwarding_path, as: 'forwardingPath' + property :ipv4_address, as: 'ipv4Address' + 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::DnsV1beta2::Quota, decorator: Google::Apis::DnsV1beta2::Quota::Representation + + end + end + + class Quota + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dns_keys_per_managed_zone, as: 'dnsKeysPerManagedZone' + property :kind, as: 'kind' + property :managed_zones, as: 'managedZones' + property :managed_zones_per_network, as: 'managedZonesPerNetwork' + property :networks_per_managed_zone, as: 'networksPerManagedZone' + property :networks_per_policy, as: 'networksPerPolicy' + property :policies, as: 'policies' + property :resource_records_per_rrset, as: 'resourceRecordsPerRrset' + 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::DnsV1beta2::DnsKeySpec, decorator: Google::Apis::DnsV1beta2::DnsKeySpec::Representation + + end + end + + class ResourceRecordSet + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :name, as: 'name' + collection :rrdatas, as: 'rrdatas' + collection :signature_rrdatas, as: 'signatureRrdatas' + property :ttl, as: 'ttl' + property :type, as: 'type' + end + end + + class ResourceRecordSetsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1beta2::ResponseHeader, decorator: Google::Apis::DnsV1beta2::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :rrsets, as: 'rrsets', class: Google::Apis::DnsV1beta2::ResourceRecordSet, decorator: Google::Apis::DnsV1beta2::ResourceRecordSet::Representation + + end + end + + class ResponseHeader + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :operation_id, as: 'operationId' + end + end + end + end +end diff --git a/generated/google/apis/dns_v1beta2/service.rb b/generated/google/apis/dns_v1beta2/service.rb new file mode 100644 index 000000000..5c5c9a675 --- /dev/null +++ b/generated/google/apis/dns_v1beta2/service.rb @@ -0,0 +1,928 @@ +# Copyright 2015 Google Inc. +# +# 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 DnsV1beta2 + # Cloud DNS API + # + # + # + # @example + # require 'google/apis/dns_v1beta2' + # + # Dns = Google::Apis::DnsV1beta2 # Alias the module + # service = Dns::DnsService.new + # + # @see http://developers.google.com/cloud-dns + class DnsService < Google::Apis::Core::BaseService + # @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('https://dns.googleapis.com/', '') + @batch_path = 'batch' + end + + # Atomically update 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::DnsV1beta2::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::DnsV1beta2::Change] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}/changes', options) + command.request_representation = Google::Apis::DnsV1beta2::Change::Representation + command.request_object = change_object + command.response_representation = Google::Apis::DnsV1beta2::Change::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Fetch 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::DnsV1beta2::Change] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}/changes/{changeId}', options) + command.response_representation = Google::Apis::DnsV1beta2::Change::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Enumerate 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 will decide 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::DnsV1beta2::ChangesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::ChangesListResponse] + # + # @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/v1beta2/projects/{project}/managedZones/{managedZone}/changes', options) + command.response_representation = Google::Apis::DnsV1beta2::ChangesListResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::ChangesListResponse + 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 + + # Fetch 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 will be + # 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::DnsV1beta2::DnsKey] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}', options) + command.response_representation = Google::Apis::DnsV1beta2::DnsKey::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Enumerate 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 will be + # computed and displayed. + # @param [Fixnum] max_results + # Optional. Maximum number of results to be returned. If unspecified, the + # server will decide 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::DnsV1beta2::DnsKeysListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}/dnsKeys', options) + command.response_representation = Google::Apis::DnsV1beta2::DnsKeysListResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Fetch 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. + # @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::DnsV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}/operations/{operation}', options) + command.response_representation = Google::Apis::DnsV1beta2::Operation::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Enumerate 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 will decide 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::DnsV1beta2::ManagedZoneOperationsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}/operations', options) + command.response_representation = Google::Apis::DnsV1beta2::ManagedZoneOperationsListResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Create a new ManagedZone. + # @param [String] project + # Identifies the project addressed by this request. + # @param [Google::Apis::DnsV1beta2::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::DnsV1beta2::ManagedZone] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones', options) + command.request_representation = Google::Apis::DnsV1beta2::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV1beta2::ManagedZone::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Delete 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/v1beta2/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 + + # Fetch 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::DnsV1beta2::ManagedZone] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}', options) + command.response_representation = Google::Apis::DnsV1beta2::ManagedZone::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Enumerate 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 will decide 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::DnsV1beta2::ManagedZonesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::ManagedZonesListResponse] + # + # @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/v1beta2/projects/{project}/managedZones', options) + command.response_representation = Google::Apis::DnsV1beta2::ManagedZonesListResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::ManagedZonesListResponse + 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 + + # Apply 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::DnsV1beta2::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::DnsV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}', options) + command.request_representation = Google::Apis::DnsV1beta2::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV1beta2::Operation::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Update 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::DnsV1beta2::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::DnsV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/managedZones/{managedZone}', options) + command.request_representation = Google::Apis::DnsV1beta2::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV1beta2::Operation::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Create a new Policy + # @param [String] project + # Identifies the project addressed by this request. + # @param [Google::Apis::DnsV1beta2::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::DnsV1beta2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/policies', options) + command.request_representation = Google::Apis::DnsV1beta2::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DnsV1beta2::Policy::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Delete a previously created Policy. Will fail 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/v1beta2/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 + + # Fetch 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::DnsV1beta2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/policies/{policy}', options) + command.response_representation = Google::Apis::DnsV1beta2::Policy::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Enumerate 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 will decide 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::DnsV1beta2::PoliciesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/policies', options) + command.response_representation = Google::Apis::DnsV1beta2::PoliciesListResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Apply 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::DnsV1beta2::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::DnsV1beta2::PoliciesPatchResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/policies/{policy}', options) + command.request_representation = Google::Apis::DnsV1beta2::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DnsV1beta2::PoliciesPatchResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Update 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::DnsV1beta2::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::DnsV1beta2::PoliciesUpdateResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}/policies/{policy}', options) + command.request_representation = Google::Apis::DnsV1beta2::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DnsV1beta2::PoliciesUpdateResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Fetch 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::DnsV1beta2::Project] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::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/v1beta2/projects/{project}', options) + command.response_representation = Google::Apis::DnsV1beta2::Project::Representation + command.response_class = Google::Apis::DnsV1beta2::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 + + # Enumerate ResourceRecordSets that have been 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 will decide how many results to return. + # @param [String] name + # Restricts the list to return only records with this fully qualified domain + # name. + # @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 + # Restricts the list to return only records of this type. If present, the + # "name" parameter must also be present. + # @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::DnsV1beta2::ResourceRecordSetsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1beta2::ResourceRecordSetsListResponse] + # + # @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/v1beta2/projects/{project}/managedZones/{managedZone}/rrsets', options) + command.response_representation = Google::Apis::DnsV1beta2::ResourceRecordSetsListResponse::Representation + command.response_class = Google::Apis::DnsV1beta2::ResourceRecordSetsListResponse + 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 + + 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 diff --git a/generated/google/apis/dns_v2beta1.rb b/generated/google/apis/dns_v2beta1.rb new file mode 100644 index 000000000..d1110b9ea --- /dev/null +++ b/generated/google/apis/dns_v2beta1.rb @@ -0,0 +1,43 @@ +# Copyright 2015 Google Inc. +# +# 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_v2beta1/service.rb' +require 'google/apis/dns_v2beta1/classes.rb' +require 'google/apis/dns_v2beta1/representations.rb' + +module Google + module Apis + # Cloud DNS API + # + # + # + # @see http://developers.google.com/cloud-dns + module DnsV2beta1 + VERSION = 'V2beta1' + REVISION = '20200709' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + 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 diff --git a/generated/google/apis/dns_v2beta1/classes.rb b/generated/google/apis/dns_v2beta1/classes.rb new file mode 100644 index 000000000..7b6c84629 --- /dev/null +++ b/generated/google/apis/dns_v2beta1/classes.rb @@ -0,0 +1,1447 @@ +# Copyright 2015 Google Inc. +# +# 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 DnsV2beta1 + + # 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 ChangesListResponse + include Google::Apis::Core::Hashable + + # The requested changes. + # Corresponds to the JSON property `changes` + # @return [Array] + attr_accessor :changes + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to retrieve a "snapshot" of collections 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) + @header = args[:header] if args.key?(:header) + @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 will be used to sign subsequent changes to the ManagedZone. + # Inactive keys will still be 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 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, will be used to sign only + # resource record sets of type DNSKEY. Otherwise, the Secure Entry Point + # flag will be cleared and this key will be 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, will only be used to sign resource record sets of type DNSKEY. + # Zone signing keys do not have the Secure Entry Point flag set and will be + # 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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to retrieve a "snapshot" of collections 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) + @header = args[:header] if args.key?(:header) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + 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 + + # 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::DnsV2beta1::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::DnsV2beta1::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 will leave this field unset. + # 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::DnsV2beta1::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::DnsV2beta1::ManagedZonePrivateVisibilityConfig] + attr_accessor :private_visibility_config + + # The presence of this field indicates that this is a managed reverse + # lookup zone and Cloud DNS will resolve 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::DnsV2beta1::ManagedZoneReverseLookupConfig] + attr_accessor :reverse_lookup_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) + @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) + @visibility = args[:visibility] if args.key?(:visibility) + 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 will select 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 + + # Forwarding path for this NameServerTarget, if unset or set to DEFAULT, + # Cloud DNS will make forwarding decision based on address ranges, + # i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the + # Internet. When set to PRIVATE, Cloud DNS will always send queries + # through VPC 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 + + # + # 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) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class ManagedZoneOperationsListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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::DnsV2beta1::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 + + # + # 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) + @kind = args[:kind] if args.key?(:kind) + @networks = args[:networks] if args.key?(:networks) + 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. + # 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 + + # + 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 + + # + class ManagedZonesListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # 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 + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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::DnsV2beta1::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::DnsV2beta1::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::DnsV2beta1::DnsKey] + attr_accessor :new_value + + # A DNSSEC key pair. + # Corresponds to the JSON property `oldValue` + # @return [Google::Apis::DnsV2beta1::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::DnsV2beta1::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::DnsV2beta1::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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # 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::DnsV2beta1::Policy] + attr_accessor :policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @header = args[:header] if args.key?(:header) + @policy = args[:policy] if args.key?(:policy) + end + end + + # + class PoliciesUpdateResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # 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::DnsV2beta1::Policy] + attr_accessor :policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @header = args[:header] if args.key?(:header) + @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::DnsV2beta1::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 + + # Allows networks bound to this policy to receive DNS queries sent by VMs or + # applications over VPN connections. When enabled, a virtual IP address will + # be allocated from each of the sub-networks 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) + @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 will make forwarding decision based on address ranges, + # i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the + # Internet. When set to PRIVATE, Cloud DNS will always send queries + # through VPC for this target + # Corresponds to the JSON property `forwardingPath` + # @return [String] + attr_accessor :forwarding_path + + # IPv4 address to forward to. + # Corresponds to the JSON property `ipv4Address` + # @return [String] + attr_accessor :ipv4_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) + @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::DnsV2beta1::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 + + # + # 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 + # network. + # Corresponds to the JSON property `managedZonesPerNetwork` + # @return [Fixnum] + attr_accessor :managed_zones_per_network + + # 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 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 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) + @kind = args[:kind] if args.key?(:kind) + @managed_zones = args[:managed_zones] if args.key?(:managed_zones) + @managed_zones_per_network = args[:managed_zones_per_network] if args.key?(:managed_zones_per_network) + @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) + @policies = args[:policies] if args.key?(:policies) + @resource_records_per_rrset = args[:resource_records_per_rrset] if args.key?(:resource_records_per_rrset) + @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 unit of data that will be 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 + + # 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) + @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 ResourceRecordSetsListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV2beta1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results + # following your last page of results in pagination order. To fetch them, + # make another list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections 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 will be an inconsistent view of the collection. There is + # no way to 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) + @header = args[:header] if args.key?(:header) + @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 + + # Elements common to every response. + class ResponseHeader + include Google::Apis::Core::Hashable + + # For mutating operation requests that completed successfully. + # This is the client_operation_id if the client specified it, + # otherwise it is generated by the server (output only). + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operation_id = args[:operation_id] if args.key?(:operation_id) + end + end + end + end +end diff --git a/generated/google/apis/dns_v2beta1/representations.rb b/generated/google/apis/dns_v2beta1/representations.rb new file mode 100644 index 000000000..13d2dd94b --- /dev/null +++ b/generated/google/apis/dns_v2beta1/representations.rb @@ -0,0 +1,588 @@ +# Copyright 2015 Google Inc. +# +# 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 DnsV2beta1 + + class Change + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ChangesListResponse + 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 ManagedZone + 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 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 ManagedZonesListResponse + 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 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 ResourceRecordSet + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceRecordSetsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResponseHeader + 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::DnsV2beta1::ResourceRecordSet, decorator: Google::Apis::DnsV2beta1::ResourceRecordSet::Representation + + collection :deletions, as: 'deletions', class: Google::Apis::DnsV2beta1::ResourceRecordSet, decorator: Google::Apis::DnsV2beta1::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 ChangesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :changes, as: 'changes', class: Google::Apis::DnsV2beta1::Change, decorator: Google::Apis::DnsV2beta1::Change::Representation + + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::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::DnsV2beta1::DnsKeyDigest, decorator: Google::Apis::DnsV2beta1::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::DnsV2beta1::DnsKey, decorator: Google::Apis::DnsV2beta1::DnsKey::Representation + + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class ManagedZone + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_time, as: 'creationTime' + property :description, as: 'description' + property :dns_name, as: 'dnsName' + property :dnssec_config, as: 'dnssecConfig', class: Google::Apis::DnsV2beta1::ManagedZoneDnsSecConfig, decorator: Google::Apis::DnsV2beta1::ManagedZoneDnsSecConfig::Representation + + property :forwarding_config, as: 'forwardingConfig', class: Google::Apis::DnsV2beta1::ManagedZoneForwardingConfig, decorator: Google::Apis::DnsV2beta1::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::DnsV2beta1::ManagedZonePeeringConfig, decorator: Google::Apis::DnsV2beta1::ManagedZonePeeringConfig::Representation + + property :private_visibility_config, as: 'privateVisibilityConfig', class: Google::Apis::DnsV2beta1::ManagedZonePrivateVisibilityConfig, decorator: Google::Apis::DnsV2beta1::ManagedZonePrivateVisibilityConfig::Representation + + property :reverse_lookup_config, as: 'reverseLookupConfig', class: Google::Apis::DnsV2beta1::ManagedZoneReverseLookupConfig, decorator: Google::Apis::DnsV2beta1::ManagedZoneReverseLookupConfig::Representation + + property :visibility, as: 'visibility' + end + end + + class ManagedZoneDnsSecConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :default_key_specs, as: 'defaultKeySpecs', class: Google::Apis::DnsV2beta1::DnsKeySpec, decorator: Google::Apis::DnsV2beta1::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::DnsV2beta1::ManagedZoneForwardingConfigNameServerTarget, decorator: Google::Apis::DnsV2beta1::ManagedZoneForwardingConfigNameServerTarget::Representation + + end + end + + class ManagedZoneForwardingConfigNameServerTarget + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :forwarding_path, as: 'forwardingPath' + property :ipv4_address, as: 'ipv4Address' + property :kind, as: 'kind' + end + end + + class ManagedZoneOperationsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::DnsV2beta1::Operation, decorator: Google::Apis::DnsV2beta1::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::DnsV2beta1::ManagedZonePeeringConfigTargetNetwork, decorator: Google::Apis::DnsV2beta1::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 + property :kind, as: 'kind' + collection :networks, as: 'networks', class: Google::Apis::DnsV2beta1::ManagedZonePrivateVisibilityConfigNetwork, decorator: Google::Apis::DnsV2beta1::ManagedZonePrivateVisibilityConfigNetwork::Representation + + 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 ManagedZonesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::Representation + + property :kind, as: 'kind' + collection :managed_zones, as: 'managedZones', class: Google::Apis::DnsV2beta1::ManagedZone, decorator: Google::Apis::DnsV2beta1::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::DnsV2beta1::OperationDnsKeyContext, decorator: Google::Apis::DnsV2beta1::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::DnsV2beta1::OperationManagedZoneContext, decorator: Google::Apis::DnsV2beta1::OperationManagedZoneContext::Representation + + end + end + + class OperationDnsKeyContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_value, as: 'newValue', class: Google::Apis::DnsV2beta1::DnsKey, decorator: Google::Apis::DnsV2beta1::DnsKey::Representation + + property :old_value, as: 'oldValue', class: Google::Apis::DnsV2beta1::DnsKey, decorator: Google::Apis::DnsV2beta1::DnsKey::Representation + + end + end + + class OperationManagedZoneContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_value, as: 'newValue', class: Google::Apis::DnsV2beta1::ManagedZone, decorator: Google::Apis::DnsV2beta1::ManagedZone::Representation + + property :old_value, as: 'oldValue', class: Google::Apis::DnsV2beta1::ManagedZone, decorator: Google::Apis::DnsV2beta1::ManagedZone::Representation + + end + end + + class PoliciesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :policies, as: 'policies', class: Google::Apis::DnsV2beta1::Policy, decorator: Google::Apis::DnsV2beta1::Policy::Representation + + end + end + + class PoliciesPatchResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::Representation + + property :policy, as: 'policy', class: Google::Apis::DnsV2beta1::Policy, decorator: Google::Apis::DnsV2beta1::Policy::Representation + + end + end + + class PoliciesUpdateResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::Representation + + property :policy, as: 'policy', class: Google::Apis::DnsV2beta1::Policy, decorator: Google::Apis::DnsV2beta1::Policy::Representation + + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :alternative_name_server_config, as: 'alternativeNameServerConfig', class: Google::Apis::DnsV2beta1::PolicyAlternativeNameServerConfig, decorator: Google::Apis::DnsV2beta1::PolicyAlternativeNameServerConfig::Representation + + property :description, as: 'description' + 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::DnsV2beta1::PolicyNetwork, decorator: Google::Apis::DnsV2beta1::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::DnsV2beta1::PolicyAlternativeNameServerConfigTargetNameServer, decorator: Google::Apis::DnsV2beta1::PolicyAlternativeNameServerConfigTargetNameServer::Representation + + end + end + + class PolicyAlternativeNameServerConfigTargetNameServer + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :forwarding_path, as: 'forwardingPath' + property :ipv4_address, as: 'ipv4Address' + 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::DnsV2beta1::Quota, decorator: Google::Apis::DnsV2beta1::Quota::Representation + + end + end + + class Quota + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dns_keys_per_managed_zone, as: 'dnsKeysPerManagedZone' + property :kind, as: 'kind' + property :managed_zones, as: 'managedZones' + property :managed_zones_per_network, as: 'managedZonesPerNetwork' + property :networks_per_managed_zone, as: 'networksPerManagedZone' + property :networks_per_policy, as: 'networksPerPolicy' + property :policies, as: 'policies' + property :resource_records_per_rrset, as: 'resourceRecordsPerRrset' + 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::DnsV2beta1::DnsKeySpec, decorator: Google::Apis::DnsV2beta1::DnsKeySpec::Representation + + end + end + + class ResourceRecordSet + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :name, as: 'name' + collection :rrdatas, as: 'rrdatas' + collection :signature_rrdatas, as: 'signatureRrdatas' + property :ttl, as: 'ttl' + property :type, as: 'type' + end + end + + class ResourceRecordSetsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV2beta1::ResponseHeader, decorator: Google::Apis::DnsV2beta1::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :rrsets, as: 'rrsets', class: Google::Apis::DnsV2beta1::ResourceRecordSet, decorator: Google::Apis::DnsV2beta1::ResourceRecordSet::Representation + + end + end + + class ResponseHeader + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :operation_id, as: 'operationId' + end + end + end + end +end diff --git a/generated/google/apis/dns_v2beta1/service.rb b/generated/google/apis/dns_v2beta1/service.rb new file mode 100644 index 000000000..85b7a9584 --- /dev/null +++ b/generated/google/apis/dns_v2beta1/service.rb @@ -0,0 +1,928 @@ +# Copyright 2015 Google Inc. +# +# 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 DnsV2beta1 + # Cloud DNS API + # + # + # + # @example + # require 'google/apis/dns_v2beta1' + # + # Dns = Google::Apis::DnsV2beta1 # Alias the module + # service = Dns::DnsService.new + # + # @see http://developers.google.com/cloud-dns + class DnsService < Google::Apis::Core::BaseService + # @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('https://dns.googleapis.com/', '') + @batch_path = 'batch' + end + + # Atomically update 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::DnsV2beta1::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::DnsV2beta1::Change] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}/changes', options) + command.request_representation = Google::Apis::DnsV2beta1::Change::Representation + command.request_object = change_object + command.response_representation = Google::Apis::DnsV2beta1::Change::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Fetch 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::DnsV2beta1::Change] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}/changes/{changeId}', options) + command.response_representation = Google::Apis::DnsV2beta1::Change::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Enumerate 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 will decide 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::DnsV2beta1::ChangesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::ChangesListResponse] + # + # @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/v2beta1/projects/{project}/managedZones/{managedZone}/changes', options) + command.response_representation = Google::Apis::DnsV2beta1::ChangesListResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::ChangesListResponse + 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 + + # Fetch 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 will be + # 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::DnsV2beta1::DnsKey] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}', options) + command.response_representation = Google::Apis::DnsV2beta1::DnsKey::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Enumerate 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 will be + # computed and displayed. + # @param [Fixnum] max_results + # Optional. Maximum number of results to be returned. If unspecified, the + # server will decide 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::DnsV2beta1::DnsKeysListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}/dnsKeys', options) + command.response_representation = Google::Apis::DnsV2beta1::DnsKeysListResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Fetch 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. + # @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::DnsV2beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}/operations/{operation}', options) + command.response_representation = Google::Apis::DnsV2beta1::Operation::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Enumerate 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 will decide 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::DnsV2beta1::ManagedZoneOperationsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}/operations', options) + command.response_representation = Google::Apis::DnsV2beta1::ManagedZoneOperationsListResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Create a new ManagedZone. + # @param [String] project + # Identifies the project addressed by this request. + # @param [Google::Apis::DnsV2beta1::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::DnsV2beta1::ManagedZone] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones', options) + command.request_representation = Google::Apis::DnsV2beta1::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV2beta1::ManagedZone::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Delete 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/v2beta1/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 + + # Fetch 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::DnsV2beta1::ManagedZone] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}', options) + command.response_representation = Google::Apis::DnsV2beta1::ManagedZone::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Enumerate 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 will decide 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::DnsV2beta1::ManagedZonesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::ManagedZonesListResponse] + # + # @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/v2beta1/projects/{project}/managedZones', options) + command.response_representation = Google::Apis::DnsV2beta1::ManagedZonesListResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::ManagedZonesListResponse + 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 + + # Apply 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::DnsV2beta1::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::DnsV2beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}', options) + command.request_representation = Google::Apis::DnsV2beta1::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV2beta1::Operation::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Update 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::DnsV2beta1::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::DnsV2beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/managedZones/{managedZone}', options) + command.request_representation = Google::Apis::DnsV2beta1::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV2beta1::Operation::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Create a new Policy + # @param [String] project + # Identifies the project addressed by this request. + # @param [Google::Apis::DnsV2beta1::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::DnsV2beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/policies', options) + command.request_representation = Google::Apis::DnsV2beta1::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DnsV2beta1::Policy::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Delete a previously created Policy. Will fail 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/v2beta1/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 + + # Fetch 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::DnsV2beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/policies/{policy}', options) + command.response_representation = Google::Apis::DnsV2beta1::Policy::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Enumerate 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 will decide 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::DnsV2beta1::PoliciesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/policies', options) + command.response_representation = Google::Apis::DnsV2beta1::PoliciesListResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Apply 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::DnsV2beta1::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::DnsV2beta1::PoliciesPatchResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/policies/{policy}', options) + command.request_representation = Google::Apis::DnsV2beta1::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DnsV2beta1::PoliciesPatchResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Update 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::DnsV2beta1::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::DnsV2beta1::PoliciesUpdateResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}/policies/{policy}', options) + command.request_representation = Google::Apis::DnsV2beta1::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DnsV2beta1::PoliciesUpdateResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Fetch 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::DnsV2beta1::Project] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::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/v2beta1/projects/{project}', options) + command.response_representation = Google::Apis::DnsV2beta1::Project::Representation + command.response_class = Google::Apis::DnsV2beta1::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 + + # Enumerate ResourceRecordSets that have been 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 will decide how many results to return. + # @param [String] name + # Restricts the list to return only records with this fully qualified domain + # name. + # @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 + # Restricts the list to return only records of this type. If present, the + # "name" parameter must also be present. + # @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::DnsV2beta1::ResourceRecordSetsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV2beta1::ResourceRecordSetsListResponse] + # + # @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/v2beta1/projects/{project}/managedZones/{managedZone}/rrsets', options) + command.response_representation = Google::Apis::DnsV2beta1::ResourceRecordSetsListResponse::Representation + command.response_class = Google::Apis::DnsV2beta1::ResourceRecordSetsListResponse + 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 + + 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 diff --git a/generated/google/apis/memcache_v1beta2.rb b/generated/google/apis/memcache_v1beta2.rb index 35fdf59cc..e026b1dbe 100644 --- a/generated/google/apis/memcache_v1beta2.rb +++ b/generated/google/apis/memcache_v1beta2.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/memorystore/ module MemcacheV1beta2 VERSION = 'V1beta2' - REVISION = '20200608' + REVISION = '20200714' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/memcache_v1beta2/classes.rb b/generated/google/apis/memcache_v1beta2/classes.rb index affa642eb..bca37ebbb 100644 --- a/generated/google/apis/memcache_v1beta2/classes.rb +++ b/generated/google/apis/memcache_v1beta2/classes.rb @@ -826,7 +826,7 @@ module Google include Google::Apis::Core::Hashable # The full name of the Google Compute Engine - # [network](/compute/docs/networks-and-firewalls#networks) to which the + # [network](https://cloud.google.com/vpc/docs/vpc) to which the # instance is connected. If left unspecified, the `default` network # will be used. # Corresponds to the JSON property `authorizedNetwork` diff --git a/generated/google/apis/reseller_v1.rb b/generated/google/apis/reseller_v1.rb index 89f8e60f0..23c80302c 100644 --- a/generated/google/apis/reseller_v1.rb +++ b/generated/google/apis/reseller_v1.rb @@ -18,14 +18,15 @@ require 'google/apis/reseller_v1/representations.rb' module Google module Apis - # Enterprise Apps Reseller API + # Google Apps Reseller API # - # Creates and manages your customers and their subscriptions. + # Perform common functions that are available on the Google Apps Reseller + # Console at scale like placing orders and viewing customer information # # @see https://developers.google.com/google-apps/reseller/ module ResellerV1 VERSION = 'V1' - REVISION = '20191008' + REVISION = '20200627' # Manage users on your domain AUTH_APPS_ORDER = 'https://www.googleapis.com/auth/apps.order' diff --git a/generated/google/apis/reseller_v1/classes.rb b/generated/google/apis/reseller_v1/classes.rb index 3dc896b99..47549f2d3 100644 --- a/generated/google/apis/reseller_v1/classes.rb +++ b/generated/google/apis/reseller_v1/classes.rb @@ -27,7 +27,8 @@ module Google include Google::Apis::Core::Hashable # A customer's physical address. An address can be composed of one to three - # lines. The addressline2 and addressLine3 are optional. + # lines. The addressline2 and addressLine3 are + # optional. # Corresponds to the JSON property `addressLine1` # @return [String] attr_accessor :address_line1 @@ -47,19 +48,23 @@ module Google # @return [String] attr_accessor :contact_name - # For countryCode information, see the ISO 3166 country code elements. Verify - # that country is approved for resale of Google products. This property is - # required when creating a new customer. + # For countryCode information, see the ISO 3166 country code + # elements. Verify that country is approved for resale + # of Google products. This property is required when creating a new customer. # Corresponds to the JSON property `countryCode` # @return [String] attr_accessor :country_code - # Identifies the resource as a customer address. Value: customers#address + # Identifies the resource as a customer address. Value: + # customers#address # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind - # An example of a locality value is the city of San Francisco. + # An example of a locality value is the city of San + # Francisco. # Corresponds to the JSON property `locality` # @return [String] attr_accessor :locality @@ -69,13 +74,14 @@ module Google # @return [String] attr_accessor :organization_name - # A postalCode example is a postal zip code such as 94043. This property is - # required when creating a new customer. + # A postalCode example is a postal zip code such as + # 94043. This property is required when creating a new customer. # Corresponds to the JSON property `postalCode` # @return [String] attr_accessor :postal_code - # An example of a region value is CA for the state of California. + # An example of a region value is CA for the state + # of California. # Corresponds to the JSON property `region` # @return [String] attr_accessor :region @@ -103,41 +109,44 @@ module Google class ChangePlanRequest include Google::Apis::Core::Hashable - # Google-issued code (100 char max) for discounted pricing on subscription plans. - # Deal code must be included in changePlan request in order to receive - # discounted rate. This property is optional. If a deal code has already been - # added to a subscription, this property may be left empty and the existing - # discounted rate will still apply (if not empty, only provide the deal code - # that is already present on the subscription). If a deal code has never been - # added to a subscription and this property is left blank, regular pricing will - # apply. + # Google-issued code (100 char max) for discounted pricing on subscription + # plans. Deal code must be included in changePlan request in + # order to receive discounted rate. This property is optional. If a deal code + # has already been added to a subscription, this property may be left empty + # and the existing discounted rate will still apply (if not empty, only + # provide the deal code that is already present on the subscription). If a + # deal code has never been added to a subscription and this property is left + # blank, regular pricing will apply. # Corresponds to the JSON property `dealCode` # @return [String] attr_accessor :deal_code # Identifies the resource as a subscription change plan request. Value: - # subscriptions#changePlanRequest + # subscriptions#changePlanRequest # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind - # The planName property is required. This is the name of the subscription's - # payment plan. For more information about the Google payment plans, see API - # concepts. - # Possible values are: - # - ANNUAL_MONTHLY_PAY - The annual commitment plan with monthly payments - # Caution: ANNUAL_MONTHLY_PAY is returned as ANNUAL in all API responses. - # - ANNUAL_YEARLY_PAY - The annual commitment plan with yearly payments - # - FLEXIBLE - The flexible plan - # - TRIAL - The 30-day free trial plan + # The planName property is required. This is the name of the + # subscription's payment plan. For more information about the Google payment + # plans, see API + # concepts.

Possible values are:
  • + # ANNUAL_MONTHLY_PAY - The annual commitment plan with monthly + # payments
  • ANNUAL_YEARLY_PAY - + # The annual commitment plan with yearly payments
  • + # FLEXIBLE - The flexible plan
  • TRIAL - + # The 30-day free trial plan
# Corresponds to the JSON property `planName` # @return [String] attr_accessor :plan_name # This is an optional property. This purchase order (PO) information is for - # resellers to use for their company tracking usage. If a purchaseOrderId value - # is given it appears in the API responses and shows up in the invoice. The - # property accepts up to 80 plain text characters. + # resellers to use for their company tracking usage. If a + # purchaseOrderId value is given it appears in the API responses + # and shows up in the invoice. The property accepts up to 80 plain text + # characters. # Corresponds to the JSON property `purchaseOrderId` # @return [String] attr_accessor :purchase_order_id @@ -165,17 +174,18 @@ module Google class Customer include Google::Apis::Core::Hashable - # Like the "Customer email" in the reseller tools, this email is the secondary - # contact used if something happens to the customer's service such as service - # outage or a security issue. This property is required when creating a new - # customer and should not use the same domain as customerDomain. + # Like the "Customer email" in the reseller tools, this email is + # the secondary contact used if something happens to the + # customer's service such as service outage or a security issue. This + # property is required when creating a new customer and should not use the + # same domain as customerDomain. # Corresponds to the JSON property `alternateEmail` # @return [String] attr_accessor :alternate_email - # The customer's primary domain name string. customerDomain is required when - # creating a new customer. Do not include the www prefix in the domain when - # adding a customer. + # The customer's primary domain name string. customerDomain is + # required when creating a new customer. Do not include the www + # prefix in the domain when adding a customer. # Corresponds to the JSON property `customerDomain` # @return [String] attr_accessor :customer_domain @@ -186,21 +196,25 @@ module Google attr_accessor :customer_domain_verified alias_method :customer_domain_verified?, :customer_domain_verified - # This property will always be returned in a response as the unique identifier - # generated by Google. In a request, this property can be either the primary - # domain or the unique identifier generated by Google. + # This property will always be returned in a response as the unique + # identifier generated by Google. In a request, this property can be either + # the primary domain or the unique identifier generated by Google. # Corresponds to the JSON property `customerId` # @return [String] attr_accessor :customer_id - # Identifies the resource as a customer. Value: reseller#customer + # Identifies the resource as a customer. Value: + # reseller#customer # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Customer contact phone number. Must start with "+" followed by the country # code. The rest of the number can be contiguous numbers or respect the phone - # local format conventions, but it must be a real phone number and not, for + # local + # format conventions, but it must be a real phone number and not, for # example, "123". This field is silently ignored if invalid. # Corresponds to the JSON property `phoneNumber` # @return [String] @@ -211,9 +225,9 @@ module Google # @return [Google::Apis::ResellerV1::Address] attr_accessor :postal_address - # URL to customer's Admin console dashboard. The read-only URL is generated by - # the API service. This is used if your client application requires the customer - # to complete a task in the Admin console. + # URL to customer's Admin console dashboard. The read-only URL is + # generated by the API service. This is used if your client application + # requires the customer to complete a task in the Admin console. # Corresponds to the JSON property `resourceUiUrl` # @return [String] attr_accessor :resource_ui_url @@ -240,14 +254,17 @@ module Google include Google::Apis::Core::Hashable # Identifies the resource as a subscription renewal setting. Value: - # subscriptions#renewalSettings + # subscriptions#renewalSettings # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind - # Renewal settings for the annual commitment plan. For more detailed information, - # see renewal options in the administrator help center. When renewing a - # subscription, the renewalType is a required property. + # Renewal settings for the annual commitment plan. For more detailed + # information, see renewal options in the administrator + # help center. When renewing a subscription, the renewalType + # is a required property. # Corresponds to the JSON property `renewalType` # @return [String] attr_accessor :renewal_type @@ -311,37 +328,42 @@ module Google class Seats include Google::Apis::Core::Hashable - # Identifies the resource as a subscription seat setting. Value: subscriptions# - # seats + # Identifies the resource as a subscription seat setting. Value: + # subscriptions#seats # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind # Read-only field containing the current number of users that are assigned a - # license for the product defined in skuId. This field's value is equivalent to - # the numerical count of users returned by the Enterprise License Manager API - # method: listForProductAndSku + # license for the product defined in skuId. This + # field's value is equivalent to the numerical count of users returned by the + # Enterprise License Manager API method: listForProductAndSku # Corresponds to the JSON property `licensedNumberOfSeats` # @return [Fixnum] attr_accessor :licensed_number_of_seats - # This is a required property and is exclusive to subscriptions with FLEXIBLE or - # TRIAL plans. This property sets the maximum number of licensed users allowed - # on a subscription. This quantity can be increased up to the maximum limit - # defined in the reseller's contract. The minimum quantity is the current number - # of users in the customer account. Note: G Suite subscriptions automatically - # assign a license to every user. + # This is a required property and is exclusive to subscriptions with + # FLEXIBLE or TRIAL plans. This property sets the + # maximum number of licensed users allowed on a subscription. This quantity + # can be increased up to the maximum limit defined in the + # reseller's contract. The minimum quantity is the current number of users in + # the customer account. # Corresponds to the JSON property `maximumNumberOfSeats` # @return [Fixnum] attr_accessor :maximum_number_of_seats # This is a required property and is exclusive to subscriptions with - # ANNUAL_MONTHLY_PAY and ANNUAL_YEARLY_PAY plans. This property sets the maximum - # number of licenses assignable to users on a subscription. The reseller can add - # more licenses, but once set, the numberOfSeats cannot be reduced until renewal. - # The reseller is invoiced based on the numberOfSeats value regardless of how - # many of these user licenses are assigned. Note: G Suite subscriptions - # automatically assign a license to every user. + # ANNUAL_MONTHLY_PAY and ANNUAL_YEARLY_PAY plans. + # This property sets the maximum number of licenses assignable to users on a + # subscription. The reseller can add more licenses, but once set, the + # numberOfSeats cannot be reduced until renewal. The reseller is + # invoiced based on the numberOfSeats value regardless of how + # many of these user licenses are assigned. # Corresponds to the JSON property `numberOfSeats` # @return [Fixnum] attr_accessor :number_of_seats @@ -368,8 +390,9 @@ module Google # @return [String] attr_accessor :billing_method - # The creationTime property is the date when subscription was created. It is in - # milliseconds using the Epoch format. See an example Epoch converter. + # The creationTime property is the date when subscription was + # created. It is in milliseconds using the Epoch format. See an example Epoch converter. # Corresponds to the JSON property `creationTime` # @return [Fixnum] attr_accessor :creation_time @@ -379,36 +402,41 @@ module Google # @return [String] attr_accessor :customer_domain - # This property will always be returned in a response as the unique identifier - # generated by Google. In a request, this property can be either the primary - # domain or the unique identifier generated by Google. + # This property will always be returned in a response as the unique + # identifier generated by Google. In a request, this property can be either + # the primary domain or the unique identifier generated by Google. # Corresponds to the JSON property `customerId` # @return [String] attr_accessor :customer_id - # Google-issued code (100 char max) for discounted pricing on subscription plans. - # Deal code must be included in insert requests in order to receive discounted - # rate. This property is optional, regular pricing applies if left empty. + # Google-issued code (100 char max) for discounted pricing on subscription + # plans. Deal code must be included in insert requests in order + # to receive discounted rate. This property is optional, regular pricing + # applies if left empty. # Corresponds to the JSON property `dealCode` # @return [String] attr_accessor :deal_code - # Identifies the resource as a Subscription. Value: reseller#subscription + # Identifies the resource as a Subscription. Value: + # reseller#subscription # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind - # The plan property is required. In this version of the API, the G Suite plans - # are the flexible plan, annual commitment plan, and the 30-day free trial plan. - # For more information about the API"s payment plans, see the API concepts. + # The plan property is required. In this version of the API, the + # G Suite plans are the flexible plan, annual commitment plan, and the 30-day + # free trial plan. For more information about the API"s payment plans, + # see the API + # concepts. # Corresponds to the JSON property `plan` # @return [Google::Apis::ResellerV1::Subscription::Plan] attr_accessor :plan # This is an optional property. This purchase order (PO) information is for - # resellers to use for their company tracking usage. If a purchaseOrderId value - # is given it appears in the API responses and shows up in the invoice. The - # property accepts up to 80 plain text characters. + # resellers to use for their company tracking usage. If a + # purchaseOrderId value is given it appears in the API responses + # and shows up in the invoice. The property accepts up to 80 plain text + # characters. # Corresponds to the JSON property `purchaseOrderId` # @return [String] attr_accessor :purchase_order_id @@ -418,10 +446,10 @@ module Google # @return [Google::Apis::ResellerV1::RenewalSettings] attr_accessor :renewal_settings - # URL to customer's Subscriptions page in the Admin console. The read-only URL - # is generated by the API service. This is used if your client application - # requires the customer to complete a task using the Subscriptions page in the - # Admin console. + # URL to customer's Subscriptions page in the Admin console. The + # read-only URL is generated by the API service. This is used if your client + # application requires the customer to complete a task using the + # Subscriptions page in the Admin console. # Corresponds to the JSON property `resourceUiUrl` # @return [String] attr_accessor :resource_ui_url @@ -431,17 +459,20 @@ module Google # @return [Google::Apis::ResellerV1::Seats] attr_accessor :seats - # A required property. The skuId is a unique system identifier for a product's - # SKU assigned to a customer in the subscription. For products and SKUs - # available in this version of the API, see Product and SKU IDs. + # A required property. The skuId is a unique system identifier + # for a product's SKU assigned to a customer in the subscription. For + # products and SKUs available in this version of the API, see Product and SKU + # IDs. # Corresponds to the JSON property `skuId` # @return [String] attr_accessor :sku_id - # Read-only external display name for a product's SKU assigned to a customer in - # the subscription. SKU names are subject to change at Google's discretion. For - # products and SKUs available in this version of the API, see Product and SKU - # IDs. + # Read-only external display name for a product's SKU assigned to a + # customer in the subscription. SKU names are subject to change at + # Google's discretion. For products and SKUs available in this version of + # the API, see + # Product and SKU IDs. # Corresponds to the JSON property `skuName` # @return [String] attr_accessor :sku_name @@ -451,40 +482,48 @@ module Google # @return [String] attr_accessor :status - # The subscriptionId is the subscription identifier and is unique for each - # customer. This is a required property. Since a subscriptionId changes when a - # subscription is updated, we recommend not using this ID as a key for - # persistent data. Use the subscriptionId as described in retrieve all reseller - # subscriptions. + # The subscriptionId is the subscription identifier and is + # unique for each customer. This is a required property. Since a + # subscriptionId changes when a subscription is updated, we + # recommend not using this ID as a key for persistent data. Use the + # subscriptionId as described in retrieve + # all reseller subscriptions. # Corresponds to the JSON property `subscriptionId` # @return [String] attr_accessor :subscription_id - # Read-only field containing an enumerable of all the current suspension reasons - # for a subscription. It is possible for a subscription to have many concurrent, - # overlapping suspension reasons. A subscription's STATUS is SUSPENDED until all - # pending suspensions are removed. - # Possible options include: - # - PENDING_TOS_ACCEPTANCE - The customer has not logged in and accepted the G - # Suite Resold Terms of Services. - # - RENEWAL_WITH_TYPE_CANCEL - The customer's commitment ended and their service - # was cancelled at the end of their term. - # - RESELLER_INITIATED - A manual suspension invoked by a Reseller. - # - TRIAL_ENDED - The customer's trial expired without a plan selected. - # - OTHER - The customer is suspended for an internal Google reason (e.g. abuse - # or otherwise). + # Read-only field containing an enumerable of all the current suspension + # reasons for a subscription. It is possible for a subscription to have many + # concurrent, overlapping suspension reasons. A + # subscription's STATUS is SUSPENDED until all + # pending suspensions are removed.

Possible options include:
    + #
  • PENDING_TOS_ACCEPTANCE - The customer has not logged in + # and accepted the G Suite Resold Terms of Services.
  • + # RENEWAL_WITH_TYPE_CANCEL - The customer's commitment ended and + # their service was cancelled at the end of their term. + #
  • RESELLER_INITIATED - A manual suspension invoked by + # a Reseller.
  • TRIAL_ENDED - The + # customer's trial expired without a plan selected.
  • + # OTHER - The customer is suspended for an internal Google + # reason (e.g. abuse or otherwise).
# Corresponds to the JSON property `suspensionReasons` # @return [Array] attr_accessor :suspension_reasons # Read-only transfer related information for the subscription. For more - # information, see retrieve transferable subscriptions for a customer. + # information, see retrieve + # transferable subscriptions for a customer. # Corresponds to the JSON property `transferInfo` # @return [Google::Apis::ResellerV1::Subscription::TransferInfo] attr_accessor :transfer_info # The G Suite annual commitment and flexible payment plans can be in a 30-day - # free trial. For more information, see the API concepts. + # free trial. For more information, see the API concepts. # Corresponds to the JSON property `trialSettings` # @return [Google::Apis::ResellerV1::Subscription::TrialSettings] attr_accessor :trial_settings @@ -515,42 +554,52 @@ module Google @trial_settings = args[:trial_settings] if args.key?(:trial_settings) end - # The plan property is required. In this version of the API, the G Suite plans - # are the flexible plan, annual commitment plan, and the 30-day free trial plan. - # For more information about the API"s payment plans, see the API concepts. + # The plan property is required. In this version of the API, the + # G Suite plans are the flexible plan, annual commitment plan, and the 30-day + # free trial plan. For more information about the API"s payment plans, + # see the API + # concepts. class Plan include Google::Apis::Core::Hashable - # In this version of the API, annual commitment plan's interval is one year. - # Note: When billingMethod value is OFFLINE, the subscription property object - # plan.commitmentInterval is omitted in all API responses. + # In this version of the API, annual commitment plan's interval is one + # year. # Corresponds to the JSON property `commitmentInterval` # @return [Google::Apis::ResellerV1::Subscription::Plan::CommitmentInterval] attr_accessor :commitment_interval - # The isCommitmentPlan property's boolean value identifies the plan as an annual - # commitment plan: - # - true — The subscription's plan is an annual commitment plan. - # - false — The plan is not an annual commitment plan. + # The isCommitmentPlan property's boolean value identifies + # the plan as an annual commitment plan:
  • true — + # The subscription's plan is an annual commitment + # plan.
  • false — The plan is not an annual + # commitment plan.
# Corresponds to the JSON property `isCommitmentPlan` # @return [Boolean] attr_accessor :is_commitment_plan alias_method :is_commitment_plan?, :is_commitment_plan - # The planName property is required. This is the name of the subscription's plan. - # For more information about the Google payment plans, see the API concepts. - # Possible values are: - # - ANNUAL_MONTHLY_PAY — The annual commitment plan with monthly payments. - # Caution: ANNUAL_MONTHLY_PAY is returned as ANNUAL in all API responses. - # - ANNUAL_YEARLY_PAY — The annual commitment plan with yearly payments - # - FLEXIBLE — The flexible plan - # - TRIAL — The 30-day free trial plan. A subscription in trial will be - # suspended after the 30th free day if no payment plan is assigned. Calling - # changePlan will assign a payment plan to a trial but will not activate the - # plan. A trial will automatically begin its assigned payment plan after its - # 30th free day or immediately after calling startPaidService. - # - FREE — The free plan is exclusive to the Cloud Identity SKU and does not - # incur any billing. + # The planName property is required. This is the name of the + # subscription's plan. For more information about the Google payment + # plans, see the API concepts. + #

Possible values are:
  • ANNUAL_MONTHLY_PAY + # — The annual commitment plan with monthly payments.
  • + # ANNUAL_YEARLY_PAY — The annual commitment plan with + # yearly payments
  • FLEXIBLE — The flexible + # plan
  • TRIAL — The 30-day free trial plan. A + # subscription in trial will be suspended after the 30th free day if no + # payment plan is assigned. Calling changePlan will assign a + # payment plan to a trial but will not activate the plan. A trial will + # automatically begin its assigned payment plan after its 30th free day or + # immediately after calling startPaidService.
  • + # FREE — The free plan is exclusive to the Cloud + # Identity SKU and does not incur any billing.
# Corresponds to the JSON property `planName` # @return [String] attr_accessor :plan_name @@ -566,20 +615,24 @@ module Google @plan_name = args[:plan_name] if args.key?(:plan_name) end - # In this version of the API, annual commitment plan's interval is one year. - # Note: When billingMethod value is OFFLINE, the subscription property object - # plan.commitmentInterval is omitted in all API responses. + # In this version of the API, annual commitment plan's interval is one + # year. class CommitmentInterval include Google::Apis::Core::Hashable - # An annual commitment plan's interval's endTime in milliseconds using the UNIX - # Epoch format. See an example Epoch converter. + # An annual commitment plan's interval's endTime in + # milliseconds using the UNIX Epoch format. See an example Epoch converter. # Corresponds to the JSON property `endTime` # @return [Fixnum] attr_accessor :end_time - # An annual commitment plan's interval's startTime in milliseconds using UNIX - # Epoch format. See an example Epoch converter. + # An annual commitment plan's interval's startTime in + # milliseconds using UNIX Epoch format. See an example Epoch converter. # Corresponds to the JSON property `startTime` # @return [Fixnum] attr_accessor :start_time @@ -597,20 +650,23 @@ module Google end # Read-only transfer related information for the subscription. For more - # information, see retrieve transferable subscriptions for a customer. + # information, see retrieve + # transferable subscriptions for a customer. class TransferInfo include Google::Apis::Core::Hashable - # When inserting a subscription, this is the minimum number of seats listed in - # the transfer order for this product. For example, if the customer has 20 users, - # the reseller cannot place a transfer order of 15 seats. The minimum is 20 - # seats. + # When inserting a subscription, this is the minimum number of seats listed + # in the transfer order for this product. For example, if the customer has + # 20 users, the reseller cannot place a transfer order of 15 seats. The + # minimum is 20 seats. # Corresponds to the JSON property `minimumTransferableSeats` # @return [Fixnum] attr_accessor :minimum_transferable_seats - # The time when transfer token or intent to transfer will expire. The time is in - # milliseconds using UNIX Epoch format. + # The time when transfer token or intent to transfer will expire. The time + # is in milliseconds using UNIX Epoch format. # Corresponds to the JSON property `transferabilityExpirationTime` # @return [Fixnum] attr_accessor :transferability_expiration_time @@ -627,20 +683,23 @@ module Google end # The G Suite annual commitment and flexible payment plans can be in a 30-day - # free trial. For more information, see the API concepts. + # free trial. For more information, see the API concepts. class TrialSettings include Google::Apis::Core::Hashable - # Determines if a subscription's plan is in a 30-day free trial or not: - # - true — The plan is in trial. - # - false — The plan is not in trial. + # Determines if a subscription's plan is in a 30-day free trial or + # not:
  • true — The plan is in + # trial.
  • false — The plan is not in + # trial.
# Corresponds to the JSON property `isInTrial` # @return [Boolean] attr_accessor :is_in_trial alias_method :is_in_trial?, :is_in_trial - # Date when the trial ends. The value is in milliseconds using the UNIX Epoch - # format. See an example Epoch converter. + # Date when the trial ends. The value is in milliseconds using the UNIX + # Epoch format. See an example Epoch converter. # Corresponds to the JSON property `trialEndTime` # @return [Fixnum] attr_accessor :trial_end_time @@ -661,14 +720,14 @@ module Google class Subscriptions include Google::Apis::Core::Hashable - # Identifies the resource as a collection of subscriptions. Value: reseller# - # subscriptions + # Identifies the resource as a collection of subscriptions. Value: + # reseller#subscriptions # Corresponds to the JSON property `kind` # @return [String] attr_accessor :kind - # The continuation token, used to page through large result sets. Provide this - # value in a subsequent request to return the next page of results. + # The continuation token, used to page through large result sets. Provide + # this value in a subsequent request to return the next page of results. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token diff --git a/generated/google/apis/reseller_v1/service.rb b/generated/google/apis/reseller_v1/service.rb index 0a18fb7f1..ce67eab2d 100644 --- a/generated/google/apis/reseller_v1/service.rb +++ b/generated/google/apis/reseller_v1/service.rb @@ -20,9 +20,10 @@ require 'google/apis/errors' module Google module Apis module ResellerV1 - # Enterprise Apps Reseller API + # Google Apps Reseller API # - # Creates and manages your customers and their subscriptions. + # Perform common functions that are available on the Google Apps Reseller + # Console at scale like placing orders and viewing customer information # # @example # require 'google/apis/reseller_v1' @@ -38,32 +39,27 @@ module Google attr_accessor :key # @return [String] - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. + # 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 - # @return [String] - # Deprecated. Please use quotaUser instead. - attr_accessor :user_ip - def initialize - super('https://www.googleapis.com/', 'apps/reseller/v1/') + super('https://www.googleapis.com/', '') @batch_path = 'batch/reseller/v1' end # Get a customer account. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -76,32 +72,31 @@ module Google # @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_customer(customer_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:get, 'customers/{customerId}', options) + def get_customer(customer_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'apps/reseller/v1/customers/{customerId}', options) command.response_representation = Google::Apis::ResellerV1::Customer::Representation command.response_class = Google::Apis::ResellerV1::Customer command.params['customerId'] = customer_id unless customer_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Order a new customer's account. # @param [Google::Apis::ResellerV1::Customer] customer_object # @param [String] customer_auth_token - # The customerAuthToken query string is required when creating a resold account - # that transfers a direct customer's subscription or transfers another reseller - # customer's subscription to your reseller management. This is a hexadecimal - # authentication token needed to complete the subscription transfer. For more - # information, see the administrator help center. + # The customerAuthToken query string is required when creating a + # resold account that transfers a direct customer's subscription or + # transfers another reseller customer's subscription to your reseller + # management. This is a hexadecimal authentication token needed to complete + # the subscription transfer. For more information, see the administrator + # help center. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -114,8 +109,8 @@ module Google # @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 insert_customer(customer_object = nil, customer_auth_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers', options) + def insert_customer(customer_object = nil, customer_auth_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers', options) command.request_representation = Google::Apis::ResellerV1::Customer::Representation command.request_object = customer_object command.response_representation = Google::Apis::ResellerV1::Customer::Representation @@ -123,24 +118,22 @@ module Google command.query['customerAuthToken'] = customer_auth_token unless customer_auth_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end - # Update a customer account's settings. This method supports patch semantics. + # Patch a customer account's settings via Apiary Patch Orchestration # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [Google::Apis::ResellerV1::Customer] customer_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -153,8 +146,8 @@ module Google # @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_customer(customer_id, customer_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:patch, 'customers/{customerId}', options) + def patch_customer(customer_id, customer_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'apps/reseller/v1/customers/{customerId}', options) command.request_representation = Google::Apis::ResellerV1::Customer::Representation command.request_object = customer_object command.response_representation = Google::Apis::ResellerV1::Customer::Representation @@ -162,24 +155,22 @@ module Google command.params['customerId'] = customer_id unless customer_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Update a customer account's settings. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [Google::Apis::ResellerV1::Customer] customer_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -192,8 +183,8 @@ module Google # @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_customer(customer_id, customer_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:put, 'customers/{customerId}', options) + def update_customer(customer_id, customer_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'apps/reseller/v1/customers/{customerId}', options) command.request_representation = Google::Apis::ResellerV1::Customer::Representation command.request_object = customer_object command.response_representation = Google::Apis::ResellerV1::Customer::Representation @@ -201,7 +192,6 @@ module Google command.params['customerId'] = customer_id unless customer_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end @@ -209,10 +199,8 @@ module Google # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -225,13 +213,12 @@ module Google # @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 getwatchdetails_resellernotify(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:get, 'resellernotify/getwatchdetails', options) + def getwatchdetails_resellernotify(fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'apps/reseller/v1/resellernotify/getwatchdetails', options) command.response_representation = Google::Apis::ResellerV1::ResellernotifyGetwatchdetailsResponse::Representation command.response_class = Google::Apis::ResellerV1::ResellernotifyGetwatchdetailsResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end @@ -241,10 +228,8 @@ module Google # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -257,14 +242,13 @@ module Google # @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 register_resellernotify(service_account_email_address: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'resellernotify/register', options) + def register_resellernotify(service_account_email_address: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/resellernotify/register', options) command.response_representation = Google::Apis::ResellerV1::ResellernotifyResource::Representation command.response_class = Google::Apis::ResellerV1::ResellernotifyResource command.query['serviceAccountEmailAddress'] = service_account_email_address unless service_account_email_address.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end @@ -274,10 +258,8 @@ module Google # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -290,36 +272,37 @@ module Google # @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 unregister_resellernotify(service_account_email_address: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'resellernotify/unregister', options) + def unregister_resellernotify(service_account_email_address: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/resellernotify/unregister', options) command.response_representation = Google::Apis::ResellerV1::ResellernotifyResource::Representation command.response_class = Google::Apis::ResellerV1::ResellernotifyResource command.query['serviceAccountEmailAddress'] = service_account_email_address unless service_account_email_address.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Activates a subscription previously suspended by the reseller # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -332,15 +315,14 @@ module Google # @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 activate_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers/{customerId}/subscriptions/{subscriptionId}/activate', options) + def activate_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/activate', options) command.response_representation = Google::Apis::ResellerV1::Subscription::Representation command.response_class = Google::Apis::ResellerV1::Subscription command.params['customerId'] = customer_id unless customer_id.nil? command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end @@ -348,24 +330,26 @@ module Google # trial or a flexible plan subscription to an annual commitment plan with # monthly or yearly payments. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [Google::Apis::ResellerV1::ChangePlanRequest] change_plan_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -378,8 +362,8 @@ module Google # @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 change_subscription_plan(customer_id, subscription_id, change_plan_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers/{customerId}/subscriptions/{subscriptionId}/changePlan', options) + def change_subscription_plan(customer_id, subscription_id, change_plan_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan', options) command.request_representation = Google::Apis::ResellerV1::ChangePlanRequest::Representation command.request_object = change_plan_request_object command.response_representation = Google::Apis::ResellerV1::Subscription::Representation @@ -388,31 +372,32 @@ module Google command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end - # Update a user license's renewal settings. This is applicable for accounts with - # annual commitment plans only. + # Update a user license's renewal settings. This is applicable for + # accounts with annual commitment plans only. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [Google::Apis::ResellerV1::RenewalSettings] renewal_settings_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -425,8 +410,8 @@ module Google # @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 change_subscription_renewal_settings(customer_id, subscription_id, renewal_settings_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers/{customerId}/subscriptions/{subscriptionId}/changeRenewalSettings', options) + def change_subscription_renewal_settings(customer_id, subscription_id, renewal_settings_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changeRenewalSettings', options) command.request_representation = Google::Apis::ResellerV1::RenewalSettings::Representation command.request_object = renewal_settings_object command.response_representation = Google::Apis::ResellerV1::Subscription::Representation @@ -435,30 +420,31 @@ module Google command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end - # Update a subscription's user license settings. + # Update a subscription's user license settings. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [Google::Apis::ResellerV1::Seats] seats_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -471,8 +457,8 @@ module Google # @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 change_subscription_seats(customer_id, subscription_id, seats_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers/{customerId}/subscriptions/{subscriptionId}/changeSeats', options) + def change_subscription_seats(customer_id, subscription_id, seats_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changeSeats', options) command.request_representation = Google::Apis::ResellerV1::Seats::Representation command.request_object = seats_object command.response_representation = Google::Apis::ResellerV1::Subscription::Representation @@ -481,32 +467,33 @@ module Google command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Cancel, suspend, or transfer a subscription to direct. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [String] deletion_type - # The deletionType query string enables the cancellation, downgrade, or - # suspension of a subscription. + # The deletionType query string enables the cancellation, + # downgrade, or suspension of a subscription. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -519,36 +506,37 @@ module Google # @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_subscription(customer_id, subscription_id, deletion_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:delete, 'customers/{customerId}/subscriptions/{subscriptionId}', options) + def delete_subscription(customer_id, subscription_id, deletion_type, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}', options) command.params['customerId'] = customer_id unless customer_id.nil? command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['deletionType'] = deletion_type unless deletion_type.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Get a specific subscription. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -561,38 +549,39 @@ module Google # @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_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:get, 'customers/{customerId}/subscriptions/{subscriptionId}', options) + def get_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}', options) command.response_representation = Google::Apis::ResellerV1::Subscription::Representation command.response_class = Google::Apis::ResellerV1::Subscription command.params['customerId'] = customer_id unless customer_id.nil? command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Create or transfer a subscription. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [Google::Apis::ResellerV1::Subscription] subscription_object # @param [String] customer_auth_token - # The customerAuthToken query string is required when creating a resold account - # that transfers a direct customer's subscription or transfers another reseller - # customer's subscription to your reseller management. This is a hexadecimal + # The customerAuthToken query string is required when creating a + # resold account that transfers a direct + # customer's subscription or transfers another reseller customer's + # subscription to your reseller management. This is a hexadecimal # authentication token needed to complete the subscription transfer. For more - # information, see the administrator help center. + # information, see the administrator + # help center. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -605,8 +594,8 @@ module Google # @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 insert_subscription(customer_id, subscription_object = nil, customer_auth_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers/{customerId}/subscriptions', options) + def insert_subscription(customer_id, subscription_object = nil, customer_auth_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions', options) command.request_representation = Google::Apis::ResellerV1::Subscription::Representation command.request_object = subscription_object command.response_representation = Google::Apis::ResellerV1::Subscription::Representation @@ -615,45 +604,51 @@ module Google command.query['customerAuthToken'] = customer_auth_token unless customer_auth_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # List of subscriptions managed by the reseller. The list can be all - # subscriptions, all of a customer's subscriptions, or all of a customer's - # transferable subscriptions. + # subscriptions, all of a customer's subscriptions, or all of a + # customer's transferable subscriptions. # @param [String] customer_auth_token - # The customerAuthToken query string is required when creating a resold account - # that transfers a direct customer's subscription or transfers another reseller - # customer's subscription to your reseller management. This is a hexadecimal + # The customerAuthToken query string is required when creating a + # resold account that transfers a direct + # customer's subscription or transfers another reseller customer's + # subscription to your reseller management. This is a hexadecimal # authentication token needed to complete the subscription transfer. For more - # information, see the administrator help center. + # information, see the administrator + # help center. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] customer_name_prefix - # When retrieving all of your subscriptions and filtering for specific customers, - # you can enter a prefix for a customer name. Using an example customer group - # that includes exam.com, example20.com and example.com: - # - exa -- Returns all customer names that start with 'exa' which could include - # exam.com, example20.com, and example.com. A name prefix is similar to using a - # regular expression's asterisk, exa*. - # - example -- Returns example20.com and example.com. + # When retrieving all of your subscriptions and filtering for specific + # customers, you can enter a prefix for a customer name. Using an example + # customer group that includes exam.com, + # example20.com and example.com: + #
    + #
  • exa -- Returns all customer names that start with + # 'exa' which could include exam.com, + # example20.com, and example.com. A name prefix is + # similar to using a regular expression's asterisk, exa*.
  • + #
  • example -- Returns example20.com and + # example.com.
  • + #
# @param [Fixnum] max_results - # When retrieving a large list, the maxResults is the maximum number of results - # per page. The nextPageToken value takes you to the next page. The default is - # 20. + # When retrieving a large list, the maxResults is the maximum + # number of results per page. The nextPageToken value takes you + # to the next page. The default is 20. # @param [String] page_token # Token to specify next page in the list # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -666,8 +661,8 @@ module Google # @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_subscriptions(customer_auth_token: nil, customer_id: nil, customer_name_prefix: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:get, 'subscriptions', options) + def list_subscriptions(customer_auth_token: nil, customer_id: nil, customer_name_prefix: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'apps/reseller/v1/subscriptions', options) command.response_representation = Google::Apis::ResellerV1::Subscriptions::Representation command.response_class = Google::Apis::ResellerV1::Subscriptions command.query['customerAuthToken'] = customer_auth_token unless customer_auth_token.nil? @@ -677,30 +672,31 @@ module Google 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? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Immediately move a 30-day free trial subscription to a paid service # subscription. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -713,37 +709,38 @@ module Google # @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 start_subscription_paid_service(customer_id, subscription_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers/{customerId}/subscriptions/{subscriptionId}/startPaidService', options) + def start_subscription_paid_service(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/startPaidService', options) command.response_representation = Google::Apis::ResellerV1::Subscription::Representation command.response_class = Google::Apis::ResellerV1::Subscription command.params['customerId'] = customer_id unless customer_id.nil? command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Suspends an active subscription. # @param [String] customer_id - # Either the customer's primary domain name or the customer's unique identifier. - # If using the domain name, we do not recommend using a customerId as a key for - # persistent data. If the domain name for a customerId is changed, the Google - # system automatically updates. + # Either the customer's primary domain name or the customer's unique + # identifier. If using the domain name, we do not recommend using a + # customerId as a key for persistent data. If the domain name + # for a customerId is changed, the Google system automatically + # updates. # @param [String] subscription_id - # This is a required property. The subscriptionId is the subscription identifier - # and is unique for each customer. Since a subscriptionId changes when a - # subscription is updated, we recommend to not use this ID as a key for - # persistent data. And the subscriptionId can be found using the retrieve all - # reseller subscriptions method. + # This is a required property. The subscriptionId is the + # subscription identifier and is unique for each customer. Since a + # subscriptionId changes when a subscription is updated, we + # recommend to not use this ID as a key for persistent data. And the + # subscriptionId can be found using the retrieve + # all reseller subscriptions method. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user - # An opaque string that represents a user for quota purposes. Must not exceed 40 - # characters. - # @param [String] user_ip - # Deprecated. Please use quotaUser instead. + # 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 # @@ -756,15 +753,14 @@ module Google # @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 suspend_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'customers/{customerId}/subscriptions/{subscriptionId}/suspend', options) + def suspend_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/suspend', options) command.response_representation = Google::Apis::ResellerV1::Subscription::Representation command.response_class = Google::Apis::ResellerV1::Subscription command.params['customerId'] = customer_id unless customer_id.nil? command.params['subscriptionId'] = subscription_id unless subscription_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end @@ -773,7 +769,6 @@ module Google def apply_command_defaults(command) command.query['key'] = key unless key.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['userIp'] = user_ip unless user_ip.nil? end end end diff --git a/generated/google/apis/servicecontrol_v1.rb b/generated/google/apis/servicecontrol_v1.rb index dc9ef7f2f..a95ca009a 100644 --- a/generated/google/apis/servicecontrol_v1.rb +++ b/generated/google/apis/servicecontrol_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/service-control/ module ServicecontrolV1 VERSION = 'V1' - REVISION = '20200619' + REVISION = '20200715' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/servicecontrol_v1/classes.rb b/generated/google/apis/servicecontrol_v1/classes.rb index 9f673d34b..eca2515c5 100644 --- a/generated/google/apis/servicecontrol_v1/classes.rb +++ b/generated/google/apis/servicecontrol_v1/classes.rb @@ -213,8 +213,8 @@ module Google # The name of the service method or operation. # For API calls, this should be the name of the API method. # For example, - # "google.datastore.v1.Datastore.RunQuery" - # "google.logging.v1.LoggingService.DeleteLog" + # "google.cloud.bigquery.v2.TableService.InsertTable" + # "google.logging.v2.ConfigServiceV2.CreateSink" # Corresponds to the JSON property `methodName` # @return [String] attr_accessor :method_name @@ -248,8 +248,8 @@ module Google # The resource or collection that is the target of the operation. # The name is a scheme-less URI, not including the API service name. # For example: - # "shelves/SHELF_ID/books" - # "shelves/SHELF_ID/books/BOOK_ID" + # "projects/PROJECT_ID/zones/us-central1-a/instances" + # "projects/PROJECT_ID/datasets/DATASET_ID" # Corresponds to the JSON property `resourceName` # @return [String] attr_accessor :resource_name @@ -275,7 +275,7 @@ module Google # @return [Hash] attr_accessor :response - # Deprecated, use `metadata` field instead. + # Deprecated. Use the `metadata` field instead. # Other service-specific data about the request, response, and other # activities. # Corresponds to the JSON property `serviceData` @@ -283,7 +283,7 @@ module Google attr_accessor :service_data # The name of the API service performing the operation. For example, - # `"datastore.googleapis.com"`. + # `"compute.googleapis.com"`. # Corresponds to the JSON property `serviceName` # @return [String] attr_accessor :service_name