diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
 
 ## Version
 
-`1.4.0`
+`1.4.1`
 
 
 ## Description
diff --git a/amazonka-datapipeline.cabal b/amazonka-datapipeline.cabal
--- a/amazonka-datapipeline.cabal
+++ b/amazonka-datapipeline.cabal
@@ -1,5 +1,5 @@
 name:                  amazonka-datapipeline
-version:               1.4.0
+version:               1.4.1
 synopsis:              Amazon Data Pipeline SDK.
 homepage:              https://github.com/brendanhay/amazonka
 bug-reports:           https://github.com/brendanhay/amazonka/issues
@@ -90,7 +90,7 @@
         , Network.AWS.DataPipeline.Types.Sum
 
     build-depends:
-          amazonka-core == 1.4.0.*
+          amazonka-core == 1.4.1.*
         , base          >= 4.7     && < 5
 
 test-suite amazonka-datapipeline-test
@@ -110,9 +110,9 @@
         , Test.AWS.DataPipeline.Internal
 
     build-depends:
-          amazonka-core == 1.4.0.*
-        , amazonka-test == 1.4.0.*
-        , amazonka-datapipeline == 1.4.0.*
+          amazonka-core == 1.4.1.*
+        , amazonka-test == 1.4.1.*
+        , amazonka-datapipeline == 1.4.1.*
         , base
         , bytestring
         , tasty
diff --git a/gen/Network/AWS/DataPipeline/ActivatePipeline.hs b/gen/Network/AWS/DataPipeline/ActivatePipeline.hs
--- a/gen/Network/AWS/DataPipeline/ActivatePipeline.hs
+++ b/gen/Network/AWS/DataPipeline/ActivatePipeline.hs
@@ -101,6 +101,8 @@
 
 instance Hashable ActivatePipeline
 
+instance NFData ActivatePipeline
+
 instance ToHeaders ActivatePipeline where
         toHeaders
           = const
@@ -147,3 +149,5 @@
 -- | The response status code.
 aprsResponseStatus :: Lens' ActivatePipelineResponse Int
 aprsResponseStatus = lens _aprsResponseStatus (\ s a -> s{_aprsResponseStatus = a});
+
+instance NFData ActivatePipelineResponse
diff --git a/gen/Network/AWS/DataPipeline/AddTags.hs b/gen/Network/AWS/DataPipeline/AddTags.hs
--- a/gen/Network/AWS/DataPipeline/AddTags.hs
+++ b/gen/Network/AWS/DataPipeline/AddTags.hs
@@ -83,6 +83,8 @@
 
 instance Hashable AddTags
 
+instance NFData AddTags
+
 instance ToHeaders AddTags where
         toHeaders
           = const
@@ -128,3 +130,5 @@
 -- | The response status code.
 atrsResponseStatus :: Lens' AddTagsResponse Int
 atrsResponseStatus = lens _atrsResponseStatus (\ s a -> s{_atrsResponseStatus = a});
+
+instance NFData AddTagsResponse
diff --git a/gen/Network/AWS/DataPipeline/CreatePipeline.hs b/gen/Network/AWS/DataPipeline/CreatePipeline.hs
--- a/gen/Network/AWS/DataPipeline/CreatePipeline.hs
+++ b/gen/Network/AWS/DataPipeline/CreatePipeline.hs
@@ -122,6 +122,8 @@
 
 instance Hashable CreatePipeline
 
+instance NFData CreatePipeline
+
 instance ToHeaders CreatePipeline where
         toHeaders
           = const
@@ -178,3 +180,5 @@
 -- example, 'df-06372391ZG65EXAMPLE'.
 cprsPipelineId :: Lens' CreatePipelineResponse Text
 cprsPipelineId = lens _cprsPipelineId (\ s a -> s{_cprsPipelineId = a});
+
+instance NFData CreatePipelineResponse
diff --git a/gen/Network/AWS/DataPipeline/DeactivatePipeline.hs b/gen/Network/AWS/DataPipeline/DeactivatePipeline.hs
--- a/gen/Network/AWS/DataPipeline/DeactivatePipeline.hs
+++ b/gen/Network/AWS/DataPipeline/DeactivatePipeline.hs
@@ -92,6 +92,8 @@
 
 instance Hashable DeactivatePipeline
 
+instance NFData DeactivatePipeline
+
 instance ToHeaders DeactivatePipeline where
         toHeaders
           = const
@@ -137,3 +139,5 @@
 -- | The response status code.
 drsResponseStatus :: Lens' DeactivatePipelineResponse Int
 drsResponseStatus = lens _drsResponseStatus (\ s a -> s{_drsResponseStatus = a});
