Cloud DNS API . policies

Instance Methods

close()

Close httplib2 connections.

create(project, body=None, clientOperationId=None, x__xgafv=None)

Creates a new Policy.

delete(project, policy, clientOperationId=None, x__xgafv=None)

Deletes a previously created Policy. Fails if the policy is still being referenced by a network.

get(project, policy, clientOperationId=None, x__xgafv=None)

Fetches the representation of an existing Policy.

list(project, maxResults=None, pageToken=None, x__xgafv=None)

Enumerates all Policies associated with a project.

list_next()

Retrieves the next page of results.

patch(project, policy, body=None, clientOperationId=None, x__xgafv=None)

Applies a partial update to an existing Policy.

update(project, policy, body=None, clientOperationId=None, x__xgafv=None)

Updates an existing Policy.

Method Details

close()
Close httplib2 connections.
create(project, body=None, clientOperationId=None, x__xgafv=None)
Creates a new Policy.

Args:
  project: string, Identifies the project addressed by this request. (required)
  body: object, The request body.
    The object takes the form of:

{ # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
  "alternativeNameServerConfig": { # 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.
    "kind": "dns#policyAlternativeNameServerConfig",
    "targetNameServers": [ # 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.
      {
        "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
        "ipv4Address": "A String", # IPv4 address to forward queries to.
        "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
        "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
      },
    ],
  },
  "description": "A String", # 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.
  "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
  "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
  "id": "A String", # Unique identifier for the resource; defined by the server (output only).
  "kind": "dns#policy",
  "name": "A String", # User-assigned name for this policy.
  "networks": [ # List of network names specifying networks to which this policy is applied.
    {
      "kind": "dns#policyNetwork",
      "networkUrl": "A String", # 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}
    },
  ],
}

  clientOperationId: string, For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
  "alternativeNameServerConfig": { # 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.
    "kind": "dns#policyAlternativeNameServerConfig",
    "targetNameServers": [ # 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.
      {
        "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
        "ipv4Address": "A String", # IPv4 address to forward queries to.
        "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
        "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
      },
    ],
  },
  "description": "A String", # 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.
  "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
  "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
  "id": "A String", # Unique identifier for the resource; defined by the server (output only).
  "kind": "dns#policy",
  "name": "A String", # User-assigned name for this policy.
  "networks": [ # List of network names specifying networks to which this policy is applied.
    {
      "kind": "dns#policyNetwork",
      "networkUrl": "A String", # 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}
    },
  ],
}
delete(project, policy, clientOperationId=None, x__xgafv=None)
Deletes a previously created Policy. Fails if the policy is still being referenced by a network.

Args:
  project: string, Identifies the project addressed by this request. (required)
  policy: string, User given friendly name of the policy addressed by this request. (required)
  clientOperationId: string, For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format
get(project, policy, clientOperationId=None, x__xgafv=None)
Fetches the representation of an existing Policy.

Args:
  project: string, Identifies the project addressed by this request. (required)
  policy: string, User given friendly name of the policy addressed by this request. (required)
  clientOperationId: string, For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
  "alternativeNameServerConfig": { # 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.
    "kind": "dns#policyAlternativeNameServerConfig",
    "targetNameServers": [ # 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.
      {
        "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
        "ipv4Address": "A String", # IPv4 address to forward queries to.
        "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
        "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
      },
    ],
  },
  "description": "A String", # 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.
  "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
  "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
  "id": "A String", # Unique identifier for the resource; defined by the server (output only).
  "kind": "dns#policy",
  "name": "A String", # User-assigned name for this policy.
  "networks": [ # List of network names specifying networks to which this policy is applied.
    {
      "kind": "dns#policyNetwork",
      "networkUrl": "A String", # 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}
    },
  ],
}
list(project, maxResults=None, pageToken=None, x__xgafv=None)
Enumerates all Policies associated with a project.

Args:
  project: string, Identifies the project addressed by this request. (required)
  maxResults: integer, Optional. Maximum number of results to be returned. If unspecified, the server decides how many results to return.
  pageToken: string, Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    {
  "header": { # Elements common to every response.
    "operationId": "A String", # 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).
  },
  "kind": "dns#policiesListResponse", # Type of resource.
  "nextPageToken": "A String", # 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. This lets you 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 are an inconsistent view of the collection. You cannot retrieve a consistent snapshot of a collection larger than the maximum page size.
  "policies": [ # The policy resources.
    { # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
      "alternativeNameServerConfig": { # 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.
        "kind": "dns#policyAlternativeNameServerConfig",
        "targetNameServers": [ # 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.
          {
            "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
            "ipv4Address": "A String", # IPv4 address to forward queries to.
            "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
            "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
          },
        ],
      },
      "description": "A String", # 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.
      "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
      "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
      "id": "A String", # Unique identifier for the resource; defined by the server (output only).
      "kind": "dns#policy",
      "name": "A String", # User-assigned name for this policy.
      "networks": [ # List of network names specifying networks to which this policy is applied.
        {
          "kind": "dns#policyNetwork",
          "networkUrl": "A String", # 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}
        },
      ],
    },
  ],
}
list_next()
Retrieves the next page of results.

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

        Returns:
          A request object that you can call 'execute()' on to request the next
          page. Returns None if there are no more items in the collection.
        
