diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
 
 ## Version
 
-`1.3.5`
+`1.3.6`
 
 
 ## Description
diff --git a/amazonka-ec2.cabal b/amazonka-ec2.cabal
--- a/amazonka-ec2.cabal
+++ b/amazonka-ec2.cabal
@@ -1,5 +1,5 @@
 name:                  amazonka-ec2
-version:               1.3.5
+version:               1.3.6
 synopsis:              Amazon Elastic Compute Cloud SDK.
 homepage:              https://github.com/brendanhay/amazonka
 bug-reports:           https://github.com/brendanhay/amazonka/issues
@@ -237,7 +237,7 @@
         , Network.AWS.EC2.Types.Sum
 
     build-depends:
-          amazonka-core == 1.3.5.*
+          amazonka-core == 1.3.6.*
         , base          >= 4.7     && < 5
 
 test-suite amazonka-ec2-test
@@ -257,9 +257,9 @@
         , Test.AWS.EC2.Internal
 
     build-depends:
-          amazonka-core == 1.3.5.*
-        , amazonka-test == 1.3.5.*
-        , amazonka-ec2 == 1.3.5.*
+          amazonka-core == 1.3.6.*
+        , amazonka-test == 1.3.6.*
+        , amazonka-ec2 == 1.3.6.*
         , base
         , bytestring
         , lens
diff --git a/gen/Network/AWS/EC2/CreateCustomerGateway.hs b/gen/Network/AWS/EC2/CreateCustomerGateway.hs
--- a/gen/Network/AWS/EC2/CreateCustomerGateway.hs
+++ b/gen/Network/AWS/EC2/CreateCustomerGateway.hs
@@ -23,8 +23,7 @@
 -- (The device on the AWS side of the VPN connection is the virtual private
 -- gateway.) You must provide the Internet-routable IP address of the
 -- customer gateway\'s external interface. The IP address must be static
--- and can\'t be behind a device performing network address translation
--- (NAT).
+-- and may be behind a device performing network address translation (NAT).
 --
 -- For devices that use Border Gateway Protocol (BGP), you can also provide
 -- the device\'s BGP Autonomous System Number (ASN). You can use an
diff --git a/gen/Network/AWS/EC2/CreateSubnet.hs b/gen/Network/AWS/EC2/CreateSubnet.hs
--- a/gen/Network/AWS/EC2/CreateSubnet.hs
+++ b/gen/Network/AWS/EC2/CreateSubnet.hs
@@ -105,7 +105,9 @@
 
 -- | The Availability Zone for the subnet.
 --
--- Default: Amazon EC2 selects one for you (recommended).
+-- Default: AWS selects one for you. If you create more than one subnet in
+-- your VPC, we may not necessarily select a different zone for each
+-- subnet.
 cssAvailabilityZone :: Lens' CreateSubnet (Maybe Text)
 cssAvailabilityZone = lens _cssAvailabilityZone (\ s a -> s{_cssAvailabilityZone = a});
 
diff --git a/gen/Network/AWS/EC2/CreateTags.hs b/gen/Network/AWS/EC2/CreateTags.hs
--- a/gen/Network/AWS/EC2/CreateTags.hs
+++ b/gen/Network/AWS/EC2/CreateTags.hs
@@ -25,6 +25,10 @@
 --
 -- For more information about tags, see
 -- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html Tagging Your Resources>
+-- in the /Amazon Elastic Compute Cloud User Guide/. For more information
+-- about creating IAM policies that control users\' access to resources
+-- based on tags, see
+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-iam-actions-resources.html Supported Resource-Level Permissions for Amazon EC2 API Actions>
 -- in the /Amazon Elastic Compute Cloud User Guide/.
 --
 -- /See:/ <http://docs.aws.amazon.com/AWSEC2/latest/APIReference/ApiReference-query-CreateTags.html AWS API Reference> for CreateTags.
diff --git a/gen/Network/AWS/EC2/DescribeInstances.hs b/gen/Network/AWS/EC2/DescribeInstances.hs
--- a/gen/Network/AWS/EC2/DescribeInstances.hs
+++ b/gen/Network/AWS/EC2/DescribeInstances.hs
@@ -258,7 +258,7 @@
 -- -   'network-interface.vpc-id' - The ID of the VPC for the network
 --     interface.
 --
--- -   'network-interface.network-interface.id' - The ID of the network
+-- -   'network-interface.network-interface-id' - The ID of the network
 --     interface.
 --
 -- -   'network-interface.owner-id' - The ID of the owner of the network