+
+instance NFData DeactivatePipelineResponse
diff --git a/gen/Network/AWS/DataPipeline/DeletePipeline.hs b/gen/Network/AWS/DataPipeline/DeletePipeline.hs
--- a/gen/Network/AWS/DataPipeline/DeletePipeline.hs
+++ b/gen/Network/AWS/DataPipeline/DeletePipeline.hs
@@ -77,6 +77,8 @@
 
 instance Hashable DeletePipeline
 
+instance NFData DeletePipeline
+
 instance ToHeaders DeletePipeline where
         toHeaders
           = const
@@ -107,3 +109,5 @@
 deletePipelineResponse
     :: DeletePipelineResponse
 deletePipelineResponse = DeletePipelineResponse'
+
+instance NFData DeletePipelineResponse
diff --git a/gen/Network/AWS/DataPipeline/DescribeObjects.hs b/gen/Network/AWS/DataPipeline/DescribeObjects.hs
--- a/gen/Network/AWS/DataPipeline/DescribeObjects.hs
+++ b/gen/Network/AWS/DataPipeline/DescribeObjects.hs
@@ -126,6 +126,8 @@
 
 instance Hashable DescribeObjects
 
+instance NFData DescribeObjects
+
 instance ToHeaders DescribeObjects where
         toHeaders
           = const
@@ -200,3 +202,5 @@
 -- | An array of object definitions.
 dorsPipelineObjects :: Lens' DescribeObjectsResponse [PipelineObject]
 dorsPipelineObjects = lens _dorsPipelineObjects (\ s a -> s{_dorsPipelineObjects = a}) . _Coerce;
+
+instance NFData DescribeObjectsResponse
diff --git a/gen/Network/AWS/DataPipeline/DescribePipelines.hs b/gen/Network/AWS/DataPipeline/DescribePipelines.hs
--- a/gen/Network/AWS/DataPipeline/DescribePipelines.hs
+++ b/gen/Network/AWS/DataPipeline/DescribePipelines.hs
@@ -88,6 +88,8 @@
 
 instance Hashable DescribePipelines
 
+instance NFData DescribePipelines
+
 instance ToHeaders DescribePipelines where
         toHeaders
           = const
@@ -139,3 +141,5 @@
 -- | An array of descriptions for the specified pipelines.
 dprsPipelineDescriptionList :: Lens' DescribePipelinesResponse [PipelineDescription]
 dprsPipelineDescriptionList = lens _dprsPipelineDescriptionList (\ s a -> s{_dprsPipelineDescriptionList = a}) . _Coerce;
+
+instance NFData DescribePipelinesResponse
diff --git a/gen/Network/AWS/DataPipeline/EvaluateExpression.hs b/gen/Network/AWS/DataPipeline/EvaluateExpression.hs
--- a/gen/Network/AWS/DataPipeline/EvaluateExpression.hs
+++ b/gen/Network/AWS/DataPipeline/EvaluateExpression.hs
@@ -101,6 +101,8 @@
 
 instance Hashable EvaluateExpression
 
+instance NFData EvaluateExpression
+
 instance ToHeaders EvaluateExpression where
         toHeaders
           = const
@@ -156,3 +158,5 @@
 -- | The evaluated expression.
 eersEvaluatedExpression :: Lens' EvaluateExpressionResponse Text
 eersEvaluatedExpression = lens _eersEvaluatedExpression (\ s a -> s{_eersEvaluatedExpression = a});
+
+instance NFData EvaluateExpressionResponse
diff --git a/gen/Network/AWS/DataPipeline/GetPipelineDefinition.hs b/gen/Network/AWS/DataPipeline/GetPipelineDefinition.hs
--- a/gen/Network/AWS/DataPipeline/GetPipelineDefinition.hs
+++ b/gen/Network/AWS/DataPipeline/GetPipelineDefinition.hs
@@ -96,6 +96,8 @@
 
 instance Hashable GetPipelineDefinition
 
+instance NFData GetPipelineDefinition
+
 instance ToHeaders GetPipelineDefinition where
         toHeaders
           = const
@@ -165,3 +167,5 @@
 -- | The response status code.
 gpdrsResponseStatus :: Lens' GetPipelineDefinitionResponse Int
 gpdrsResponseStatus = lens _gpdrsResponseStatus (\ s a -> s{_gpdrsResponseStatus = a});