patch(project, policy, body=None, clientOperationId=None, x__xgafv=None)
Applies a partial update to an existing Policy.

Args:
  project: string, Identifies the project addressed by this request. (required)
  policy: string, User given friendly name of the policy addressed by this request. (required)
  body: object, The request body.
    The object takes the form of:

{ # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
  "alternativeNameServerConfig": { # 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.
    "kind": "dns#policyAlternativeNameServerConfig",
    "targetNameServers": [ # 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.
      {
        "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
        "ipv4Address": "A String", # IPv4 address to forward queries to.
        "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
        "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
      },
    ],
  },
  "description": "A String", # 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.
  "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
  "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
  "id": "A String", # Unique identifier for the resource; defined by the server (output only).
  "kind": "dns#policy",
  "name": "A String", # User-assigned name for this policy.
  "networks": [ # List of network names specifying networks to which this policy is applied.
    {
      "kind": "dns#policyNetwork",
      "networkUrl": "A String", # 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}
    },
  ],
}

  clientOperationId: string, For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    {
  "header": { # Elements common to every response.
    "operationId": "A String", # 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).
  },
  "policy": { # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
    "alternativeNameServerConfig": { # 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.
      "kind": "dns#policyAlternativeNameServerConfig",
      "targetNameServers": [ # 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.
        {
          "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
          "ipv4Address": "A String", # IPv4 address to forward queries to.
          "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
          "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
        },
      ],
    },
    "description": "A String", # 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.
    "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
    "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
    "id": "A String", # Unique identifier for the resource; defined by the server (output only).
    "kind": "dns#policy",
    "name": "A String", # User-assigned name for this policy.
    "networks": [ # List of network names specifying networks to which this policy is applied.
      {
        "kind": "dns#policyNetwork",
        "networkUrl": "A String", # 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}
      },
    ],
  },
}
update(project, policy, body=None, clientOperationId=None, x__xgafv=None)
Updates an existing Policy.

Args:
  project: string, Identifies the project addressed by this request. (required)
  policy: string, User given friendly name of the policy addressed by this request. (required)
  body: object, The request body.
    The object takes the form of:

{ # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
  "alternativeNameServerConfig": { # 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.
    "kind": "dns#policyAlternativeNameServerConfig",
    "targetNameServers": [ # 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.
      {
        "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
        "ipv4Address": "A String", # IPv4 address to forward queries to.
        "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
        "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
      },
    ],
  },
  "description": "A String", # 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.
  "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
  "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
  "id": "A String", # Unique identifier for the resource; defined by the server (output only).
  "kind": "dns#policy",
  "name": "A String", # User-assigned name for this policy.
  "networks": [ # List of network names specifying networks to which this policy is applied.
    {
      "kind": "dns#policyNetwork",
      "networkUrl": "A String", # 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}
    },
  ],
}

  clientOperationId: string, For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    {
  "header": { # Elements common to every response.
    "operationId": "A String", # 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).
  },
  "policy": { # A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
    "alternativeNameServerConfig": { # 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.
      "kind": "dns#policyAlternativeNameServerConfig",
      "targetNameServers": [ # 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.
        {
          "forwardingPath": "A String", # Forwarding path for this TargetNameServer. If unset or set to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go to the internet. When set to PRIVATE, Cloud DNS always sends queries through the VPC network for this target.
          "ipv4Address": "A String", # IPv4 address to forward queries to.
          "ipv6Address": "A String", # IPv6 address to forward to. Does not accept both fields (ipv4 & ipv6) being populated. Public preview as of November 2022.
          "kind": "dns#policyAlternativeNameServerConfigTargetNameServer",
        },
      ],
    },
    "description": "A String", # 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.
    "enableInboundForwarding": True or False, # Allows networks bound to this policy to receive DNS queries sent by VMs or applications over VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks that are bound to this policy.
    "enableLogging": True or False, # Controls whether logging is enabled for the networks bound to this policy. Defaults to no logging if not set.
    "id": "A String", # Unique identifier for the resource; defined by the server (output only).
    "kind": "dns#policy",
    "name": "A String", # User-assigned name for this policy.
    "networks": [ # List of network names specifying networks to which this policy is applied.
      {
        "kind": "dns#policyNetwork",
        "networkUrl": "A String", # 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}
      },
    ],
  },
}