Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
6 contributors

Users who have contributed to this file

@jasdel @lsegal @xibz @bpot @JordonPhillips @euank
15352 lines (13577 sloc) 584 KB
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package route53
import (
"fmt"
"time"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
"github.com/aws/aws-sdk-go/private/protocol"
"github.com/aws/aws-sdk-go/private/protocol/restxml"
)
const opAssociateVPCWithHostedZone = "AssociateVPCWithHostedZone"
// AssociateVPCWithHostedZoneRequest generates a "aws/request.Request" representing the
// client's request for the AssociateVPCWithHostedZone operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See AssociateVPCWithHostedZone for more information on using the AssociateVPCWithHostedZone
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the AssociateVPCWithHostedZoneRequest method.
// req, resp := client.AssociateVPCWithHostedZoneRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/AssociateVPCWithHostedZone
func (c *Route53) AssociateVPCWithHostedZoneRequest(input *AssociateVPCWithHostedZoneInput) (req *request.Request, output *AssociateVPCWithHostedZoneOutput) {
op := &request.Operation{
Name: opAssociateVPCWithHostedZone,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/hostedzone/{Id}/associatevpc",
}
if input == nil {
input = &AssociateVPCWithHostedZoneInput{}
}
output = &AssociateVPCWithHostedZoneOutput{}
req = c.newRequest(op, input, output)
return
}
// AssociateVPCWithHostedZone API operation for Amazon Route 53.
//
// Associates an Amazon VPC with a private hosted zone.
//
// To perform the association, the VPC and the private hosted zone must already
// exist. You can't convert a public hosted zone into a private hosted zone.
//
// If you want to associate a VPC that was created by using one AWS account
// with a private hosted zone that was created by using a different account,
// the AWS account that created the private hosted zone must first submit a
// CreateVPCAssociationAuthorization request. Then the account that created
// the VPC must submit an AssociateVPCWithHostedZone request.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation AssociateVPCWithHostedZone for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeNotAuthorizedException "NotAuthorizedException"
// Associating the specified VPC with the specified hosted zone has not been
// authorized.
//
// * ErrCodeInvalidVPCId "InvalidVPCId"
// The VPC ID that you specified either isn't a valid ID or the current account
// is not authorized to access this VPC.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodePublicZoneVPCAssociation "PublicZoneVPCAssociation"
// You're trying to associate a VPC with a public hosted zone. Amazon Route
// 53 doesn't support associating a VPC with a public hosted zone.
//
// * ErrCodeConflictingDomainExists "ConflictingDomainExists"
// The cause of this error depends on whether you're trying to create a public
// or a private hosted zone:
//
// * Public hosted zone: Two hosted zones that have the same name or that
// have a parent/child relationship (example.com and test.example.com) can't
// have any common name servers. You tried to create a hosted zone that has
// the same name as an existing hosted zone or that's the parent or child
// of an existing hosted zone, and you specified a delegation set that shares
// one or more name servers with the existing hosted zone. For more information,
// see CreateReusableDelegationSet (https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateReusableDelegationSet.html).
//
// * Private hosted zone: You specified an Amazon VPC that you're already
// using for another hosted zone, and the domain that you specified for one
// of the hosted zones is a subdomain of the domain that you specified for
// the other hosted zone. For example, you can't use the same Amazon VPC
// for the hosted zones for example.com and test.example.com.
//
// * ErrCodeLimitsExceeded "LimitsExceeded"
// This operation can't be completed either because the current account has
// reached the limit on reusable delegation sets that it can create or because
// you've reached the limit on the number of Amazon VPCs that you can associate
// with a private hosted zone. To get the current limit on the number of reusable
// delegation sets, see GetAccountLimit (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetAccountLimit.html).
// To get the current limit on the number of Amazon VPCs that you can associate
// with a private hosted zone, see GetHostedZoneLimit (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetHostedZoneLimit.html).
// To request a higher limit, create a case (http://aws.amazon.com/route53-request)
// with the AWS Support Center.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/AssociateVPCWithHostedZone
func (c *Route53) AssociateVPCWithHostedZone(input *AssociateVPCWithHostedZoneInput) (*AssociateVPCWithHostedZoneOutput, error) {
req, out := c.AssociateVPCWithHostedZoneRequest(input)
return out, req.Send()
}
// AssociateVPCWithHostedZoneWithContext is the same as AssociateVPCWithHostedZone with the addition of
// the ability to pass a context and additional request options.
//
// See AssociateVPCWithHostedZone for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) AssociateVPCWithHostedZoneWithContext(ctx aws.Context, input *AssociateVPCWithHostedZoneInput, opts ...request.Option) (*AssociateVPCWithHostedZoneOutput, error) {
req, out := c.AssociateVPCWithHostedZoneRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opChangeResourceRecordSets = "ChangeResourceRecordSets"
// ChangeResourceRecordSetsRequest generates a "aws/request.Request" representing the
// client's request for the ChangeResourceRecordSets operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ChangeResourceRecordSets for more information on using the ChangeResourceRecordSets
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the ChangeResourceRecordSetsRequest method.
// req, resp := client.ChangeResourceRecordSetsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/ChangeResourceRecordSets
func (c *Route53) ChangeResourceRecordSetsRequest(input *ChangeResourceRecordSetsInput) (req *request.Request, output *ChangeResourceRecordSetsOutput) {
op := &request.Operation{
Name: opChangeResourceRecordSets,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/hostedzone/{Id}/rrset/",
}
if input == nil {
input = &ChangeResourceRecordSetsInput{}
}
output = &ChangeResourceRecordSetsOutput{}
req = c.newRequest(op, input, output)
return
}
// ChangeResourceRecordSets API operation for Amazon Route 53.
//
// Creates, changes, or deletes a resource record set, which contains authoritative
// DNS information for a specified domain name or subdomain name. For example,
// you can use ChangeResourceRecordSets to create a resource record set that
// routes traffic for test.example.com to a web server that has an IP address
// of 192.0.2.44.
//
// Change Batches and Transactional Changes
//
// The request body must include a document with a ChangeResourceRecordSetsRequest
// element. The request body contains a list of change items, known as a change
// batch. Change batches are considered transactional changes. When using the
// Amazon Route 53 API to change resource record sets, Route 53 either makes
// all or none of the changes in a change batch request. This ensures that Route
// 53 never partially implements the intended changes to the resource record
// sets in a hosted zone.
//
// For example, a change batch request that deletes the CNAME record for www.example.com
// and creates an alias resource record set for www.example.com. Route 53 deletes
// the first resource record set and creates the second resource record set
// in a single operation. If either the DELETE or the CREATE action fails, then
// both changes (plus any other changes in the batch) fail, and the original
// CNAME record continues to exist.
//
// Due to the nature of transactional changes, you can't delete the same resource
// record set more than once in a single change batch. If you attempt to delete
// the same change batch more than once, Route 53 returns an InvalidChangeBatch
// error.
//
// Traffic Flow
//
// To create resource record sets for complex routing configurations, use either
// the traffic flow visual editor in the Route 53 console or the API actions
// for traffic policies and traffic policy instances. Save the configuration
// as a traffic policy, then associate the traffic policy with one or more domain
// names (such as example.com) or subdomain names (such as www.example.com),
// in the same hosted zone or in multiple hosted zones. You can roll back the
// updates if the new configuration isn't performing as expected. For more information,
// see Using Traffic Flow to Route DNS Traffic (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/traffic-flow.html)
// in the Amazon Route 53 Developer Guide.
//
// Create, Delete, and Upsert
//
// Use ChangeResourceRecordsSetsRequest to perform the following actions:
//
// * CREATE: Creates a resource record set that has the specified values.
//
// * DELETE: Deletes an existing resource record set that has the specified
// values.
//
// * UPSERT: If a resource record set does not already exist, AWS creates
// it. If a resource set does exist, Route 53 updates it with the values
// in the request.
//
// Syntaxes for Creating, Updating, and Deleting Resource Record Sets
//
// The syntax for a request depends on the type of resource record set that
// you want to create, delete, or update, such as weighted, alias, or failover.
// The XML elements in your request must appear in the order listed in the syntax.
//
// For an example for each type of resource record set, see "Examples."
//
// Don't refer to the syntax in the "Parameter Syntax" section, which includes
// all of the elements for every kind of resource record set that you can create,
// delete, or update by using ChangeResourceRecordSets.
//
// Change Propagation to Route 53 DNS Servers
//
// When you submit a ChangeResourceRecordSets request, Route 53 propagates your
// changes to all of the Route 53 authoritative DNS servers. While your changes
// are propagating, GetChange returns a status of PENDING. When propagation
// is complete, GetChange returns a status of INSYNC. Changes generally propagate
// to all Route 53 name servers within 60 seconds. For more information, see
// GetChange (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetChange.html).
//
// Limits on ChangeResourceRecordSets Requests
//
// For information about the limits on a ChangeResourceRecordSets request, see
// Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation ChangeResourceRecordSets for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeNoSuchHealthCheck "NoSuchHealthCheck"
// No health check exists with the specified ID.
//
// * ErrCodeInvalidChangeBatch "InvalidChangeBatch"
// This exception contains a list of messages that might contain one or more
// error messages. Each error message indicates one error in the change batch.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodePriorRequestNotComplete "PriorRequestNotComplete"
// If Amazon Route 53 can't process a request before the next request arrives,
// it will reject subsequent requests for the same hosted zone and return an
// HTTP 400 error (Bad request). If Route 53 returns this error repeatedly for
// the same request, we recommend that you wait, in intervals of increasing
// duration, before you try the request again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/ChangeResourceRecordSets
func (c *Route53) ChangeResourceRecordSets(input *ChangeResourceRecordSetsInput) (*ChangeResourceRecordSetsOutput, error) {
req, out := c.ChangeResourceRecordSetsRequest(input)
return out, req.Send()
}
// ChangeResourceRecordSetsWithContext is the same as ChangeResourceRecordSets with the addition of
// the ability to pass a context and additional request options.
//
// See ChangeResourceRecordSets for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) ChangeResourceRecordSetsWithContext(ctx aws.Context, input *ChangeResourceRecordSetsInput, opts ...request.Option) (*ChangeResourceRecordSetsOutput, error) {
req, out := c.ChangeResourceRecordSetsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opChangeTagsForResource = "ChangeTagsForResource"
// ChangeTagsForResourceRequest generates a "aws/request.Request" representing the
// client's request for the ChangeTagsForResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ChangeTagsForResource for more information on using the ChangeTagsForResource
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the ChangeTagsForResourceRequest method.
// req, resp := client.ChangeTagsForResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/ChangeTagsForResource
func (c *Route53) ChangeTagsForResourceRequest(input *ChangeTagsForResourceInput) (req *request.Request, output *ChangeTagsForResourceOutput) {
op := &request.Operation{
Name: opChangeTagsForResource,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/tags/{ResourceType}/{ResourceId}",
}
if input == nil {
input = &ChangeTagsForResourceInput{}
}
output = &ChangeTagsForResourceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// ChangeTagsForResource API operation for Amazon Route 53.
//
// Adds, edits, or deletes tags for a health check or a hosted zone.
//
// For information about using tags for cost allocation, see Using Cost Allocation
// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
// in the AWS Billing and Cost Management User Guide.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation ChangeTagsForResource for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeNoSuchHealthCheck "NoSuchHealthCheck"
// No health check exists with the specified ID.
//
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodePriorRequestNotComplete "PriorRequestNotComplete"
// If Amazon Route 53 can't process a request before the next request arrives,
// it will reject subsequent requests for the same hosted zone and return an
// HTTP 400 error (Bad request). If Route 53 returns this error repeatedly for
// the same request, we recommend that you wait, in intervals of increasing
// duration, before you try the request again.
//
// * ErrCodeThrottlingException "ThrottlingException"
// The limit on the number of requests per second was exceeded.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/ChangeTagsForResource
func (c *Route53) ChangeTagsForResource(input *ChangeTagsForResourceInput) (*ChangeTagsForResourceOutput, error) {
req, out := c.ChangeTagsForResourceRequest(input)
return out, req.Send()
}
// ChangeTagsForResourceWithContext is the same as ChangeTagsForResource with the addition of
// the ability to pass a context and additional request options.
//
// See ChangeTagsForResource for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) ChangeTagsForResourceWithContext(ctx aws.Context, input *ChangeTagsForResourceInput, opts ...request.Option) (*ChangeTagsForResourceOutput, error) {
req, out := c.ChangeTagsForResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateHealthCheck = "CreateHealthCheck"
// CreateHealthCheckRequest generates a "aws/request.Request" representing the
// client's request for the CreateHealthCheck operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateHealthCheck for more information on using the CreateHealthCheck
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateHealthCheckRequest method.
// req, resp := client.CreateHealthCheckRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateHealthCheck
func (c *Route53) CreateHealthCheckRequest(input *CreateHealthCheckInput) (req *request.Request, output *CreateHealthCheckOutput) {
op := &request.Operation{
Name: opCreateHealthCheck,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/healthcheck",
}
if input == nil {
input = &CreateHealthCheckInput{}
}
output = &CreateHealthCheckOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateHealthCheck API operation for Amazon Route 53.
//
// Creates a new health check.
//
// For information about adding health checks to resource record sets, see HealthCheckId
// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_ResourceRecordSet.html#Route53-Type-ResourceRecordSet-HealthCheckId)
// in ChangeResourceRecordSets (https://docs.aws.amazon.com/Route53/latest/APIReference/API_ChangeResourceRecordSets.html).
//
// ELB Load Balancers
//
// If you're registering EC2 instances with an Elastic Load Balancing (ELB)
// load balancer, do not create Amazon Route 53 health checks for the EC2 instances.
// When you register an EC2 instance with a load balancer, you configure settings
// for an ELB health check, which performs a similar function to a Route 53
// health check.
//
// Private Hosted Zones
//
// You can associate health checks with failover resource record sets in a private
// hosted zone. Note the following:
//
// * Route 53 health checkers are outside the VPC. To check the health of
// an endpoint within a VPC by IP address, you must assign a public IP address
// to the instance in the VPC.
//
// * You can configure a health checker to check the health of an external
// resource that the instance relies on, such as a database server.
//
// * You can create a CloudWatch metric, associate an alarm with the metric,
// and then create a health check that is based on the state of the alarm.
// For example, you might create a CloudWatch metric that checks the status
// of the Amazon EC2 StatusCheckFailed metric, add an alarm to the metric,
// and then create a health check that is based on the state of the alarm.
// For information about creating CloudWatch metrics and alarms by using
// the CloudWatch console, see the Amazon CloudWatch User Guide (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateHealthCheck for usage and error information.
//
// Returned Error Codes:
// * ErrCodeTooManyHealthChecks "TooManyHealthChecks"
// This health check can't be created because the current account has reached
// the limit on the number of active health checks.
//
// For information about default limits, see Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide.
//
// For information about how to get the current limit for an account, see GetAccountLimit
// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetAccountLimit.html).
// To request a higher limit, create a case (http://aws.amazon.com/route53-request)
// with the AWS Support Center.
//
// You have reached the maximum number of active health checks for an AWS account.
// To request a higher limit, create a case (http://aws.amazon.com/route53-request)
// with the AWS Support Center.
//
// * ErrCodeHealthCheckAlreadyExists "HealthCheckAlreadyExists"
// The health check you're attempting to create already exists. Amazon Route
// 53 returns this error when you submit a request that has the following values:
//
// * The same value for CallerReference as an existing health check, and
// one or more values that differ from the existing health check that has
// the same caller reference.
//
// * The same value for CallerReference as a health check that you created
// and later deleted, regardless of the other settings in the request.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateHealthCheck
func (c *Route53) CreateHealthCheck(input *CreateHealthCheckInput) (*CreateHealthCheckOutput, error) {
req, out := c.CreateHealthCheckRequest(input)
return out, req.Send()
}
// CreateHealthCheckWithContext is the same as CreateHealthCheck with the addition of
// the ability to pass a context and additional request options.
//
// See CreateHealthCheck for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateHealthCheckWithContext(ctx aws.Context, input *CreateHealthCheckInput, opts ...request.Option) (*CreateHealthCheckOutput, error) {
req, out := c.CreateHealthCheckRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateHostedZone = "CreateHostedZone"
// CreateHostedZoneRequest generates a "aws/request.Request" representing the
// client's request for the CreateHostedZone operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateHostedZone for more information on using the CreateHostedZone
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateHostedZoneRequest method.
// req, resp := client.CreateHostedZoneRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateHostedZone
func (c *Route53) CreateHostedZoneRequest(input *CreateHostedZoneInput) (req *request.Request, output *CreateHostedZoneOutput) {
op := &request.Operation{
Name: opCreateHostedZone,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/hostedzone",
}
if input == nil {
input = &CreateHostedZoneInput{}
}
output = &CreateHostedZoneOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateHostedZone API operation for Amazon Route 53.
//
// Creates a new public or private hosted zone. You create records in a public
// hosted zone to define how you want to route traffic on the internet for a
// domain, such as example.com, and its subdomains (apex.example.com, acme.example.com).
// You create records in a private hosted zone to define how you want to route
// traffic for a domain and its subdomains within one or more Amazon Virtual
// Private Clouds (Amazon VPCs).
//
// You can't convert a public hosted zone to a private hosted zone or vice versa.
// Instead, you must create a new hosted zone with the same name and create
// new resource record sets.
//
// For more information about charges for hosted zones, see Amazon Route 53
// Pricing (http://aws.amazon.com/route53/pricing/).
//
// Note the following:
//
// * You can't create a hosted zone for a top-level domain (TLD) such as
// .com.
//
// * For public hosted zones, Amazon Route 53 automatically creates a default
// SOA record and four NS records for the zone. For more information about
// SOA and NS records, see NS and SOA Records that Route 53 Creates for a
// Hosted Zone (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/SOA-NSrecords.html)
// in the Amazon Route 53 Developer Guide. If you want to use the same name
// servers for multiple public hosted zones, you can optionally associate
// a reusable delegation set with the hosted zone. See the DelegationSetId
// element.
//
// * If your domain is registered with a registrar other than Route 53, you
// must update the name servers with your registrar to make Route 53 the
// DNS service for the domain. For more information, see Migrating DNS Service
// for an Existing Domain to Amazon Route 53 (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html)
// in the Amazon Route 53 Developer Guide.
//
// When you submit a CreateHostedZone request, the initial status of the hosted
// zone is PENDING. For public hosted zones, this means that the NS and SOA
// records are not yet available on all Route 53 DNS servers. When the NS and
// SOA records are available, the status of the zone changes to INSYNC.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateHostedZone for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidDomainName "InvalidDomainName"
// The specified domain name is not valid.
//
// * ErrCodeHostedZoneAlreadyExists "HostedZoneAlreadyExists"
// The hosted zone you're trying to create already exists. Amazon Route 53 returns
// this error when a hosted zone has already been created with the specified
// CallerReference.
//
// * ErrCodeTooManyHostedZones "TooManyHostedZones"
// This operation can't be completed either because the current account has
// reached the limit on the number of hosted zones or because you've reached
// the limit on the number of hosted zones that can be associated with a reusable
// delegation set.
//
// For information about default limits, see Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide.
//
// To get the current limit on hosted zones that can be created by an account,
// see GetAccountLimit (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetAccountLimit.html).
//
// To get the current limit on hosted zones that can be associated with a reusable
// delegation set, see GetReusableDelegationSetLimit (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetReusableDelegationSetLimit.html).
//
// To request a higher limit, create a case (http://aws.amazon.com/route53-request)
// with the AWS Support Center.
//
// * ErrCodeInvalidVPCId "InvalidVPCId"
// The VPC ID that you specified either isn't a valid ID or the current account
// is not authorized to access this VPC.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeDelegationSetNotAvailable "DelegationSetNotAvailable"
// You can create a hosted zone that has the same name as an existing hosted
// zone (example.com is common), but there is a limit to the number of hosted
// zones that have the same name. If you get this error, Amazon Route 53 has
// reached that limit. If you own the domain name and Route 53 generates this
// error, contact Customer Support.
//
// * ErrCodeConflictingDomainExists "ConflictingDomainExists"
// The cause of this error depends on whether you're trying to create a public
// or a private hosted zone:
//
// * Public hosted zone: Two hosted zones that have the same name or that
// have a parent/child relationship (example.com and test.example.com) can't
// have any common name servers. You tried to create a hosted zone that has
// the same name as an existing hosted zone or that's the parent or child
// of an existing hosted zone, and you specified a delegation set that shares
// one or more name servers with the existing hosted zone. For more information,
// see CreateReusableDelegationSet (https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateReusableDelegationSet.html).
//
// * Private hosted zone: You specified an Amazon VPC that you're already
// using for another hosted zone, and the domain that you specified for one
// of the hosted zones is a subdomain of the domain that you specified for
// the other hosted zone. For example, you can't use the same Amazon VPC
// for the hosted zones for example.com and test.example.com.
//
// * ErrCodeNoSuchDelegationSet "NoSuchDelegationSet"
// A reusable delegation set with the specified ID does not exist.
//
// * ErrCodeDelegationSetNotReusable "DelegationSetNotReusable"
// A reusable delegation set with the specified ID does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateHostedZone
func (c *Route53) CreateHostedZone(input *CreateHostedZoneInput) (*CreateHostedZoneOutput, error) {
req, out := c.CreateHostedZoneRequest(input)
return out, req.Send()
}
// CreateHostedZoneWithContext is the same as CreateHostedZone with the addition of
// the ability to pass a context and additional request options.
//
// See CreateHostedZone for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateHostedZoneWithContext(ctx aws.Context, input *CreateHostedZoneInput, opts ...request.Option) (*CreateHostedZoneOutput, error) {
req, out := c.CreateHostedZoneRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateQueryLoggingConfig = "CreateQueryLoggingConfig"
// CreateQueryLoggingConfigRequest generates a "aws/request.Request" representing the
// client's request for the CreateQueryLoggingConfig operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateQueryLoggingConfig for more information on using the CreateQueryLoggingConfig
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateQueryLoggingConfigRequest method.
// req, resp := client.CreateQueryLoggingConfigRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateQueryLoggingConfig
func (c *Route53) CreateQueryLoggingConfigRequest(input *CreateQueryLoggingConfigInput) (req *request.Request, output *CreateQueryLoggingConfigOutput) {
op := &request.Operation{
Name: opCreateQueryLoggingConfig,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/queryloggingconfig",
}
if input == nil {
input = &CreateQueryLoggingConfigInput{}
}
output = &CreateQueryLoggingConfigOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateQueryLoggingConfig API operation for Amazon Route 53.
//
// Creates a configuration for DNS query logging. After you create a query logging
// configuration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch
// Logs log group.
//
// DNS query logs contain information about the queries that Route 53 receives
// for a specified public hosted zone, such as the following:
//
// * Route 53 edge location that responded to the DNS query
//
// * Domain or subdomain that was requested
//
// * DNS record type, such as A or AAAA
//
// * DNS response code, such as NoError or ServFail
//
// Log Group and Resource Policy
//
// Before you create a query logging configuration, perform the following operations.
//
// If you create a query logging configuration using the Route 53 console, Route
// 53 performs these operations automatically.
//
// Create a CloudWatch Logs log group, and make note of the ARN, which you specify
// when you create a query logging configuration. Note the following:
//
// * You must create the log group in the us-east-1 region.
//
// * You must use the same AWS account to create the log group and the hosted
// zone that you want to configure query logging for.
//
// * When you create log groups for query logging, we recommend that you
// use a consistent prefix, for example: /aws/route53/hosted zone name In
// the next step, you'll create a resource policy, which controls access
// to one or more log groups and the associated AWS resources, such as Route
// 53 hosted zones. There's a limit on the number of resource policies that
// you can create, so we recommend that you use a consistent prefix so you
// can use the same resource policy for all the log groups that you create
// for query logging.
//
// Create a CloudWatch Logs resource policy, and give it the permissions that
// Route 53 needs to create log streams and to send query logs to log streams.
// For the value of Resource, specify the ARN for the log group that you created
// in the previous step. To use the same resource policy for all the CloudWatch
// Logs log groups that you created for query logging configurations, replace
// the hosted zone name with *, for example:
//
// arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/*
//
// You can't use the CloudWatch console to create or edit a resource policy.
// You must use the CloudWatch API, one of the AWS SDKs, or the AWS CLI.
//
// Log Streams and Edge Locations
//
// When Route 53 finishes creating the configuration for DNS query logging,
// it does the following:
//
// * Creates a log stream for an edge location the first time that the edge
// location responds to DNS queries for the specified hosted zone. That log
// stream is used to log all queries that Route 53 responds to for that edge
// location.
//
// * Begins to send query logs to the applicable log stream.
//
// The name of each log stream is in the following format:
//
// hosted zone ID/edge location code
//
// The edge location code is a three-letter code and an arbitrarily assigned
// number, for example, DFW3. The three-letter code typically corresponds with
// the International Air Transport Association airport code for an airport near
// the edge location. (These abbreviations might change in the future.) For
// a list of edge locations, see "The Route 53 Global Network" on the Route
// 53 Product Details (http://aws.amazon.com/route53/details/) page.
//
// Queries That Are Logged
//
// Query logs contain only the queries that DNS resolvers forward to Route 53.
// If a DNS resolver has already cached the response to a query (such as the
// IP address for a load balancer for example.com), the resolver will continue
// to return the cached response. It doesn't forward another query to Route
// 53 until the TTL for the corresponding resource record set expires. Depending
// on how many DNS queries are submitted for a resource record set, and depending
// on the TTL for that resource record set, query logs might contain information
// about only one query out of every several thousand queries that are submitted
// to DNS. For more information about how DNS works, see Routing Internet Traffic
// to Your Website or Web Application (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-dns-service.html)
// in the Amazon Route 53 Developer Guide.
//
// Log File Format
//
// For a list of the values in each query log and the format of each value,
// see Logging DNS Queries (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/query-logs.html)
// in the Amazon Route 53 Developer Guide.
//
// Pricing
//
// For information about charges for query logs, see Amazon CloudWatch Pricing
// (http://aws.amazon.com/cloudwatch/pricing/).
//
// How to Stop Logging
//
// If you want Route 53 to stop sending query logs to CloudWatch Logs, delete
// the query logging configuration. For more information, see DeleteQueryLoggingConfig
// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_DeleteQueryLoggingConfig.html).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateQueryLoggingConfig for usage and error information.
//
// Returned Error Codes:
// * ErrCodeConcurrentModification "ConcurrentModification"
// Another user submitted a request to create, update, or delete the object
// at the same time that you did. Retry the request.
//
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeNoSuchCloudWatchLogsLogGroup "NoSuchCloudWatchLogsLogGroup"
// There is no CloudWatch Logs log group with the specified ARN.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeQueryLoggingConfigAlreadyExists "QueryLoggingConfigAlreadyExists"
// You can create only one query logging configuration for a hosted zone, and
// a query logging configuration already exists for this hosted zone.
//
// * ErrCodeInsufficientCloudWatchLogsResourcePolicy "InsufficientCloudWatchLogsResourcePolicy"
// Amazon Route 53 doesn't have the permissions required to create log streams
// and send query logs to log streams. Possible causes include the following:
//
// * There is no resource policy that specifies the log group ARN in the
// value for Resource.
//
// * The resource policy that includes the log group ARN in the value for
// Resource doesn't have the necessary permissions.
//
// * The resource policy hasn't finished propagating yet.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateQueryLoggingConfig
func (c *Route53) CreateQueryLoggingConfig(input *CreateQueryLoggingConfigInput) (*CreateQueryLoggingConfigOutput, error) {
req, out := c.CreateQueryLoggingConfigRequest(input)
return out, req.Send()
}
// CreateQueryLoggingConfigWithContext is the same as CreateQueryLoggingConfig with the addition of
// the ability to pass a context and additional request options.
//
// See CreateQueryLoggingConfig for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateQueryLoggingConfigWithContext(ctx aws.Context, input *CreateQueryLoggingConfigInput, opts ...request.Option) (*CreateQueryLoggingConfigOutput, error) {
req, out := c.CreateQueryLoggingConfigRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateReusableDelegationSet = "CreateReusableDelegationSet"
// CreateReusableDelegationSetRequest generates a "aws/request.Request" representing the
// client's request for the CreateReusableDelegationSet operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateReusableDelegationSet for more information on using the CreateReusableDelegationSet
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateReusableDelegationSetRequest method.
// req, resp := client.CreateReusableDelegationSetRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateReusableDelegationSet
func (c *Route53) CreateReusableDelegationSetRequest(input *CreateReusableDelegationSetInput) (req *request.Request, output *CreateReusableDelegationSetOutput) {
op := &request.Operation{
Name: opCreateReusableDelegationSet,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/delegationset",
}
if input == nil {
input = &CreateReusableDelegationSetInput{}
}
output = &CreateReusableDelegationSetOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateReusableDelegationSet API operation for Amazon Route 53.
//
// Creates a delegation set (a group of four name servers) that can be reused
// by multiple hosted zones. If a hosted zoned ID is specified, CreateReusableDelegationSet
// marks the delegation set associated with that zone as reusable.
//
// You can't associate a reusable delegation set with a private hosted zone.
//
// For information about using a reusable delegation set to configure white
// label name servers, see Configuring White Label Name Servers (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/white-label-name-servers.html).
//
// The process for migrating existing hosted zones to use a reusable delegation
// set is comparable to the process for configuring white label name servers.
// You need to perform the following steps:
//
// Create a reusable delegation set.
//
// Recreate hosted zones, and reduce the TTL to 60 seconds or less.
//
// Recreate resource record sets in the new hosted zones.
//
// Change the registrar's name servers to use the name servers for the new hosted
// zones.
//
// Monitor traffic for the website or application.
//
// Change TTLs back to their original values.
//
// If you want to migrate existing hosted zones to use a reusable delegation
// set, the existing hosted zones can't use any of the name servers that are
// assigned to the reusable delegation set. If one or more hosted zones do use
// one or more name servers that are assigned to the reusable delegation set,
// you can do one of the following:
//
// * For small numbers of hosted zones—up to a few hundred—it's relatively
// easy to create reusable delegation sets until you get one that has four
// name servers that don't overlap with any of the name servers in your hosted
// zones.
//
// * For larger numbers of hosted zones, the easiest solution is to use more
// than one reusable delegation set.
//
// * For larger numbers of hosted zones, you can also migrate hosted zones
// that have overlapping name servers to hosted zones that don't have overlapping
// name servers, then migrate the hosted zones again to use the reusable
// delegation set.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateReusableDelegationSet for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDelegationSetAlreadyCreated "DelegationSetAlreadyCreated"
// A delegation set with the same owner and caller reference combination has
// already been created.
//
// * ErrCodeLimitsExceeded "LimitsExceeded"
// This operation can't be completed either because the current account has
// reached the limit on reusable delegation sets that it can create or because
// you've reached the limit on the number of Amazon VPCs that you can associate
// with a private hosted zone. To get the current limit on the number of reusable
// delegation sets, see GetAccountLimit (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetAccountLimit.html).
// To get the current limit on the number of Amazon VPCs that you can associate
// with a private hosted zone, see GetHostedZoneLimit (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetHostedZoneLimit.html).
// To request a higher limit, create a case (http://aws.amazon.com/route53-request)
// with the AWS Support Center.
//
// * ErrCodeHostedZoneNotFound "HostedZoneNotFound"
// The specified HostedZone can't be found.
//
// * ErrCodeInvalidArgument "InvalidArgument"
// Parameter name is invalid.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeDelegationSetNotAvailable "DelegationSetNotAvailable"
// You can create a hosted zone that has the same name as an existing hosted
// zone (example.com is common), but there is a limit to the number of hosted
// zones that have the same name. If you get this error, Amazon Route 53 has
// reached that limit. If you own the domain name and Route 53 generates this
// error, contact Customer Support.
//
// * ErrCodeDelegationSetAlreadyReusable "DelegationSetAlreadyReusable"
// The specified delegation set has already been marked as reusable.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateReusableDelegationSet
func (c *Route53) CreateReusableDelegationSet(input *CreateReusableDelegationSetInput) (*CreateReusableDelegationSetOutput, error) {
req, out := c.CreateReusableDelegationSetRequest(input)
return out, req.Send()
}
// CreateReusableDelegationSetWithContext is the same as CreateReusableDelegationSet with the addition of
// the ability to pass a context and additional request options.
//
// See CreateReusableDelegationSet for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateReusableDelegationSetWithContext(ctx aws.Context, input *CreateReusableDelegationSetInput, opts ...request.Option) (*CreateReusableDelegationSetOutput, error) {
req, out := c.CreateReusableDelegationSetRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateTrafficPolicy = "CreateTrafficPolicy"
// CreateTrafficPolicyRequest generates a "aws/request.Request" representing the
// client's request for the CreateTrafficPolicy operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateTrafficPolicy for more information on using the CreateTrafficPolicy
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateTrafficPolicyRequest method.
// req, resp := client.CreateTrafficPolicyRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateTrafficPolicy
func (c *Route53) CreateTrafficPolicyRequest(input *CreateTrafficPolicyInput) (req *request.Request, output *CreateTrafficPolicyOutput) {
op := &request.Operation{
Name: opCreateTrafficPolicy,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/trafficpolicy",
}
if input == nil {
input = &CreateTrafficPolicyInput{}
}
output = &CreateTrafficPolicyOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateTrafficPolicy API operation for Amazon Route 53.
//
// Creates a traffic policy, which you use to create multiple DNS resource record
// sets for one domain name (such as example.com) or one subdomain name (such
// as www.example.com).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateTrafficPolicy for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeTooManyTrafficPolicies "TooManyTrafficPolicies"
// This traffic policy can't be created because the current account has reached
// the limit on the number of traffic policies.
//
// For information about default limits, see Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide.
//
// To get the current limit for an account, see GetAccountLimit (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetAccountLimit.html).
//
// To request a higher limit, create a case (http://aws.amazon.com/route53-request)
// with the AWS Support Center.
//
// * ErrCodeTrafficPolicyAlreadyExists "TrafficPolicyAlreadyExists"
// A traffic policy that has the same value for Name already exists.
//
// * ErrCodeInvalidTrafficPolicyDocument "InvalidTrafficPolicyDocument"
// The format of the traffic policy document that you specified in the Document
// element is invalid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateTrafficPolicy
func (c *Route53) CreateTrafficPolicy(input *CreateTrafficPolicyInput) (*CreateTrafficPolicyOutput, error) {
req, out := c.CreateTrafficPolicyRequest(input)
return out, req.Send()
}
// CreateTrafficPolicyWithContext is the same as CreateTrafficPolicy with the addition of
// the ability to pass a context and additional request options.
//
// See CreateTrafficPolicy for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateTrafficPolicyWithContext(ctx aws.Context, input *CreateTrafficPolicyInput, opts ...request.Option) (*CreateTrafficPolicyOutput, error) {
req, out := c.CreateTrafficPolicyRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateTrafficPolicyInstance = "CreateTrafficPolicyInstance"
// CreateTrafficPolicyInstanceRequest generates a "aws/request.Request" representing the
// client's request for the CreateTrafficPolicyInstance operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateTrafficPolicyInstance for more information on using the CreateTrafficPolicyInstance
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateTrafficPolicyInstanceRequest method.
// req, resp := client.CreateTrafficPolicyInstanceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateTrafficPolicyInstance
func (c *Route53) CreateTrafficPolicyInstanceRequest(input *CreateTrafficPolicyInstanceInput) (req *request.Request, output *CreateTrafficPolicyInstanceOutput) {
op := &request.Operation{
Name: opCreateTrafficPolicyInstance,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/trafficpolicyinstance",
}
if input == nil {
input = &CreateTrafficPolicyInstanceInput{}
}
output = &CreateTrafficPolicyInstanceOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateTrafficPolicyInstance API operation for Amazon Route 53.
//
// Creates resource record sets in a specified hosted zone based on the settings
// in a specified traffic policy version. In addition, CreateTrafficPolicyInstance
// associates the resource record sets with a specified domain name (such as
// example.com) or subdomain name (such as www.example.com). Amazon Route 53
// responds to DNS queries for the domain or subdomain name by using the resource
// record sets that CreateTrafficPolicyInstance created.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateTrafficPolicyInstance for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeTooManyTrafficPolicyInstances "TooManyTrafficPolicyInstances"
// This traffic policy instance can't be created because the current account
// has reached the limit on the number of traffic policy instances.
//
// For information about default limits, see Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide.
//
// For information about how to get the current limit for an account, see GetAccountLimit
// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetAccountLimit.html).
//
// To request a higher limit, create a case (http://aws.amazon.com/route53-request)
// with the AWS Support Center.
//
// * ErrCodeNoSuchTrafficPolicy "NoSuchTrafficPolicy"
// No traffic policy exists with the specified ID.
//
// * ErrCodeTrafficPolicyInstanceAlreadyExists "TrafficPolicyInstanceAlreadyExists"
// There is already a traffic policy instance with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateTrafficPolicyInstance
func (c *Route53) CreateTrafficPolicyInstance(input *CreateTrafficPolicyInstanceInput) (*CreateTrafficPolicyInstanceOutput, error) {
req, out := c.CreateTrafficPolicyInstanceRequest(input)
return out, req.Send()
}
// CreateTrafficPolicyInstanceWithContext is the same as CreateTrafficPolicyInstance with the addition of
// the ability to pass a context and additional request options.
//
// See CreateTrafficPolicyInstance for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateTrafficPolicyInstanceWithContext(ctx aws.Context, input *CreateTrafficPolicyInstanceInput, opts ...request.Option) (*CreateTrafficPolicyInstanceOutput, error) {
req, out := c.CreateTrafficPolicyInstanceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateTrafficPolicyVersion = "CreateTrafficPolicyVersion"
// CreateTrafficPolicyVersionRequest generates a "aws/request.Request" representing the
// client's request for the CreateTrafficPolicyVersion operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateTrafficPolicyVersion for more information on using the CreateTrafficPolicyVersion
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateTrafficPolicyVersionRequest method.
// req, resp := client.CreateTrafficPolicyVersionRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateTrafficPolicyVersion
func (c *Route53) CreateTrafficPolicyVersionRequest(input *CreateTrafficPolicyVersionInput) (req *request.Request, output *CreateTrafficPolicyVersionOutput) {
op := &request.Operation{
Name: opCreateTrafficPolicyVersion,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/trafficpolicy/{Id}",
}
if input == nil {
input = &CreateTrafficPolicyVersionInput{}
}
output = &CreateTrafficPolicyVersionOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateTrafficPolicyVersion API operation for Amazon Route 53.
//
// Creates a new version of an existing traffic policy. When you create a new
// version of a traffic policy, you specify the ID of the traffic policy that
// you want to update and a JSON-formatted document that describes the new version.
// You use traffic policies to create multiple DNS resource record sets for
// one domain name (such as example.com) or one subdomain name (such as www.example.com).
// You can create a maximum of 1000 versions of a traffic policy. If you reach
// the limit and need to create another version, you'll need to start a new
// traffic policy.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateTrafficPolicyVersion for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchTrafficPolicy "NoSuchTrafficPolicy"
// No traffic policy exists with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeTooManyTrafficPolicyVersionsForCurrentPolicy "TooManyTrafficPolicyVersionsForCurrentPolicy"
// This traffic policy version can't be created because you've reached the limit
// of 1000 on the number of versions that you can create for the current traffic
// policy.
//
// To create more traffic policy versions, you can use GetTrafficPolicy (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetTrafficPolicy.html)
// to get the traffic policy document for a specified traffic policy version,
// and then use CreateTrafficPolicy (https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateTrafficPolicy.html)
// to create a new traffic policy using the traffic policy document.
//
// * ErrCodeConcurrentModification "ConcurrentModification"
// Another user submitted a request to create, update, or delete the object
// at the same time that you did. Retry the request.
//
// * ErrCodeInvalidTrafficPolicyDocument "InvalidTrafficPolicyDocument"
// The format of the traffic policy document that you specified in the Document
// element is invalid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateTrafficPolicyVersion
func (c *Route53) CreateTrafficPolicyVersion(input *CreateTrafficPolicyVersionInput) (*CreateTrafficPolicyVersionOutput, error) {
req, out := c.CreateTrafficPolicyVersionRequest(input)
return out, req.Send()
}
// CreateTrafficPolicyVersionWithContext is the same as CreateTrafficPolicyVersion with the addition of
// the ability to pass a context and additional request options.
//
// See CreateTrafficPolicyVersion for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateTrafficPolicyVersionWithContext(ctx aws.Context, input *CreateTrafficPolicyVersionInput, opts ...request.Option) (*CreateTrafficPolicyVersionOutput, error) {
req, out := c.CreateTrafficPolicyVersionRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateVPCAssociationAuthorization = "CreateVPCAssociationAuthorization"
// CreateVPCAssociationAuthorizationRequest generates a "aws/request.Request" representing the
// client's request for the CreateVPCAssociationAuthorization operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateVPCAssociationAuthorization for more information on using the CreateVPCAssociationAuthorization
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateVPCAssociationAuthorizationRequest method.
// req, resp := client.CreateVPCAssociationAuthorizationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateVPCAssociationAuthorization
func (c *Route53) CreateVPCAssociationAuthorizationRequest(input *CreateVPCAssociationAuthorizationInput) (req *request.Request, output *CreateVPCAssociationAuthorizationOutput) {
op := &request.Operation{
Name: opCreateVPCAssociationAuthorization,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/hostedzone/{Id}/authorizevpcassociation",
}
if input == nil {
input = &CreateVPCAssociationAuthorizationInput{}
}
output = &CreateVPCAssociationAuthorizationOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateVPCAssociationAuthorization API operation for Amazon Route 53.
//
// Authorizes the AWS account that created a specified VPC to submit an AssociateVPCWithHostedZone
// request to associate the VPC with a specified hosted zone that was created
// by a different account. To submit a CreateVPCAssociationAuthorization request,
// you must use the account that created the hosted zone. After you authorize
// the association, use the account that created the VPC to submit an AssociateVPCWithHostedZone
// request.
//
// If you want to associate multiple VPCs that you created by using one account
// with a hosted zone that you created by using a different account, you must
// submit one authorization request for each VPC.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation CreateVPCAssociationAuthorization for usage and error information.
//
// Returned Error Codes:
// * ErrCodeConcurrentModification "ConcurrentModification"
// Another user submitted a request to create, update, or delete the object
// at the same time that you did. Retry the request.
//
// * ErrCodeTooManyVPCAssociationAuthorizations "TooManyVPCAssociationAuthorizations"
// You've created the maximum number of authorizations that can be created for
// the specified hosted zone. To authorize another VPC to be associated with
// the hosted zone, submit a DeleteVPCAssociationAuthorization request to remove
// an existing authorization. To get a list of existing authorizations, submit
// a ListVPCAssociationAuthorizations request.
//
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeInvalidVPCId "InvalidVPCId"
// The VPC ID that you specified either isn't a valid ID or the current account
// is not authorized to access this VPC.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateVPCAssociationAuthorization
func (c *Route53) CreateVPCAssociationAuthorization(input *CreateVPCAssociationAuthorizationInput) (*CreateVPCAssociationAuthorizationOutput, error) {
req, out := c.CreateVPCAssociationAuthorizationRequest(input)
return out, req.Send()
}
// CreateVPCAssociationAuthorizationWithContext is the same as CreateVPCAssociationAuthorization with the addition of
// the ability to pass a context and additional request options.
//
// See CreateVPCAssociationAuthorization for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) CreateVPCAssociationAuthorizationWithContext(ctx aws.Context, input *CreateVPCAssociationAuthorizationInput, opts ...request.Option) (*CreateVPCAssociationAuthorizationOutput, error) {
req, out := c.CreateVPCAssociationAuthorizationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteHealthCheck = "DeleteHealthCheck"
// DeleteHealthCheckRequest generates a "aws/request.Request" representing the
// client's request for the DeleteHealthCheck operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteHealthCheck for more information on using the DeleteHealthCheck
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteHealthCheckRequest method.
// req, resp := client.DeleteHealthCheckRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteHealthCheck
func (c *Route53) DeleteHealthCheckRequest(input *DeleteHealthCheckInput) (req *request.Request, output *DeleteHealthCheckOutput) {
op := &request.Operation{
Name: opDeleteHealthCheck,
HTTPMethod: "DELETE",
HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}",
}
if input == nil {
input = &DeleteHealthCheckInput{}
}
output = &DeleteHealthCheckOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteHealthCheck API operation for Amazon Route 53.
//
// Deletes a health check.
//
// Amazon Route 53 does not prevent you from deleting a health check even if
// the health check is associated with one or more resource record sets. If
// you delete a health check and you don't update the associated resource record
// sets, the future status of the health check can't be predicted and may change.
// This will affect the routing of DNS queries for your DNS failover configuration.
// For more information, see Replacing and Deleting Health Checks (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-creating-deleting.html#health-checks-deleting.html)
// in the Amazon Route 53 Developer Guide.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DeleteHealthCheck for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHealthCheck "NoSuchHealthCheck"
// No health check exists with the specified ID.
//
// * ErrCodeHealthCheckInUse "HealthCheckInUse"
// This error code is not in use.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteHealthCheck
func (c *Route53) DeleteHealthCheck(input *DeleteHealthCheckInput) (*DeleteHealthCheckOutput, error) {
req, out := c.DeleteHealthCheckRequest(input)
return out, req.Send()
}
// DeleteHealthCheckWithContext is the same as DeleteHealthCheck with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteHealthCheck for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DeleteHealthCheckWithContext(ctx aws.Context, input *DeleteHealthCheckInput, opts ...request.Option) (*DeleteHealthCheckOutput, error) {
req, out := c.DeleteHealthCheckRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteHostedZone = "DeleteHostedZone"
// DeleteHostedZoneRequest generates a "aws/request.Request" representing the
// client's request for the DeleteHostedZone operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteHostedZone for more information on using the DeleteHostedZone
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteHostedZoneRequest method.
// req, resp := client.DeleteHostedZoneRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteHostedZone
func (c *Route53) DeleteHostedZoneRequest(input *DeleteHostedZoneInput) (req *request.Request, output *DeleteHostedZoneOutput) {
op := &request.Operation{
Name: opDeleteHostedZone,
HTTPMethod: "DELETE",
HTTPPath: "/2013-04-01/hostedzone/{Id}",
}
if input == nil {
input = &DeleteHostedZoneInput{}
}
output = &DeleteHostedZoneOutput{}
req = c.newRequest(op, input, output)
return
}
// DeleteHostedZone API operation for Amazon Route 53.
//
// Deletes a hosted zone.
//
// If the hosted zone was created by another service, such as AWS Cloud Map,
// see Deleting Public Hosted Zones That Were Created by Another Service (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DeleteHostedZone.html#delete-public-hosted-zone-created-by-another-service)
// in the Amazon Route 53 Developer Guide for information about how to delete
// it. (The process is the same for public and private hosted zones that were
// created by another service.)
//
// If you want to keep your domain registration but you want to stop routing
// internet traffic to your website or web application, we recommend that you
// delete resource record sets in the hosted zone instead of deleting the hosted
// zone.
//
// If you delete a hosted zone, you can't undelete it. You must create a new
// hosted zone and update the name servers for your domain registration, which
// can require up to 48 hours to take effect. (If you delegated responsibility
// for a subdomain to a hosted zone and you delete the child hosted zone, you
// must update the name servers in the parent hosted zone.) In addition, if
// you delete a hosted zone, someone could hijack the domain and route traffic
// to their own resources using your domain name.
//
// If you want to avoid the monthly charge for the hosted zone, you can transfer
// DNS service for the domain to a free DNS service. When you transfer DNS service,
// you have to update the name servers for the domain registration. If the domain
// is registered with Route 53, see UpdateDomainNameservers (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_UpdateDomainNameservers.html)
// for information about how to replace Route 53 name servers with name servers
// for the new DNS service. If the domain is registered with another registrar,
// use the method provided by the registrar to update name servers for the domain
// registration. For more information, perform an internet search on "free DNS
// service."
//
// You can delete a hosted zone only if it contains only the default SOA record
// and NS resource record sets. If the hosted zone contains other resource record
// sets, you must delete them before you can delete the hosted zone. If you
// try to delete a hosted zone that contains other resource record sets, the
// request fails, and Route 53 returns a HostedZoneNotEmpty error. For information
// about deleting records from your hosted zone, see ChangeResourceRecordSets
// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_ChangeResourceRecordSets.html).
//
// To verify that the hosted zone has been deleted, do one of the following:
//
// * Use the GetHostedZone action to request information about the hosted
// zone.
//
// * Use the ListHostedZones action to get a list of the hosted zones associated
// with the current AWS account.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DeleteHostedZone for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeHostedZoneNotEmpty "HostedZoneNotEmpty"
// The hosted zone contains resource records that are not SOA or NS records.
//
// * ErrCodePriorRequestNotComplete "PriorRequestNotComplete"
// If Amazon Route 53 can't process a request before the next request arrives,
// it will reject subsequent requests for the same hosted zone and return an
// HTTP 400 error (Bad request). If Route 53 returns this error repeatedly for
// the same request, we recommend that you wait, in intervals of increasing
// duration, before you try the request again.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeInvalidDomainName "InvalidDomainName"
// The specified domain name is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteHostedZone
func (c *Route53) DeleteHostedZone(input *DeleteHostedZoneInput) (*DeleteHostedZoneOutput, error) {
req, out := c.DeleteHostedZoneRequest(input)
return out, req.Send()
}
// DeleteHostedZoneWithContext is the same as DeleteHostedZone with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteHostedZone for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DeleteHostedZoneWithContext(ctx aws.Context, input *DeleteHostedZoneInput, opts ...request.Option) (*DeleteHostedZoneOutput, error) {
req, out := c.DeleteHostedZoneRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteQueryLoggingConfig = "DeleteQueryLoggingConfig"
// DeleteQueryLoggingConfigRequest generates a "aws/request.Request" representing the
// client's request for the DeleteQueryLoggingConfig operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteQueryLoggingConfig for more information on using the DeleteQueryLoggingConfig
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteQueryLoggingConfigRequest method.
// req, resp := client.DeleteQueryLoggingConfigRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteQueryLoggingConfig
func (c *Route53) DeleteQueryLoggingConfigRequest(input *DeleteQueryLoggingConfigInput) (req *request.Request, output *DeleteQueryLoggingConfigOutput) {
op := &request.Operation{
Name: opDeleteQueryLoggingConfig,
HTTPMethod: "DELETE",
HTTPPath: "/2013-04-01/queryloggingconfig/{Id}",
}
if input == nil {
input = &DeleteQueryLoggingConfigInput{}
}
output = &DeleteQueryLoggingConfigOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteQueryLoggingConfig API operation for Amazon Route 53.
//
// Deletes a configuration for DNS query logging. If you delete a configuration,
// Amazon Route 53 stops sending query logs to CloudWatch Logs. Route 53 doesn't
// delete any logs that are already in CloudWatch Logs.
//
// For more information about DNS query logs, see CreateQueryLoggingConfig (https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateQueryLoggingConfig.html).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DeleteQueryLoggingConfig for usage and error information.
//
// Returned Error Codes:
// * ErrCodeConcurrentModification "ConcurrentModification"
// Another user submitted a request to create, update, or delete the object
// at the same time that you did. Retry the request.
//
// * ErrCodeNoSuchQueryLoggingConfig "NoSuchQueryLoggingConfig"
// There is no DNS query logging configuration with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteQueryLoggingConfig
func (c *Route53) DeleteQueryLoggingConfig(input *DeleteQueryLoggingConfigInput) (*DeleteQueryLoggingConfigOutput, error) {
req, out := c.DeleteQueryLoggingConfigRequest(input)
return out, req.Send()
}
// DeleteQueryLoggingConfigWithContext is the same as DeleteQueryLoggingConfig with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteQueryLoggingConfig for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DeleteQueryLoggingConfigWithContext(ctx aws.Context, input *DeleteQueryLoggingConfigInput, opts ...request.Option) (*DeleteQueryLoggingConfigOutput, error) {
req, out := c.DeleteQueryLoggingConfigRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteReusableDelegationSet = "DeleteReusableDelegationSet"
// DeleteReusableDelegationSetRequest generates a "aws/request.Request" representing the
// client's request for the DeleteReusableDelegationSet operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteReusableDelegationSet for more information on using the DeleteReusableDelegationSet
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteReusableDelegationSetRequest method.
// req, resp := client.DeleteReusableDelegationSetRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteReusableDelegationSet
func (c *Route53) DeleteReusableDelegationSetRequest(input *DeleteReusableDelegationSetInput) (req *request.Request, output *DeleteReusableDelegationSetOutput) {
op := &request.Operation{
Name: opDeleteReusableDelegationSet,
HTTPMethod: "DELETE",
HTTPPath: "/2013-04-01/delegationset/{Id}",
}
if input == nil {
input = &DeleteReusableDelegationSetInput{}
}
output = &DeleteReusableDelegationSetOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteReusableDelegationSet API operation for Amazon Route 53.
//
// Deletes a reusable delegation set.
//
// You can delete a reusable delegation set only if it isn't associated with
// any hosted zones.
//
// To verify that the reusable delegation set is not associated with any hosted
// zones, submit a GetReusableDelegationSet (https://docs.aws.amazon.com/Route53/latest/APIReference/API_GetReusableDelegationSet.html)
// request and specify the ID of the reusable delegation set that you want to
// delete.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DeleteReusableDelegationSet for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchDelegationSet "NoSuchDelegationSet"
// A reusable delegation set with the specified ID does not exist.
//
// * ErrCodeDelegationSetInUse "DelegationSetInUse"
// The specified delegation contains associated hosted zones which must be deleted
// before the reusable delegation set can be deleted.
//
// * ErrCodeDelegationSetNotReusable "DelegationSetNotReusable"
// A reusable delegation set with the specified ID does not exist.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteReusableDelegationSet
func (c *Route53) DeleteReusableDelegationSet(input *DeleteReusableDelegationSetInput) (*DeleteReusableDelegationSetOutput, error) {
req, out := c.DeleteReusableDelegationSetRequest(input)
return out, req.Send()
}
// DeleteReusableDelegationSetWithContext is the same as DeleteReusableDelegationSet with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteReusableDelegationSet for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DeleteReusableDelegationSetWithContext(ctx aws.Context, input *DeleteReusableDelegationSetInput, opts ...request.Option) (*DeleteReusableDelegationSetOutput, error) {
req, out := c.DeleteReusableDelegationSetRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteTrafficPolicy = "DeleteTrafficPolicy"
// DeleteTrafficPolicyRequest generates a "aws/request.Request" representing the
// client's request for the DeleteTrafficPolicy operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteTrafficPolicy for more information on using the DeleteTrafficPolicy
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteTrafficPolicyRequest method.
// req, resp := client.DeleteTrafficPolicyRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteTrafficPolicy
func (c *Route53) DeleteTrafficPolicyRequest(input *DeleteTrafficPolicyInput) (req *request.Request, output *DeleteTrafficPolicyOutput) {
op := &request.Operation{
Name: opDeleteTrafficPolicy,
HTTPMethod: "DELETE",
HTTPPath: "/2013-04-01/trafficpolicy/{Id}/{Version}",
}
if input == nil {
input = &DeleteTrafficPolicyInput{}
}
output = &DeleteTrafficPolicyOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteTrafficPolicy API operation for Amazon Route 53.
//
// Deletes a traffic policy.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DeleteTrafficPolicy for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchTrafficPolicy "NoSuchTrafficPolicy"
// No traffic policy exists with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeTrafficPolicyInUse "TrafficPolicyInUse"
// One or more traffic policy instances were created by using the specified
// traffic policy.
//
// * ErrCodeConcurrentModification "ConcurrentModification"
// Another user submitted a request to create, update, or delete the object
// at the same time that you did. Retry the request.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteTrafficPolicy
func (c *Route53) DeleteTrafficPolicy(input *DeleteTrafficPolicyInput) (*DeleteTrafficPolicyOutput, error) {
req, out := c.DeleteTrafficPolicyRequest(input)
return out, req.Send()
}
// DeleteTrafficPolicyWithContext is the same as DeleteTrafficPolicy with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteTrafficPolicy for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DeleteTrafficPolicyWithContext(ctx aws.Context, input *DeleteTrafficPolicyInput, opts ...request.Option) (*DeleteTrafficPolicyOutput, error) {
req, out := c.DeleteTrafficPolicyRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteTrafficPolicyInstance = "DeleteTrafficPolicyInstance"
// DeleteTrafficPolicyInstanceRequest generates a "aws/request.Request" representing the
// client's request for the DeleteTrafficPolicyInstance operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteTrafficPolicyInstance for more information on using the DeleteTrafficPolicyInstance
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteTrafficPolicyInstanceRequest method.
// req, resp := client.DeleteTrafficPolicyInstanceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteTrafficPolicyInstance
func (c *Route53) DeleteTrafficPolicyInstanceRequest(input *DeleteTrafficPolicyInstanceInput) (req *request.Request, output *DeleteTrafficPolicyInstanceOutput) {
op := &request.Operation{
Name: opDeleteTrafficPolicyInstance,
HTTPMethod: "DELETE",
HTTPPath: "/2013-04-01/trafficpolicyinstance/{Id}",
}
if input == nil {
input = &DeleteTrafficPolicyInstanceInput{}
}
output = &DeleteTrafficPolicyInstanceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteTrafficPolicyInstance API operation for Amazon Route 53.
//
// Deletes a traffic policy instance and all of the resource record sets that
// Amazon Route 53 created when you created the instance.
//
// In the Route 53 console, traffic policy instances are known as policy records.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DeleteTrafficPolicyInstance for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchTrafficPolicyInstance "NoSuchTrafficPolicyInstance"
// No traffic policy instance exists with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodePriorRequestNotComplete "PriorRequestNotComplete"
// If Amazon Route 53 can't process a request before the next request arrives,
// it will reject subsequent requests for the same hosted zone and return an
// HTTP 400 error (Bad request). If Route 53 returns this error repeatedly for
// the same request, we recommend that you wait, in intervals of increasing
// duration, before you try the request again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteTrafficPolicyInstance
func (c *Route53) DeleteTrafficPolicyInstance(input *DeleteTrafficPolicyInstanceInput) (*DeleteTrafficPolicyInstanceOutput, error) {
req, out := c.DeleteTrafficPolicyInstanceRequest(input)
return out, req.Send()
}
// DeleteTrafficPolicyInstanceWithContext is the same as DeleteTrafficPolicyInstance with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteTrafficPolicyInstance for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DeleteTrafficPolicyInstanceWithContext(ctx aws.Context, input *DeleteTrafficPolicyInstanceInput, opts ...request.Option) (*DeleteTrafficPolicyInstanceOutput, error) {
req, out := c.DeleteTrafficPolicyInstanceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteVPCAssociationAuthorization = "DeleteVPCAssociationAuthorization"
// DeleteVPCAssociationAuthorizationRequest generates a "aws/request.Request" representing the
// client's request for the DeleteVPCAssociationAuthorization operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteVPCAssociationAuthorization for more information on using the DeleteVPCAssociationAuthorization
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteVPCAssociationAuthorizationRequest method.
// req, resp := client.DeleteVPCAssociationAuthorizationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteVPCAssociationAuthorization
func (c *Route53) DeleteVPCAssociationAuthorizationRequest(input *DeleteVPCAssociationAuthorizationInput) (req *request.Request, output *DeleteVPCAssociationAuthorizationOutput) {
op := &request.Operation{
Name: opDeleteVPCAssociationAuthorization,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/hostedzone/{Id}/deauthorizevpcassociation",
}
if input == nil {
input = &DeleteVPCAssociationAuthorizationInput{}
}
output = &DeleteVPCAssociationAuthorizationOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteVPCAssociationAuthorization API operation for Amazon Route 53.
//
// Removes authorization to submit an AssociateVPCWithHostedZone request to
// associate a specified VPC with a hosted zone that was created by a different
// account. You must use the account that created the hosted zone to submit
// a DeleteVPCAssociationAuthorization request.
//
// Sending this request only prevents the AWS account that created the VPC from
// associating the VPC with the Amazon Route 53 hosted zone in the future. If
// the VPC is already associated with the hosted zone, DeleteVPCAssociationAuthorization
// won't disassociate the VPC from the hosted zone. If you want to delete an
// existing association, use DisassociateVPCFromHostedZone.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DeleteVPCAssociationAuthorization for usage and error information.
//
// Returned Error Codes:
// * ErrCodeConcurrentModification "ConcurrentModification"
// Another user submitted a request to create, update, or delete the object
// at the same time that you did. Retry the request.
//
// * ErrCodeVPCAssociationAuthorizationNotFound "VPCAssociationAuthorizationNotFound"
// The VPC that you specified is not authorized to be associated with the hosted
// zone.
//
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeInvalidVPCId "InvalidVPCId"
// The VPC ID that you specified either isn't a valid ID or the current account
// is not authorized to access this VPC.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DeleteVPCAssociationAuthorization
func (c *Route53) DeleteVPCAssociationAuthorization(input *DeleteVPCAssociationAuthorizationInput) (*DeleteVPCAssociationAuthorizationOutput, error) {
req, out := c.DeleteVPCAssociationAuthorizationRequest(input)
return out, req.Send()
}
// DeleteVPCAssociationAuthorizationWithContext is the same as DeleteVPCAssociationAuthorization with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteVPCAssociationAuthorization for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DeleteVPCAssociationAuthorizationWithContext(ctx aws.Context, input *DeleteVPCAssociationAuthorizationInput, opts ...request.Option) (*DeleteVPCAssociationAuthorizationOutput, error) {
req, out := c.DeleteVPCAssociationAuthorizationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDisassociateVPCFromHostedZone = "DisassociateVPCFromHostedZone"
// DisassociateVPCFromHostedZoneRequest generates a "aws/request.Request" representing the
// client's request for the DisassociateVPCFromHostedZone operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DisassociateVPCFromHostedZone for more information on using the DisassociateVPCFromHostedZone
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DisassociateVPCFromHostedZoneRequest method.
// req, resp := client.DisassociateVPCFromHostedZoneRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DisassociateVPCFromHostedZone
func (c *Route53) DisassociateVPCFromHostedZoneRequest(input *DisassociateVPCFromHostedZoneInput) (req *request.Request, output *DisassociateVPCFromHostedZoneOutput) {
op := &request.Operation{
Name: opDisassociateVPCFromHostedZone,
HTTPMethod: "POST",
HTTPPath: "/2013-04-01/hostedzone/{Id}/disassociatevpc",
}
if input == nil {
input = &DisassociateVPCFromHostedZoneInput{}
}
output = &DisassociateVPCFromHostedZoneOutput{}
req = c.newRequest(op, input, output)
return
}
// DisassociateVPCFromHostedZone API operation for Amazon Route 53.
//
// Disassociates a VPC from a Amazon Route 53 private hosted zone. Note the
// following:
//
// * You can't disassociate the last VPC from a private hosted zone.
//
// * You can't convert a private hosted zone into a public hosted zone.
//
// * You can submit a DisassociateVPCFromHostedZone request using either
// the account that created the hosted zone or the account that created the
// VPC.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation DisassociateVPCFromHostedZone for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeInvalidVPCId "InvalidVPCId"
// The VPC ID that you specified either isn't a valid ID or the current account
// is not authorized to access this VPC.
//
// * ErrCodeVPCAssociationNotFound "VPCAssociationNotFound"
// The specified VPC and hosted zone are not currently associated.
//
// * ErrCodeLastVPCAssociation "LastVPCAssociation"
// The VPC that you're trying to disassociate from the private hosted zone is
// the last VPC that is associated with the hosted zone. Amazon Route 53 doesn't
// support disassociating the last VPC from a hosted zone.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/DisassociateVPCFromHostedZone
func (c *Route53) DisassociateVPCFromHostedZone(input *DisassociateVPCFromHostedZoneInput) (*DisassociateVPCFromHostedZoneOutput, error) {
req, out := c.DisassociateVPCFromHostedZoneRequest(input)
return out, req.Send()
}
// DisassociateVPCFromHostedZoneWithContext is the same as DisassociateVPCFromHostedZone with the addition of
// the ability to pass a context and additional request options.
//
// See DisassociateVPCFromHostedZone for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) DisassociateVPCFromHostedZoneWithContext(ctx aws.Context, input *DisassociateVPCFromHostedZoneInput, opts ...request.Option) (*DisassociateVPCFromHostedZoneOutput, error) {
req, out := c.DisassociateVPCFromHostedZoneRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetAccountLimit = "GetAccountLimit"
// GetAccountLimitRequest generates a "aws/request.Request" representing the
// client's request for the GetAccountLimit operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetAccountLimit for more information on using the GetAccountLimit
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetAccountLimitRequest method.
// req, resp := client.GetAccountLimitRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetAccountLimit
func (c *Route53) GetAccountLimitRequest(input *GetAccountLimitInput) (req *request.Request, output *GetAccountLimitOutput) {
op := &request.Operation{
Name: opGetAccountLimit,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/accountlimit/{Type}",
}
if input == nil {
input = &GetAccountLimitInput{}
}
output = &GetAccountLimitOutput{}
req = c.newRequest(op, input, output)
return
}
// GetAccountLimit API operation for Amazon Route 53.
//
// Gets the specified limit for the current account, for example, the maximum
// number of health checks that you can create using the account.
//
// For the default limit, see Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide. To request a higher limit, open a
// case (https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&limitType=service-code-route53).
//
// You can also view account limits in AWS Trusted Advisor. Sign in to the AWS
// Management Console and open the Trusted Advisor console at https://console.aws.amazon.com/trustedadvisor/
// (https://console.aws.amazon.com/trustedadvisor). Then choose Service limits
// in the navigation pane.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetAccountLimit for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetAccountLimit
func (c *Route53) GetAccountLimit(input *GetAccountLimitInput) (*GetAccountLimitOutput, error) {
req, out := c.GetAccountLimitRequest(input)
return out, req.Send()
}
// GetAccountLimitWithContext is the same as GetAccountLimit with the addition of
// the ability to pass a context and additional request options.
//
// See GetAccountLimit for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetAccountLimitWithContext(ctx aws.Context, input *GetAccountLimitInput, opts ...request.Option) (*GetAccountLimitOutput, error) {
req, out := c.GetAccountLimitRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetChange = "GetChange"
// GetChangeRequest generates a "aws/request.Request" representing the
// client's request for the GetChange operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetChange for more information on using the GetChange
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetChangeRequest method.
// req, resp := client.GetChangeRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetChange
func (c *Route53) GetChangeRequest(input *GetChangeInput) (req *request.Request, output *GetChangeOutput) {
op := &request.Operation{
Name: opGetChange,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/change/{Id}",
}
if input == nil {
input = &GetChangeInput{}
}
output = &GetChangeOutput{}
req = c.newRequest(op, input, output)
return
}
// GetChange API operation for Amazon Route 53.
//
// Returns the current status of a change batch request. The status is one of
// the following values:
//
// * PENDING indicates that the changes in this request have not propagated
// to all Amazon Route 53 DNS servers. This is the initial status of all
// change batch requests.
//
// * INSYNC indicates that the changes have propagated to all Route 53 DNS
// servers.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetChange for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchChange "NoSuchChange"
// A change with the specified change ID does not exist.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetChange
func (c *Route53) GetChange(input *GetChangeInput) (*GetChangeOutput, error) {
req, out := c.GetChangeRequest(input)
return out, req.Send()
}
// GetChangeWithContext is the same as GetChange with the addition of
// the ability to pass a context and additional request options.
//
// See GetChange for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetChangeWithContext(ctx aws.Context, input *GetChangeInput, opts ...request.Option) (*GetChangeOutput, error) {
req, out := c.GetChangeRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetCheckerIpRanges = "GetCheckerIpRanges"
// GetCheckerIpRangesRequest generates a "aws/request.Request" representing the
// client's request for the GetCheckerIpRanges operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetCheckerIpRanges for more information on using the GetCheckerIpRanges
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetCheckerIpRangesRequest method.
// req, resp := client.GetCheckerIpRangesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetCheckerIpRanges
func (c *Route53) GetCheckerIpRangesRequest(input *GetCheckerIpRangesInput) (req *request.Request, output *GetCheckerIpRangesOutput) {
op := &request.Operation{
Name: opGetCheckerIpRanges,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/checkeripranges",
}
if input == nil {
input = &GetCheckerIpRangesInput{}
}
output = &GetCheckerIpRangesOutput{}
req = c.newRequest(op, input, output)
return
}
// GetCheckerIpRanges API operation for Amazon Route 53.
//
//
// GetCheckerIpRanges still works, but we recommend that you download ip-ranges.json,
// which includes IP address ranges for all AWS services. For more information,
// see IP Address Ranges of Amazon Route 53 Servers (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/route-53-ip-addresses.html)
// in the Amazon Route 53 Developer Guide.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetCheckerIpRanges for usage and error information.
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetCheckerIpRanges
func (c *Route53) GetCheckerIpRanges(input *GetCheckerIpRangesInput) (*GetCheckerIpRangesOutput, error) {
req, out := c.GetCheckerIpRangesRequest(input)
return out, req.Send()
}
// GetCheckerIpRangesWithContext is the same as GetCheckerIpRanges with the addition of
// the ability to pass a context and additional request options.
//
// See GetCheckerIpRanges for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetCheckerIpRangesWithContext(ctx aws.Context, input *GetCheckerIpRangesInput, opts ...request.Option) (*GetCheckerIpRangesOutput, error) {
req, out := c.GetCheckerIpRangesRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetGeoLocation = "GetGeoLocation"
// GetGeoLocationRequest generates a "aws/request.Request" representing the
// client's request for the GetGeoLocation operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetGeoLocation for more information on using the GetGeoLocation
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetGeoLocationRequest method.
// req, resp := client.GetGeoLocationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetGeoLocation
func (c *Route53) GetGeoLocationRequest(input *GetGeoLocationInput) (req *request.Request, output *GetGeoLocationOutput) {
op := &request.Operation{
Name: opGetGeoLocation,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/geolocation",
}
if input == nil {
input = &GetGeoLocationInput{}
}
output = &GetGeoLocationOutput{}
req = c.newRequest(op, input, output)
return
}
// GetGeoLocation API operation for Amazon Route 53.
//
// Gets information about whether a specified geographic location is supported
// for Amazon Route 53 geolocation resource record sets.
//
// Use the following syntax to determine whether a continent is supported for
// geolocation:
//
// GET /2013-04-01/geolocation?continentcode=two-letter abbreviation for a continent
//
// Use the following syntax to determine whether a country is supported for
// geolocation:
//
// GET /2013-04-01/geolocation?countrycode=two-character country code
//
// Use the following syntax to determine whether a subdivision of a country
// is supported for geolocation:
//
// GET /2013-04-01/geolocation?countrycode=two-character country code&subdivisioncode=subdivision
// code
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetGeoLocation for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchGeoLocation "NoSuchGeoLocation"
// Amazon Route 53 doesn't support the specified geographic location.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetGeoLocation
func (c *Route53) GetGeoLocation(input *GetGeoLocationInput) (*GetGeoLocationOutput, error) {
req, out := c.GetGeoLocationRequest(input)
return out, req.Send()
}
// GetGeoLocationWithContext is the same as GetGeoLocation with the addition of
// the ability to pass a context and additional request options.
//
// See GetGeoLocation for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetGeoLocationWithContext(ctx aws.Context, input *GetGeoLocationInput, opts ...request.Option) (*GetGeoLocationOutput, error) {
req, out := c.GetGeoLocationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetHealthCheck = "GetHealthCheck"
// GetHealthCheckRequest generates a "aws/request.Request" representing the
// client's request for the GetHealthCheck operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetHealthCheck for more information on using the GetHealthCheck
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetHealthCheckRequest method.
// req, resp := client.GetHealthCheckRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheck
func (c *Route53) GetHealthCheckRequest(input *GetHealthCheckInput) (req *request.Request, output *GetHealthCheckOutput) {
op := &request.Operation{
Name: opGetHealthCheck,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}",
}
if input == nil {
input = &GetHealthCheckInput{}
}
output = &GetHealthCheckOutput{}
req = c.newRequest(op, input, output)
return
}
// GetHealthCheck API operation for Amazon Route 53.
//
// Gets information about a specified health check.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetHealthCheck for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHealthCheck "NoSuchHealthCheck"
// No health check exists with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeIncompatibleVersion "IncompatibleVersion"
// The resource you're trying to access is unsupported on this Amazon Route
// 53 endpoint.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheck
func (c *Route53) GetHealthCheck(input *GetHealthCheckInput) (*GetHealthCheckOutput, error) {
req, out := c.GetHealthCheckRequest(input)
return out, req.Send()
}
// GetHealthCheckWithContext is the same as GetHealthCheck with the addition of
// the ability to pass a context and additional request options.
//
// See GetHealthCheck for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetHealthCheckWithContext(ctx aws.Context, input *GetHealthCheckInput, opts ...request.Option) (*GetHealthCheckOutput, error) {
req, out := c.GetHealthCheckRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetHealthCheckCount = "GetHealthCheckCount"
// GetHealthCheckCountRequest generates a "aws/request.Request" representing the
// client's request for the GetHealthCheckCount operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetHealthCheckCount for more information on using the GetHealthCheckCount
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetHealthCheckCountRequest method.
// req, resp := client.GetHealthCheckCountRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheckCount
func (c *Route53) GetHealthCheckCountRequest(input *GetHealthCheckCountInput) (req *request.Request, output *GetHealthCheckCountOutput) {
op := &request.Operation{
Name: opGetHealthCheckCount,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/healthcheckcount",
}
if input == nil {
input = &GetHealthCheckCountInput{}
}
output = &GetHealthCheckCountOutput{}
req = c.newRequest(op, input, output)
return
}
// GetHealthCheckCount API operation for Amazon Route 53.
//
// Retrieves the number of health checks that are associated with the current
// AWS account.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetHealthCheckCount for usage and error information.
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheckCount
func (c *Route53) GetHealthCheckCount(input *GetHealthCheckCountInput) (*GetHealthCheckCountOutput, error) {
req, out := c.GetHealthCheckCountRequest(input)
return out, req.Send()
}
// GetHealthCheckCountWithContext is the same as GetHealthCheckCount with the addition of
// the ability to pass a context and additional request options.
//
// See GetHealthCheckCount for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetHealthCheckCountWithContext(ctx aws.Context, input *GetHealthCheckCountInput, opts ...request.Option) (*GetHealthCheckCountOutput, error) {
req, out := c.GetHealthCheckCountRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetHealthCheckLastFailureReason = "GetHealthCheckLastFailureReason"
// GetHealthCheckLastFailureReasonRequest generates a "aws/request.Request" representing the
// client's request for the GetHealthCheckLastFailureReason operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetHealthCheckLastFailureReason for more information on using the GetHealthCheckLastFailureReason
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetHealthCheckLastFailureReasonRequest method.
// req, resp := client.GetHealthCheckLastFailureReasonRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheckLastFailureReason
func (c *Route53) GetHealthCheckLastFailureReasonRequest(input *GetHealthCheckLastFailureReasonInput) (req *request.Request, output *GetHealthCheckLastFailureReasonOutput) {
op := &request.Operation{
Name: opGetHealthCheckLastFailureReason,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}/lastfailurereason",
}
if input == nil {
input = &GetHealthCheckLastFailureReasonInput{}
}
output = &GetHealthCheckLastFailureReasonOutput{}
req = c.newRequest(op, input, output)
return
}
// GetHealthCheckLastFailureReason API operation for Amazon Route 53.
//
// Gets the reason that a specified health check failed most recently.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetHealthCheckLastFailureReason for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHealthCheck "NoSuchHealthCheck"
// No health check exists with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheckLastFailureReason
func (c *Route53) GetHealthCheckLastFailureReason(input *GetHealthCheckLastFailureReasonInput) (*GetHealthCheckLastFailureReasonOutput, error) {
req, out := c.GetHealthCheckLastFailureReasonRequest(input)
return out, req.Send()
}
// GetHealthCheckLastFailureReasonWithContext is the same as GetHealthCheckLastFailureReason with the addition of
// the ability to pass a context and additional request options.
//
// See GetHealthCheckLastFailureReason for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetHealthCheckLastFailureReasonWithContext(ctx aws.Context, input *GetHealthCheckLastFailureReasonInput, opts ...request.Option) (*GetHealthCheckLastFailureReasonOutput, error) {
req, out := c.GetHealthCheckLastFailureReasonRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetHealthCheckStatus = "GetHealthCheckStatus"
// GetHealthCheckStatusRequest generates a "aws/request.Request" representing the
// client's request for the GetHealthCheckStatus operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetHealthCheckStatus for more information on using the GetHealthCheckStatus
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetHealthCheckStatusRequest method.
// req, resp := client.GetHealthCheckStatusRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheckStatus
func (c *Route53) GetHealthCheckStatusRequest(input *GetHealthCheckStatusInput) (req *request.Request, output *GetHealthCheckStatusOutput) {
op := &request.Operation{
Name: opGetHealthCheckStatus,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/healthcheck/{HealthCheckId}/status",
}
if input == nil {
input = &GetHealthCheckStatusInput{}
}
output = &GetHealthCheckStatusOutput{}
req = c.newRequest(op, input, output)
return
}
// GetHealthCheckStatus API operation for Amazon Route 53.
//
// Gets status of a specified health check.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetHealthCheckStatus for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHealthCheck "NoSuchHealthCheck"
// No health check exists with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHealthCheckStatus
func (c *Route53) GetHealthCheckStatus(input *GetHealthCheckStatusInput) (*GetHealthCheckStatusOutput, error) {
req, out := c.GetHealthCheckStatusRequest(input)
return out, req.Send()
}
// GetHealthCheckStatusWithContext is the same as GetHealthCheckStatus with the addition of
// the ability to pass a context and additional request options.
//
// See GetHealthCheckStatus for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetHealthCheckStatusWithContext(ctx aws.Context, input *GetHealthCheckStatusInput, opts ...request.Option) (*GetHealthCheckStatusOutput, error) {
req, out := c.GetHealthCheckStatusRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetHostedZone = "GetHostedZone"
// GetHostedZoneRequest generates a "aws/request.Request" representing the
// client's request for the GetHostedZone operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetHostedZone for more information on using the GetHostedZone
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetHostedZoneRequest method.
// req, resp := client.GetHostedZoneRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHostedZone
func (c *Route53) GetHostedZoneRequest(input *GetHostedZoneInput) (req *request.Request, output *GetHostedZoneOutput) {
op := &request.Operation{
Name: opGetHostedZone,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/hostedzone/{Id}",
}
if input == nil {
input = &GetHostedZoneInput{}
}
output = &GetHostedZoneOutput{}
req = c.newRequest(op, input, output)
return
}
// GetHostedZone API operation for Amazon Route 53.
//
// Gets information about a specified hosted zone including the four name servers
// assigned to the hosted zone.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetHostedZone for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHostedZone
func (c *Route53) GetHostedZone(input *GetHostedZoneInput) (*GetHostedZoneOutput, error) {
req, out := c.GetHostedZoneRequest(input)
return out, req.Send()
}
// GetHostedZoneWithContext is the same as GetHostedZone with the addition of
// the ability to pass a context and additional request options.
//
// See GetHostedZone for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetHostedZoneWithContext(ctx aws.Context, input *GetHostedZoneInput, opts ...request.Option) (*GetHostedZoneOutput, error) {
req, out := c.GetHostedZoneRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetHostedZoneCount = "GetHostedZoneCount"
// GetHostedZoneCountRequest generates a "aws/request.Request" representing the
// client's request for the GetHostedZoneCount operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetHostedZoneCount for more information on using the GetHostedZoneCount
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetHostedZoneCountRequest method.
// req, resp := client.GetHostedZoneCountRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHostedZoneCount
func (c *Route53) GetHostedZoneCountRequest(input *GetHostedZoneCountInput) (req *request.Request, output *GetHostedZoneCountOutput) {
op := &request.Operation{
Name: opGetHostedZoneCount,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/hostedzonecount",
}
if input == nil {
input = &GetHostedZoneCountInput{}
}
output = &GetHostedZoneCountOutput{}
req = c.newRequest(op, input, output)
return
}
// GetHostedZoneCount API operation for Amazon Route 53.
//
// Retrieves the number of hosted zones that are associated with the current
// AWS account.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetHostedZoneCount for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHostedZoneCount
func (c *Route53) GetHostedZoneCount(input *GetHostedZoneCountInput) (*GetHostedZoneCountOutput, error) {
req, out := c.GetHostedZoneCountRequest(input)
return out, req.Send()
}
// GetHostedZoneCountWithContext is the same as GetHostedZoneCount with the addition of
// the ability to pass a context and additional request options.
//
// See GetHostedZoneCount for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetHostedZoneCountWithContext(ctx aws.Context, input *GetHostedZoneCountInput, opts ...request.Option) (*GetHostedZoneCountOutput, error) {
req, out := c.GetHostedZoneCountRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetHostedZoneLimit = "GetHostedZoneLimit"
// GetHostedZoneLimitRequest generates a "aws/request.Request" representing the
// client's request for the GetHostedZoneLimit operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetHostedZoneLimit for more information on using the GetHostedZoneLimit
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetHostedZoneLimitRequest method.
// req, resp := client.GetHostedZoneLimitRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHostedZoneLimit
func (c *Route53) GetHostedZoneLimitRequest(input *GetHostedZoneLimitInput) (req *request.Request, output *GetHostedZoneLimitOutput) {
op := &request.Operation{
Name: opGetHostedZoneLimit,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/hostedzonelimit/{Id}/{Type}",
}
if input == nil {
input = &GetHostedZoneLimitInput{}
}
output = &GetHostedZoneLimitOutput{}
req = c.newRequest(op, input, output)
return
}
// GetHostedZoneLimit API operation for Amazon Route 53.
//
// Gets the specified limit for a specified hosted zone, for example, the maximum
// number of records that you can create in the hosted zone.
//
// For the default limit, see Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide. To request a higher limit, open a
// case (https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&limitType=service-code-route53).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetHostedZoneLimit for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchHostedZone "NoSuchHostedZone"
// No hosted zone exists with the ID that you specified.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// * ErrCodeHostedZoneNotPrivate "HostedZoneNotPrivate"
// The specified hosted zone is a public hosted zone, not a private hosted zone.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetHostedZoneLimit
func (c *Route53) GetHostedZoneLimit(input *GetHostedZoneLimitInput) (*GetHostedZoneLimitOutput, error) {
req, out := c.GetHostedZoneLimitRequest(input)
return out, req.Send()
}
// GetHostedZoneLimitWithContext is the same as GetHostedZoneLimit with the addition of
// the ability to pass a context and additional request options.
//
// See GetHostedZoneLimit for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetHostedZoneLimitWithContext(ctx aws.Context, input *GetHostedZoneLimitInput, opts ...request.Option) (*GetHostedZoneLimitOutput, error) {
req, out := c.GetHostedZoneLimitRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetQueryLoggingConfig = "GetQueryLoggingConfig"
// GetQueryLoggingConfigRequest generates a "aws/request.Request" representing the
// client's request for the GetQueryLoggingConfig operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetQueryLoggingConfig for more information on using the GetQueryLoggingConfig
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetQueryLoggingConfigRequest method.
// req, resp := client.GetQueryLoggingConfigRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetQueryLoggingConfig
func (c *Route53) GetQueryLoggingConfigRequest(input *GetQueryLoggingConfigInput) (req *request.Request, output *GetQueryLoggingConfigOutput) {
op := &request.Operation{
Name: opGetQueryLoggingConfig,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/queryloggingconfig/{Id}",
}
if input == nil {
input = &GetQueryLoggingConfigInput{}
}
output = &GetQueryLoggingConfigOutput{}
req = c.newRequest(op, input, output)
return
}
// GetQueryLoggingConfig API operation for Amazon Route 53.
//
// Gets information about a specified configuration for DNS query logging.
//
// For more information about DNS query logs, see CreateQueryLoggingConfig (https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateQueryLoggingConfig.html)
// and Logging DNS Queries (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/query-logs.html).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetQueryLoggingConfig for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchQueryLoggingConfig "NoSuchQueryLoggingConfig"
// There is no DNS query logging configuration with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetQueryLoggingConfig
func (c *Route53) GetQueryLoggingConfig(input *GetQueryLoggingConfigInput) (*GetQueryLoggingConfigOutput, error) {
req, out := c.GetQueryLoggingConfigRequest(input)
return out, req.Send()
}
// GetQueryLoggingConfigWithContext is the same as GetQueryLoggingConfig with the addition of
// the ability to pass a context and additional request options.
//
// See GetQueryLoggingConfig for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetQueryLoggingConfigWithContext(ctx aws.Context, input *GetQueryLoggingConfigInput, opts ...request.Option) (*GetQueryLoggingConfigOutput, error) {
req, out := c.GetQueryLoggingConfigRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetReusableDelegationSet = "GetReusableDelegationSet"
// GetReusableDelegationSetRequest generates a "aws/request.Request" representing the
// client's request for the GetReusableDelegationSet operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetReusableDelegationSet for more information on using the GetReusableDelegationSet
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetReusableDelegationSetRequest method.
// req, resp := client.GetReusableDelegationSetRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetReusableDelegationSet
func (c *Route53) GetReusableDelegationSetRequest(input *GetReusableDelegationSetInput) (req *request.Request, output *GetReusableDelegationSetOutput) {
op := &request.Operation{
Name: opGetReusableDelegationSet,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/delegationset/{Id}",
}
if input == nil {
input = &GetReusableDelegationSetInput{}
}
output = &GetReusableDelegationSetOutput{}
req = c.newRequest(op, input, output)
return
}
// GetReusableDelegationSet API operation for Amazon Route 53.
//
// Retrieves information about a specified reusable delegation set, including
// the four name servers that are assigned to the delegation set.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Amazon Route 53's
// API operation GetReusableDelegationSet for usage and error information.
//
// Returned Error Codes:
// * ErrCodeNoSuchDelegationSet "NoSuchDelegationSet"
// A reusable delegation set with the specified ID does not exist.
//
// * ErrCodeDelegationSetNotReusable "DelegationSetNotReusable"
// A reusable delegation set with the specified ID does not exist.
//
// * ErrCodeInvalidInput "InvalidInput"
// The input is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetReusableDelegationSet
func (c *Route53) GetReusableDelegationSet(input *GetReusableDelegationSetInput) (*GetReusableDelegationSetOutput, error) {
req, out := c.GetReusableDelegationSetRequest(input)
return out, req.Send()
}
// GetReusableDelegationSetWithContext is the same as GetReusableDelegationSet with the addition of
// the ability to pass a context and additional request options.
//
// See GetReusableDelegationSet for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func (c *Route53) GetReusableDelegationSetWithContext(ctx aws.Context, input *GetReusableDelegationSetInput, opts ...request.Option) (*GetReusableDelegationSetOutput, error) {
req, out := c.GetReusableDelegationSetRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetReusableDelegationSetLimit = "GetReusableDelegationSetLimit"
// GetReusableDelegationSetLimitRequest generates a "aws/request.Request" representing the
// client's request for the GetReusableDelegationSetLimit operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See GetReusableDelegationSetLimit for more information on using the GetReusableDelegationSetLimit
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the GetReusableDelegationSetLimitRequest method.
// req, resp := client.GetReusableDelegationSetLimitRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/GetReusableDelegationSetLimit
func (c *Route53) GetReusableDelegationSetLimitRequest(input *GetReusableDelegationSetLimitInput) (req *request.Request, output *GetReusableDelegationSetLimitOutput) {
op := &request.Operation{
Name: opGetReusableDelegationSetLimit,
HTTPMethod: "GET",
HTTPPath: "/2013-04-01/reusabledelegationsetlimit/{Id}/{Type}",
}
if input == nil {
input = &GetReusableDelegationSetLimitInput{}
}
output = &GetReusableDelegationSetLimitOutput{}
req = c.newRequest(op, input, output)
return
}
// GetReusableDelegationSetLimit API operation for Amazon Route 53.
//
// Gets the maximum number of hosted zones that you can associate with the specified
// reusable delegation set.
//
// For the default limit, see Limits (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html)
// in the Amazon Route 53 Developer Guide. To request a higher limit, open a
// case (https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&limitType=service-code-route53).
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//