diff --git a/gen/Network/AWS/EC2/DescribeSpotInstanceRequests.hs b/gen/Network/AWS/EC2/DescribeSpotInstanceRequests.hs
--- a/gen/Network/AWS/EC2/DescribeSpotInstanceRequests.hs
+++ b/gen/Network/AWS/EC2/DescribeSpotInstanceRequests.hs
@@ -120,7 +120,7 @@
 -- -   'launch.image-id' - The ID of the AMI.
 --
 -- -   'launch.instance-type' - The type of instance (for example,
---     'm1.small').
+--     'm3.medium').
 --
 -- -   'launch.kernel-id' - The kernel ID.
 --
diff --git a/gen/Network/AWS/EC2/DescribeSpotPriceHistory.hs b/gen/Network/AWS/EC2/DescribeSpotPriceHistory.hs
--- a/gen/Network/AWS/EC2/DescribeSpotPriceHistory.hs
+++ b/gen/Network/AWS/EC2/DescribeSpotPriceHistory.hs
@@ -131,7 +131,7 @@
 -- -   'availability-zone' - The Availability Zone for which prices should
 --     be returned.
 --
--- -   'instance-type' - The type of instance (for example, 'm1.small').
+-- -   'instance-type' - The type of instance (for example, 'm3.medium').
 --
 -- -   'product-description' - The product description for the Spot price
 --     ('Linux\/UNIX' | 'SUSE Linux' | 'Windows' |
diff --git a/gen/Network/AWS/EC2/ModifyVPCAttribute.hs b/gen/Network/AWS/EC2/ModifyVPCAttribute.hs
--- a/gen/Network/AWS/EC2/ModifyVPCAttribute.hs
+++ b/gen/Network/AWS/EC2/ModifyVPCAttribute.hs
@@ -72,7 +72,9 @@
 -- If enabled, instances in the VPC get DNS hostnames; otherwise, they do
 -- not.
 --
--- You can only enable DNS hostnames if you also enable DNS support.
+-- You cannot modify the DNS resolution and DNS hostnames attributes in the
+-- same request. Use separate requests for each attribute. You can only
+-- enable DNS hostnames if you\'ve enabled DNS support.
 mvaEnableDNSHostnames :: Lens' ModifyVPCAttribute (Maybe AttributeBooleanValue)
 mvaEnableDNSHostnames = lens _mvaEnableDNSHostnames (\ s a -> s{_mvaEnableDNSHostnames = a});
 
@@ -82,6 +84,9 @@
 -- the VPC network range \"plus two\" will succeed. If disabled, the Amazon
 -- provided DNS service in the VPC that resolves public DNS hostnames to IP
 -- addresses is not enabled.
+--
+-- You cannot modify the DNS resolution and DNS hostnames attributes in the
+-- same request. Use separate requests for each attribute.
 mvaEnableDNSSupport :: Lens' ModifyVPCAttribute (Maybe AttributeBooleanValue)
 mvaEnableDNSSupport = lens _mvaEnableDNSSupport (\ s a -> s{_mvaEnableDNSSupport = a});
 
diff --git a/gen/Network/AWS/EC2/RequestSpotInstances.hs b/gen/Network/AWS/EC2/RequestSpotInstances.hs
--- a/gen/Network/AWS/EC2/RequestSpotInstances.hs
+++ b/gen/Network/AWS/EC2/RequestSpotInstances.hs
@@ -129,7 +129,7 @@
 -- terminates.
 --
 -- Note that you can\'t specify an Availability Zone group or a launch
--- group if you specify a required duration.
+-- group if you specify a duration.
 rsiBlockDurationMinutes :: Lens' RequestSpotInstances (Maybe Int)
 rsiBlockDurationMinutes = lens _rsiBlockDurationMinutes (\ s a -> s{_rsiBlockDurationMinutes = a});
 
diff --git a/gen/Network/AWS/EC2/Types/Product.hs b/gen/Network/AWS/EC2/Types/Product.hs
--- a/gen/Network/AWS/EC2/Types/Product.hs
+++ b/gen/Network/AWS/EC2/Types/Product.hs
@@ -3412,7 +3412,8 @@
     }
 
 -- | The public DNS name assigned to the instance. This name is not available
--- until the instance enters the 'running' state.
+-- until the instance enters the 'running' state. For EC2-VPC, this name is
+-- only available if you\'ve enabled DNS hostnames for your VPC.
 insPublicDNSName :: Lens' Instance (Maybe Text)
 insPublicDNSName = lens _insPublicDNSName (\ s a -> s{_insPublicDNSName = a});
 
@@ -3424,7 +3425,8 @@
 insSecurityGroups :: Lens' Instance [GroupIdentifier]
 insSecurityGroups = lens _insSecurityGroups (\ s a -> s{_insSecurityGroups = a}) . _Default . _Coerce;
 