+
+instance NFData GetPipelineDefinitionResponse
diff --git a/gen/Network/AWS/DataPipeline/ListPipelines.hs b/gen/Network/AWS/DataPipeline/ListPipelines.hs
--- a/gen/Network/AWS/DataPipeline/ListPipelines.hs
+++ b/gen/Network/AWS/DataPipeline/ListPipelines.hs
@@ -94,6 +94,8 @@
 
 instance Hashable ListPipelines
 
+instance NFData ListPipelines
+
 instance ToHeaders ListPipelines where
         toHeaders
           = const
@@ -165,3 +167,5 @@
 -- < DescribePipelines> and < GetPipelineDefinition>.
 lprsPipelineIdList :: Lens' ListPipelinesResponse [PipelineIdName]
 lprsPipelineIdList = lens _lprsPipelineIdList (\ s a -> s{_lprsPipelineIdList = a}) . _Coerce;
+
+instance NFData ListPipelinesResponse
diff --git a/gen/Network/AWS/DataPipeline/PollForTask.hs b/gen/Network/AWS/DataPipeline/PollForTask.hs
--- a/gen/Network/AWS/DataPipeline/PollForTask.hs
+++ b/gen/Network/AWS/DataPipeline/PollForTask.hs
@@ -121,6 +121,8 @@
 
 instance Hashable PollForTask
 
+instance NFData PollForTask
+
 instance ToHeaders PollForTask where
         toHeaders
           = const
@@ -179,3 +181,5 @@
 -- | The response status code.
 pftrsResponseStatus :: Lens' PollForTaskResponse Int
 pftrsResponseStatus = lens _pftrsResponseStatus (\ s a -> s{_pftrsResponseStatus = a});
+
+instance NFData PollForTaskResponse
diff --git a/gen/Network/AWS/DataPipeline/PutPipelineDefinition.hs b/gen/Network/AWS/DataPipeline/PutPipelineDefinition.hs
--- a/gen/Network/AWS/DataPipeline/PutPipelineDefinition.hs
+++ b/gen/Network/AWS/DataPipeline/PutPipelineDefinition.hs
@@ -125,6 +125,8 @@
 
 instance Hashable PutPipelineDefinition
 
+instance NFData PutPipelineDefinition
+
 instance ToHeaders PutPipelineDefinition where
         toHeaders
           = const
@@ -202,3 +204,5 @@
 -- pipeline.
 ppdrsErrored :: Lens' PutPipelineDefinitionResponse Bool
 ppdrsErrored = lens _ppdrsErrored (\ s a -> s{_ppdrsErrored = a});
+
+instance NFData PutPipelineDefinitionResponse
diff --git a/gen/Network/AWS/DataPipeline/QueryObjects.hs b/gen/Network/AWS/DataPipeline/QueryObjects.hs
--- a/gen/Network/AWS/DataPipeline/QueryObjects.hs
+++ b/gen/Network/AWS/DataPipeline/QueryObjects.hs
@@ -137,6 +137,8 @@
 
 instance Hashable QueryObjects
 
+instance NFData QueryObjects
+
 instance ToHeaders QueryObjects where
         toHeaders
           = const
@@ -212,3 +214,5 @@
 -- | The response status code.
 qorsResponseStatus :: Lens' QueryObjectsResponse Int
 qorsResponseStatus = lens _qorsResponseStatus (\ s a -> s{_qorsResponseStatus = a});
+
+instance NFData QueryObjectsResponse
diff --git a/gen/Network/AWS/DataPipeline/RemoveTags.hs b/gen/Network/AWS/DataPipeline/RemoveTags.hs
--- a/gen/Network/AWS/DataPipeline/RemoveTags.hs
+++ b/gen/Network/AWS/DataPipeline/RemoveTags.hs
@@ -84,6 +84,8 @@
 
 instance Hashable RemoveTags
 
+instance NFData RemoveTags
+
 instance ToHeaders RemoveTags where
         toHeaders
           = const
@@ -129,3 +131,5 @@
 -- | The response status code.
 rtrsResponseStatus :: Lens' RemoveTagsResponse Int
 rtrsResponseStatus = lens _rtrsResponseStatus (\ s a -> s{_rtrsResponseStatus = a});
+
+instance NFData RemoveTagsResponse
diff --git a/gen/Network/AWS/DataPipeline/ReportTaskProgress.hs b/gen/Network/AWS/DataPipeline/ReportTaskProgress.hs
--- a/gen/Network/AWS/DataPipeline/ReportTaskProgress.hs
+++ b/gen/Network/AWS/DataPipeline/ReportTaskProgress.hs
@@ -100,6 +100,8 @@
 
 instance Hashable ReportTaskProgress
 
+instance NFData ReportTaskProgress
+
 instance ToHeaders ReportTaskProgress where
         toHeaders
           = const
@@ -156,3 +158,5 @@
 -- tasks.
 rtprsCanceled :: Lens' ReportTaskProgressResponse Bool
 rtprsCanceled = lens _rtprsCanceled (\ s a -> s{_rtprsCanceled = a});
+
+instance NFData ReportTaskProgressResponse
diff --git a/gen/Network/AWS/DataPipeline/ReportTaskRunnerHeartbeat.hs b/gen/Network/AWS/DataPipeline/ReportTaskRunnerHeartbeat.hs
--- a/gen/Network/AWS/DataPipeline/ReportTaskRunnerHeartbeat.hs
+++ b/gen/Network/AWS/DataPipeline/ReportTaskRunnerHeartbeat.hs
@@ -109,6 +109,8 @@
 
 instance Hashable ReportTaskRunnerHeartbeat
 
+instance NFData ReportTaskRunnerHeartbeat
+
 instance ToHeaders ReportTaskRunnerHeartbeat where
         toHeaders
           = const
@@ -165,3 +167,5 @@
 -- | Indicates whether the calling task runner should terminate.
 rtrhrsTerminate :: Lens' ReportTaskRunnerHeartbeatResponse Bool
 rtrhrsTerminate = lens _rtrhrsTerminate (\ s a -> s{_rtrhrsTerminate = a});
+
+instance NFData ReportTaskRunnerHeartbeatResponse
diff --git a/gen/Network/AWS/DataPipeline/SetStatus.hs b/gen/Network/AWS/DataPipeline/SetStatus.hs
--- a/gen/Network/AWS/DataPipeline/SetStatus.hs
+++ b/gen/Network/AWS/DataPipeline/SetStatus.hs
@@ -97,6 +97,8 @@
 
 instance Hashable SetStatus
 
+instance NFData SetStatus
+
 instance ToHeaders SetStatus where
         toHeaders
           = const
@@ -130,3 +132,5 @@
 setStatusResponse
     :: SetStatusResponse
 setStatusResponse = SetStatusResponse'
+
+instance NFData SetStatusResponse
diff --git a/gen/Network/AWS/DataPipeline/SetTaskStatus.hs b/gen/Network/AWS/DataPipeline/SetTaskStatus.hs
--- a/gen/Network/AWS/DataPipeline/SetTaskStatus.hs
+++ b/gen/Network/AWS/DataPipeline/SetTaskStatus.hs
@@ -127,6 +127,8 @@
 
 instance Hashable SetTaskStatus
 
+instance NFData SetTaskStatus
+
 instance ToHeaders SetTaskStatus where
         toHeaders
           = const
@@ -175,3 +177,5 @@
 -- | The response status code.
 stsrsResponseStatus :: Lens' SetTaskStatusResponse Int
 stsrsResponseStatus = lens _stsrsResponseStatus (\ s a -> s{_stsrsResponseStatus = a});
+
+instance NFData SetTaskStatusResponse
diff --git a/gen/Network/AWS/DataPipeline/Types.hs b/gen/Network/AWS/DataPipeline/Types.hs
--- a/gen/Network/AWS/DataPipeline/Types.hs
+++ b/gen/Network/AWS/DataPipeline/Types.hs
@@ -158,6 +158,8 @@
       | has (hasCode "ThrottlingException" . hasStatus 400) e =
           Just "throttling_exception"
       | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"
+      | has (hasStatus 504) e = Just "gateway_timeout"
+      | has (hasStatus 502) e = Just "bad_gateway"
       | has (hasStatus 503) e = Just "service_unavailable"
       | has (hasStatus 500) e = Just "general_server_error"
       | has (hasStatus 509) e = Just "limit_exceeded"
diff --git a/gen/Network/AWS/DataPipeline/Types/Product.hs b/gen/Network/AWS/DataPipeline/Types/Product.hs
--- a/gen/Network/AWS/DataPipeline/Types/Product.hs
+++ b/gen/Network/AWS/DataPipeline/Types/Product.hs
@@ -73,6 +73,8 @@
 
 instance Hashable Field
 
+instance NFData Field
+
 instance ToJSON Field where
         toJSON Field'{..}
           = object
@@ -124,6 +126,8 @@
 
 instance Hashable InstanceIdentity
 
+instance NFData InstanceIdentity
+
 instance ToJSON InstanceIdentity where
         toJSON InstanceIdentity'{..}
           = object
@@ -197,6 +201,8 @@
 
 instance Hashable Operator
 
+instance NFData Operator
+
 instance ToJSON Operator where
         toJSON Operator'{..}
           = object