--- | The idempotency token you provided when you launched the instance.
+-- | The idempotency token you provided when you launched the instance, if
+-- applicable.
 insClientToken :: Lens' Instance (Maybe Text)
 insClientToken = lens _insClientToken (\ s a -> s{_insClientToken = a});
 
@@ -3438,7 +3440,7 @@
 insSourceDestCheck :: Lens' Instance (Maybe Bool)
 insSourceDestCheck = lens _insSourceDestCheck (\ s a -> s{_insSourceDestCheck = a});
 
--- | The ID of the VPC in which the instance is running.
+-- | [EC2-VPC] The ID of the VPC in which the instance is running.
 insVPCId :: Lens' Instance (Maybe Text)
 insVPCId = lens _insVPCId (\ s a -> s{_insVPCId = a});
 
@@ -3451,15 +3453,15 @@
 insNetworkInterfaces :: Lens' Instance [InstanceNetworkInterface]
 insNetworkInterfaces = lens _insNetworkInterfaces (\ s a -> s{_insNetworkInterfaces = a}) . _Default . _Coerce;
 
--- | The RAM disk associated with this instance.
+-- | The RAM disk associated with this instance, if applicable.
 insRAMDiskId :: Lens' Instance (Maybe Text)
 insRAMDiskId = lens _insRAMDiskId (\ s a -> s{_insRAMDiskId = a});
 
--- | The ID of the subnet in which the instance is running.
+-- | [EC2-VPC] The ID of the subnet in which the instance is running.
 insSubnetId :: Lens' Instance (Maybe Text)
 insSubnetId = lens _insSubnetId (\ s a -> s{_insSubnetId = a});
 
--- | The kernel associated with this instance.
+-- | The kernel associated with this instance, if applicable.
 insKernelId :: Lens' Instance (Maybe Text)
 insKernelId = lens _insKernelId (\ s a -> s{_insKernelId = a});
 
@@ -3488,7 +3490,7 @@
 insInstanceLifecycle :: Lens' Instance (Maybe InstanceLifecycleType)
 insInstanceLifecycle = lens _insInstanceLifecycle (\ s a -> s{_insInstanceLifecycle = a});
 
--- | The IAM instance profile associated with the instance.
+-- | The IAM instance profile associated with the instance, if applicable.
 insIAMInstanceProfile :: Lens' Instance (Maybe IAMInstanceProfile)
 insIAMInstanceProfile = lens _insIAMInstanceProfile (\ s a -> s{_insIAMInstanceProfile = a});
 
@@ -3496,17 +3498,18 @@
 insPrivateIPAddress :: Lens' Instance (Maybe Text)
 insPrivateIPAddress = lens _insPrivateIPAddress (\ s a -> s{_insPrivateIPAddress = a});
 
--- | The product codes attached to this instance.
+-- | The product codes attached to this instance, if applicable.
 insProductCodes :: Lens' Instance [ProductCode]
 insProductCodes = lens _insProductCodes (\ s a -> s{_insProductCodes = a}) . _Default . _Coerce;
 
--- | The ID of the Spot Instance request.
+-- | If the request is a Spot instance request, the ID of the request.
 insSpotInstanceRequestId :: Lens' Instance (Maybe Text)
 insSpotInstanceRequestId = lens _insSpotInstanceRequestId (\ s a -> s{_insSpotInstanceRequestId = a});
 
 -- | The private DNS name assigned to the instance. This DNS name can only be
 -- used inside the Amazon EC2 network. This name is not available until the
--- instance enters the 'running' state.
+-- instance enters the 'running' state. For EC2-VPC, this name is only
+-- available if you\'ve enabled DNS hostnames for your VPC.
 insPrivateDNSName :: Lens' Instance (Maybe Text)
 insPrivateDNSName = lens _insPrivateDNSName (\ s a -> s{_insPrivateDNSName = a});
 
@@ -3518,7 +3521,7 @@
 insBlockDeviceMappings :: Lens' Instance [InstanceBlockDeviceMapping]
 insBlockDeviceMappings = lens _insBlockDeviceMappings (\ s a -> s{_insBlockDeviceMappings = a}) . _Default . _Coerce;
 
--- | The public IP address assigned to the instance.
+-- | The public IP address assigned to the instance, if applicable.
 insPublicIPAddress :: Lens' Instance (Maybe Text)
 insPublicIPAddress = lens _insPublicIPAddress (\ s a -> s{_insPublicIPAddress = a});
 