@@ -245,6 +251,8 @@
 
 instance Hashable ParameterAttribute
 
+instance NFData ParameterAttribute
+
 instance ToJSON ParameterAttribute where
         toJSON ParameterAttribute'{..}
           = object
@@ -293,6 +301,8 @@
 
 instance Hashable ParameterObject
 
+instance NFData ParameterObject
+
 instance ToJSON ParameterObject where
         toJSON ParameterObject'{..}
           = object
@@ -342,6 +352,8 @@
 
 instance Hashable ParameterValue
 
+instance NFData ParameterValue
+
 instance ToJSON ParameterValue where
         toJSON ParameterValue'{..}
           = object
@@ -423,6 +435,8 @@
 
 instance Hashable PipelineDescription
 
+instance NFData PipelineDescription
+
 -- | Contains the name and identifier of a pipeline.
 --
 -- /See:/ 'pipelineIdName' smart constructor.
@@ -463,6 +477,8 @@
 
 instance Hashable PipelineIdName
 
+instance NFData PipelineIdName
+
 -- | Contains information about a pipeline object. This can be a logical,
 -- physical, or physical attempt pipeline object. The complete set of
 -- components of a pipeline defines the pipeline.
@@ -516,6 +532,8 @@
 
 instance Hashable PipelineObject
 
+instance NFData PipelineObject
+
 instance ToJSON PipelineObject where
         toJSON PipelineObject'{..}
           = object
@@ -549,6 +567,8 @@
 
 instance Hashable Query
 
+instance NFData Query
+
 instance ToJSON Query where
         toJSON Query'{..}
           = object
@@ -591,6 +611,8 @@
 
 instance Hashable Selector
 
+instance NFData Selector
+
 instance ToJSON Selector where
         toJSON Selector'{..}
           = object
@@ -647,6 +669,8 @@
 
 instance Hashable Tag
 
+instance NFData Tag
+
 instance ToJSON Tag where
         toJSON Tag'{..}
           = object
@@ -716,6 +740,8 @@
 
 instance Hashable TaskObject
 
+instance NFData TaskObject
+
 -- | Defines a validation error. Validation errors prevent pipeline
 -- activation. The set of validation errors that can be returned are
 -- defined by AWS Data Pipeline.
@@ -758,6 +784,8 @@
 
 instance Hashable ValidationError
 
+instance NFData ValidationError
+
 -- | Defines a validation warning. Validation warnings do not prevent
 -- pipeline activation. The set of validation warnings that can be returned
 -- are defined by AWS Data Pipeline.
@@ -799,3 +827,5 @@
                    (x .:? "warnings" .!= mempty) <*> (x .:? "id"))
 
 instance Hashable ValidationWarning
+
+instance NFData ValidationWarning
diff --git a/gen/Network/AWS/DataPipeline/Types/Sum.hs b/gen/Network/AWS/DataPipeline/Types/Sum.hs
--- a/gen/Network/AWS/DataPipeline/Types/Sum.hs
+++ b/gen/Network/AWS/DataPipeline/Types/Sum.hs
@@ -46,6 +46,7 @@
         OperatorRefEQ -> "REF_EQ"
 
 instance Hashable     OperatorType
+instance NFData       OperatorType
 instance ToByteString OperatorType
 instance ToQuery      OperatorType
 instance ToHeader     OperatorType
@@ -74,6 +75,7 @@
         Finished -> "FINISHED"
 
 instance Hashable     TaskStatus
+instance NFData       TaskStatus
 instance ToByteString TaskStatus
 instance ToQuery      TaskStatus
 instance ToHeader     TaskStatus
diff --git a/gen/Network/AWS/DataPipeline/ValidatePipelineDefinition.hs b/gen/Network/AWS/DataPipeline/ValidatePipelineDefinition.hs
--- a/gen/Network/AWS/DataPipeline/ValidatePipelineDefinition.hs
+++ b/gen/Network/AWS/DataPipeline/ValidatePipelineDefinition.hs
@@ -112,6 +112,8 @@
 
 instance Hashable ValidatePipelineDefinition
 
+instance NFData ValidatePipelineDefinition
+
 instance ToHeaders ValidatePipelineDefinition where
         toHeaders
           = const
@@ -185,3 +187,5 @@
 -- | Indicates whether there were validation errors.
 vpdrsErrored :: Lens' ValidatePipelineDefinitionResponse Bool
 vpdrsErrored = lens _vpdrsErrored (\ s a -> s{_vpdrsErrored = a});
+
+instance NFData ValidatePipelineDefinitionResponse