@@ -3547,7 +3550,7 @@
 insLaunchTime :: Lens' Instance UTCTime
 insLaunchTime = lens _insLaunchTime (\ s a -> s{_insLaunchTime = a}) . _Time;
 
--- | The location where the instance launched.
+-- | The location where the instance launched, if applicable.
 insPlacement :: Lens' Instance Placement
 insPlacement = lens _insPlacement (\ s a -> s{_insPlacement = a});
 
@@ -8735,13 +8738,13 @@
 sirState :: Lens' SpotInstanceRequest (Maybe SpotInstanceState)
 sirState = lens _sirState (\ s a -> s{_sirState = a});
 
--- | If you specified a required duration and your request was fulfilled,
--- this is the fixed hourly price in effect for the Spot instance while it
--- runs.
+-- | If you specified a duration and your Spot instance request was
+-- fulfilled, this is the fixed hourly price in effect for the Spot
+-- instance while it runs.
 sirActualBlockHourlyPrice :: Lens' SpotInstanceRequest (Maybe Text)
 sirActualBlockHourlyPrice = lens _sirActualBlockHourlyPrice (\ s a -> s{_sirActualBlockHourlyPrice = a});
 
--- | The required duration for the Spot instance, in minutes.
+-- | The duration for the Spot instance, in minutes.
 sirBlockDurationMinutes :: Lens' SpotInstanceRequest (Maybe Int)
 sirBlockDurationMinutes = lens _sirBlockDurationMinutes (\ s a -> s{_sirBlockDurationMinutes = a});
 
@@ -8899,7 +8902,9 @@
 sisUpdateTime :: Lens' SpotInstanceStatus (Maybe UTCTime)
 sisUpdateTime = lens _sisUpdateTime (\ s a -> s{_sisUpdateTime = a}) . mapping _Time;
 
--- | The status code.
+-- | The status code. For a list of status codes, see
+-- <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html#spot-instance-bid-status-understand Spot Bid Status Codes>
+-- in the /Amazon Elastic Compute Cloud User Guide/.
 sisCode :: Lens' SpotInstanceStatus (Maybe Text)
 sisCode = lens _sisCode (\ s a -> s{_sisCode = a});
 
diff --git a/gen/Network/AWS/EC2/Types/Sum.hs b/gen/Network/AWS/EC2/Types/Sum.hs
--- a/gen/Network/AWS/EC2/Types/Sum.hs
+++ b/gen/Network/AWS/EC2/Types/Sum.hs
@@ -122,6 +122,7 @@
 data AttachmentStatus
     = Attached
     | Attaching
+    | Busy
     | Detached
     | Detaching
     deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)
@@ -130,15 +131,17 @@
     parser = takeLowerText >>= \case
         "attached" -> pure Attached
         "attaching" -> pure Attaching
+        "busy" -> pure Busy
         "detached" -> pure Detached
         "detaching" -> pure Detaching
         e -> fromTextError $ "Failure parsing AttachmentStatus from value: '" <> e
-           <> "'. Accepted values: attached, attaching, detached, detaching"
+           <> "'. Accepted values: attached, attaching, busy, detached, detaching"
 
 instance ToText AttachmentStatus where
     toText = \case
         Attached -> "attached"
         Attaching -> "attaching"
+        Busy -> "busy"
         Detached -> "detached"
         Detaching -> "detaching"
 
@@ -2319,6 +2322,7 @@
 data VolumeAttachmentState
     = VASAttached
     | VASAttaching
+    | VASBusy
     | VASDetached
     | VASDetaching
     deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)
@@ -2327,15 +2331,17 @@
     parser = takeLowerText >>= \case
         "attached" -> pure VASAttached
         "attaching" -> pure VASAttaching
+        "busy" -> pure VASBusy
         "detached" -> pure VASDetached
         "detaching" -> pure VASDetaching
         e -> fromTextError $ "Failure parsing VolumeAttachmentState from value: '" <> e
-           <> "'. Accepted values: attached, attaching, detached, detaching"
+           <> "'. Accepted values: attached, attaching, busy, detached, detaching"
 
 instance ToText VolumeAttachmentState where
     toText = \case
         VASAttached -> "attached"
         VASAttaching -> "attaching"
+        VASBusy -> "busy"
         VASDetached -> "detached"
         VASDetaching -> "detaching"
 
diff --git a/test/Test/AWS/EC2.hs b/test/Test/AWS/EC2.hs
--- a/test/Test/AWS/EC2.hs
+++ b/test/Test/AWS/EC2.hs
@@ -14,6 +14,7 @@
     , fixtures
     ) where
 
+import           Control.Lens
 import           Data.Time
 import           Network.AWS.EC2
 import           Network.AWS.Prelude
