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-elastictranscoder.cabal b/amazonka-elastictranscoder.cabal
--- a/amazonka-elastictranscoder.cabal
+++ b/amazonka-elastictranscoder.cabal
@@ -1,5 +1,5 @@
 name:                  amazonka-elastictranscoder
-version:               1.4.0
+version:               1.4.1
 synopsis:              Amazon Elastic Transcoder SDK.
 homepage:              https://github.com/brendanhay/amazonka
 bug-reports:           https://github.com/brendanhay/amazonka/issues
@@ -68,7 +68,7 @@
         , Network.AWS.ElasticTranscoder.Types.Sum
 
     build-depends:
-          amazonka-core == 1.4.0.*
+          amazonka-core == 1.4.1.*
         , base          >= 4.7     && < 5
 
 test-suite amazonka-elastictranscoder-test
@@ -88,9 +88,9 @@
         , Test.AWS.ElasticTranscoder.Internal
 
     build-depends:
-          amazonka-core == 1.4.0.*
-        , amazonka-test == 1.4.0.*
-        , amazonka-elastictranscoder == 1.4.0.*
+          amazonka-core == 1.4.1.*
+        , amazonka-test == 1.4.1.*
+        , amazonka-elastictranscoder == 1.4.1.*
         , base
         , bytestring
         , tasty
diff --git a/gen/Network/AWS/ElasticTranscoder/CancelJob.hs b/gen/Network/AWS/ElasticTranscoder/CancelJob.hs
--- a/gen/Network/AWS/ElasticTranscoder/CancelJob.hs
+++ b/gen/Network/AWS/ElasticTranscoder/CancelJob.hs
@@ -83,6 +83,8 @@
 
 instance Hashable CancelJob
 
+instance NFData CancelJob
+
 instance ToHeaders CancelJob where
         toHeaders = const mempty
 
@@ -117,3 +119,5 @@
 -- | The response status code.
 canrsResponseStatus :: Lens' CancelJobResponse Int
 canrsResponseStatus = lens _canrsResponseStatus (\ s a -> s{_canrsResponseStatus = a});
+
+instance NFData CancelJobResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/CreateJob.hs b/gen/Network/AWS/ElasticTranscoder/CreateJob.hs
--- a/gen/Network/AWS/ElasticTranscoder/CreateJob.hs
+++ b/gen/Network/AWS/ElasticTranscoder/CreateJob.hs
@@ -156,6 +156,8 @@
 
 instance Hashable CreateJob
 
+instance NFData CreateJob
+
 instance ToHeaders CreateJob where
         toHeaders = const mempty
 
@@ -209,3 +211,5 @@
 -- | The response status code.
 cjrsResponseStatus :: Lens' CreateJobResponse Int
 cjrsResponseStatus = lens _cjrsResponseStatus (\ s a -> s{_cjrsResponseStatus = a});
+
+instance NFData CreateJobResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/CreatePipeline.hs b/gen/Network/AWS/ElasticTranscoder/CreatePipeline.hs
--- a/gen/Network/AWS/ElasticTranscoder/CreatePipeline.hs
+++ b/gen/Network/AWS/ElasticTranscoder/CreatePipeline.hs
@@ -309,6 +309,8 @@
 
 instance Hashable CreatePipeline
 
+instance NFData CreatePipeline
+
 instance ToHeaders CreatePipeline where
         toHeaders = const mempty
 
@@ -377,3 +379,5 @@
 -- | The response status code.
 crsResponseStatus :: Lens' CreatePipelineResponse Int
 crsResponseStatus = lens _crsResponseStatus (\ s a -> s{_crsResponseStatus = a});
+
+instance NFData CreatePipelineResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/CreatePreset.hs b/gen/Network/AWS/ElasticTranscoder/CreatePreset.hs
--- a/gen/Network/AWS/ElasticTranscoder/CreatePreset.hs
+++ b/gen/Network/AWS/ElasticTranscoder/CreatePreset.hs
@@ -146,6 +146,8 @@
 
 instance Hashable CreatePreset
 
+instance NFData CreatePreset
+
 instance ToHeaders CreatePreset where
         toHeaders = const mempty
 
@@ -209,3 +211,5 @@
 -- | The response status code.
 cprsResponseStatus :: Lens' CreatePresetResponse Int
 cprsResponseStatus = lens _cprsResponseStatus (\ s a -> s{_cprsResponseStatus = a});
+
+instance NFData CreatePresetResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/DeletePipeline.hs b/gen/Network/AWS/ElasticTranscoder/DeletePipeline.hs
--- a/gen/Network/AWS/ElasticTranscoder/DeletePipeline.hs
+++ b/gen/Network/AWS/ElasticTranscoder/DeletePipeline.hs
@@ -79,6 +79,8 @@
 
 instance Hashable DeletePipeline
 
+instance NFData DeletePipeline
+
 instance ToHeaders DeletePipeline where
         toHeaders = const mempty
 
@@ -112,3 +114,5 @@
 -- | The response status code.
 drsResponseStatus :: Lens' DeletePipelineResponse Int
 drsResponseStatus = lens _drsResponseStatus (\ s a -> s{_drsResponseStatus = a});
+
+instance NFData DeletePipelineResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/DeletePreset.hs b/gen/Network/AWS/ElasticTranscoder/DeletePreset.hs
--- a/gen/Network/AWS/ElasticTranscoder/DeletePreset.hs
+++ b/gen/Network/AWS/ElasticTranscoder/DeletePreset.hs
@@ -80,6 +80,8 @@
 
 instance Hashable DeletePreset
 
+instance NFData DeletePreset
+
 instance ToHeaders DeletePreset where
         toHeaders = const mempty
 
@@ -113,3 +115,5 @@
 -- | The response status code.
 dprsResponseStatus :: Lens' DeletePresetResponse Int
 dprsResponseStatus = lens _dprsResponseStatus (\ s a -> s{_dprsResponseStatus = a});
+
+instance NFData DeletePresetResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/ListJobsByPipeline.hs b/gen/Network/AWS/ElasticTranscoder/ListJobsByPipeline.hs
--- a/gen/Network/AWS/ElasticTranscoder/ListJobsByPipeline.hs
+++ b/gen/Network/AWS/ElasticTranscoder/ListJobsByPipeline.hs
@@ -118,6 +118,8 @@
 
 instance Hashable ListJobsByPipeline
 
+instance NFData ListJobsByPipeline
+
 instance ToHeaders ListJobsByPipeline where
         toHeaders = const mempty
 
@@ -174,3 +176,5 @@
 -- | The response status code.
 ljbprsResponseStatus :: Lens' ListJobsByPipelineResponse Int
 ljbprsResponseStatus = lens _ljbprsResponseStatus (\ s a -> s{_ljbprsResponseStatus = a});
+
+instance NFData ListJobsByPipelineResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/ListJobsByStatus.hs b/gen/Network/AWS/ElasticTranscoder/ListJobsByStatus.hs
--- a/gen/Network/AWS/ElasticTranscoder/ListJobsByStatus.hs
+++ b/gen/Network/AWS/ElasticTranscoder/ListJobsByStatus.hs
@@ -116,6 +116,8 @@
 
 instance Hashable ListJobsByStatus
 
+instance NFData ListJobsByStatus
+
 instance ToHeaders ListJobsByStatus where
         toHeaders = const mempty
 
@@ -172,3 +174,5 @@
 -- | The response status code.
 ljbsrsResponseStatus :: Lens' ListJobsByStatusResponse Int
 ljbsrsResponseStatus = lens _ljbsrsResponseStatus (\ s a -> s{_ljbsrsResponseStatus = a});
+
+instance NFData ListJobsByStatusResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/ListPipelines.hs b/gen/Network/AWS/ElasticTranscoder/ListPipelines.hs
--- a/gen/Network/AWS/ElasticTranscoder/ListPipelines.hs
+++ b/gen/Network/AWS/ElasticTranscoder/ListPipelines.hs
@@ -103,6 +103,8 @@
 
 instance Hashable ListPipelines
 
+instance NFData ListPipelines
+
 instance ToHeaders ListPipelines where
         toHeaders = const mempty
 
@@ -157,3 +159,5 @@
 -- | The response status code.
 lprsResponseStatus :: Lens' ListPipelinesResponse Int
 lprsResponseStatus = lens _lprsResponseStatus (\ s a -> s{_lprsResponseStatus = a});
+
+instance NFData ListPipelinesResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/ListPresets.hs b/gen/Network/AWS/ElasticTranscoder/ListPresets.hs
--- a/gen/Network/AWS/ElasticTranscoder/ListPresets.hs
+++ b/gen/Network/AWS/ElasticTranscoder/ListPresets.hs
@@ -104,6 +104,8 @@
 
 instance Hashable ListPresets
 
+instance NFData ListPresets
+
 instance ToHeaders ListPresets where
         toHeaders = const mempty
 
@@ -158,3 +160,5 @@
 -- | The response status code.
 lrsResponseStatus :: Lens' ListPresetsResponse Int
 lrsResponseStatus = lens _lrsResponseStatus (\ s a -> s{_lrsResponseStatus = a});
+
+instance NFData ListPresetsResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/ReadJob.hs b/gen/Network/AWS/ElasticTranscoder/ReadJob.hs
--- a/gen/Network/AWS/ElasticTranscoder/ReadJob.hs
+++ b/gen/Network/AWS/ElasticTranscoder/ReadJob.hs
@@ -78,6 +78,8 @@
 
 instance Hashable ReadJob
 
+instance NFData ReadJob
+
 instance ToHeaders ReadJob where
         toHeaders = const mempty
 
@@ -120,3 +122,5 @@
 -- | A section of the response body that provides information about the job.
 rjrsJob :: Lens' ReadJobResponse Job'
 rjrsJob = lens _rjrsJob (\ s a -> s{_rjrsJob = a});
+
+instance NFData ReadJobResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/ReadPipeline.hs b/gen/Network/AWS/ElasticTranscoder/ReadPipeline.hs
--- a/gen/Network/AWS/ElasticTranscoder/ReadPipeline.hs
+++ b/gen/Network/AWS/ElasticTranscoder/ReadPipeline.hs
@@ -79,6 +79,8 @@
 
 instance Hashable ReadPipeline
 
+instance NFData ReadPipeline
+
 instance ToHeaders ReadPipeline where
         toHeaders = const mempty
 
@@ -134,3 +136,5 @@
 -- | The response status code.
 rrsResponseStatus :: Lens' ReadPipelineResponse Int
 rrsResponseStatus = lens _rrsResponseStatus (\ s a -> s{_rrsResponseStatus = a});
+
+instance NFData ReadPipelineResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/ReadPreset.hs b/gen/Network/AWS/ElasticTranscoder/ReadPreset.hs
--- a/gen/Network/AWS/ElasticTranscoder/ReadPreset.hs
+++ b/gen/Network/AWS/ElasticTranscoder/ReadPreset.hs
@@ -78,6 +78,8 @@
 
 instance Hashable ReadPreset
 
+instance NFData ReadPreset
+
 instance ToHeaders ReadPreset where
         toHeaders = const mempty
 
@@ -120,3 +122,5 @@
 -- | The response status code.
 rprsResponseStatus :: Lens' ReadPresetResponse Int
 rprsResponseStatus = lens _rprsResponseStatus (\ s a -> s{_rprsResponseStatus = a});
+
+instance NFData ReadPresetResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/TestRole.hs b/gen/Network/AWS/ElasticTranscoder/TestRole.hs
--- a/gen/Network/AWS/ElasticTranscoder/TestRole.hs
+++ b/gen/Network/AWS/ElasticTranscoder/TestRole.hs
@@ -119,6 +119,8 @@
 
 instance Hashable TestRole
 
+instance NFData TestRole
+
 instance ToHeaders TestRole where
         toHeaders = const mempty
 
@@ -178,3 +180,5 @@
 -- | The response status code.
 trrsResponseStatus :: Lens' TestRoleResponse Int
 trrsResponseStatus = lens _trrsResponseStatus (\ s a -> s{_trrsResponseStatus = a});
+
+instance NFData TestRoleResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/Types.hs b/gen/Network/AWS/ElasticTranscoder/Types.hs
--- a/gen/Network/AWS/ElasticTranscoder/Types.hs
+++ b/gen/Network/AWS/ElasticTranscoder/Types.hs
@@ -366,6 +366,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/ElasticTranscoder/Types/Product.hs b/gen/Network/AWS/ElasticTranscoder/Types/Product.hs
--- a/gen/Network/AWS/ElasticTranscoder/Types/Product.hs
+++ b/gen/Network/AWS/ElasticTranscoder/Types/Product.hs
@@ -156,6 +156,8 @@
 
 instance Hashable Artwork
 
+instance NFData Artwork
+
 instance ToJSON Artwork where
         toJSON Artwork'{..}
           = object
@@ -266,6 +268,8 @@
 
 instance Hashable AudioCodecOptions
 
+instance NFData AudioCodecOptions
+
 instance ToJSON AudioCodecOptions where
         toJSON AudioCodecOptions'{..}
           = object
@@ -476,6 +480,8 @@
 
 instance Hashable AudioParameters
 
+instance NFData AudioParameters
+
 instance ToJSON AudioParameters where
         toJSON AudioParameters'{..}
           = object
@@ -580,6 +586,8 @@
 
 instance Hashable CaptionFormat
 
+instance NFData CaptionFormat
+
 instance ToJSON CaptionFormat where
         toJSON CaptionFormat'{..}
           = object
@@ -672,6 +680,8 @@
 
 instance Hashable CaptionSource
 
+instance NFData CaptionSource
+
 instance ToJSON CaptionSource where
         toJSON CaptionSource'{..}
           = object
@@ -753,6 +763,8 @@
 
 instance Hashable Captions
 
+instance NFData Captions
+
 instance ToJSON Captions where
         toJSON Captions'{..}
           = object
@@ -792,6 +804,8 @@
 
 instance Hashable Clip
 
+instance NFData Clip
+
 instance ToJSON Clip where
         toJSON Clip'{..}
           = object (catMaybes [("TimeSpan" .=) <$> _cTimeSpan])
@@ -1025,6 +1039,8 @@
 
 instance Hashable CreateJobOutput
 
+instance NFData CreateJobOutput
+
 instance ToJSON CreateJobOutput where
         toJSON CreateJobOutput'{..}
           = object
@@ -1150,6 +1166,8 @@
 
 instance Hashable CreateJobPlaylist
 
+instance NFData CreateJobPlaylist
+
 instance ToJSON CreateJobPlaylist where
         toJSON CreateJobPlaylist'{..}
           = object
@@ -1229,6 +1247,8 @@
 
 instance Hashable DetectedProperties
 
+instance NFData DetectedProperties
+
 instance ToJSON DetectedProperties where
         toJSON DetectedProperties'{..}
           = object
@@ -1351,6 +1371,8 @@
 
 instance Hashable Encryption
 
+instance NFData Encryption
+
 instance ToJSON Encryption where
         toJSON Encryption'{..}
           = object
@@ -1467,6 +1489,8 @@
 
 instance Hashable HlsContentProtection
 
+instance NFData HlsContentProtection
+
 instance ToJSON HlsContentProtection where
         toJSON HlsContentProtection'{..}
           = object
@@ -1650,6 +1674,8 @@
 
 instance Hashable Job'
 
+instance NFData Job'
+
 -- | The .jpg or .png file associated with an audio file.
 --
 -- /See:/ 'jobAlbumArt' smart constructor.
@@ -1705,6 +1731,8 @@
 
 instance Hashable JobAlbumArt
 
+instance NFData JobAlbumArt
+
 instance ToJSON JobAlbumArt where
         toJSON JobAlbumArt'{..}
           = object
@@ -1846,6 +1874,8 @@
 
 instance Hashable JobInput
 
+instance NFData JobInput
+
 instance ToJSON JobInput where
         toJSON JobInput'{..}
           = object
@@ -2233,6 +2263,8 @@
 
 instance Hashable JobOutput
 
+instance NFData JobOutput
+
 -- | Watermarks can be in .png or .jpg format. If you want to display a
 -- watermark that is not rectangular, use the .png format, which supports
 -- transparency.
@@ -2295,6 +2327,8 @@
 
 instance Hashable JobWatermark
 
+instance NFData JobWatermark
+
 instance ToJSON JobWatermark where
         toJSON JobWatermark'{..}
           = object
@@ -2369,6 +2403,8 @@
 
 instance Hashable Notifications
 
+instance NFData Notifications
+
 instance ToJSON Notifications where
         toJSON Notifications'{..}
           = object
@@ -2449,6 +2485,8 @@
 
 instance Hashable Permission
 
+instance NFData Permission
+
 instance ToJSON Permission where
         toJSON Permission'{..}
           = object
@@ -2684,6 +2722,8 @@
 
 instance Hashable Pipeline
 
+instance NFData Pipeline
+
 -- | The 'PipelineOutputConfig' structure.
 --
 -- /See:/ 'pipelineOutputConfig' smart constructor.
@@ -2764,6 +2804,8 @@
 
 instance Hashable PipelineOutputConfig
 
+instance NFData PipelineOutputConfig
+
 instance ToJSON PipelineOutputConfig where
         toJSON PipelineOutputConfig'{..}
           = object
@@ -2881,6 +2923,8 @@
 
 instance Hashable PlayReadyDrm
 
+instance NFData PlayReadyDrm
+
 instance ToJSON PlayReadyDrm where
         toJSON PlayReadyDrm'{..}
           = object
@@ -3034,6 +3078,8 @@
 
 instance Hashable Playlist
 
+instance NFData Playlist
+
 -- | Presets are templates that contain most of the settings for transcoding
 -- media files from one format to another. Elastic Transcoder includes some
 -- default presets for common formats, for example, several iPod and iPhone
@@ -3149,6 +3195,8 @@
 
 instance Hashable Preset
 
+instance NFData Preset
+
 -- | Settings for the size, location, and opacity of graphics that you want
 -- Elastic Transcoder to overlay over videos that are transcoded using this
 -- preset. You can specify settings for up to four watermarks. Watermarks
@@ -3386,6 +3434,8 @@
 
 instance Hashable PresetWatermark
 
+instance NFData PresetWatermark
+
 instance ToJSON PresetWatermark where
         toJSON PresetWatermark'{..}
           = object
@@ -3552,6 +3602,8 @@
 
 instance Hashable Thumbnails
 
+instance NFData Thumbnails
+
 instance ToJSON Thumbnails where
         toJSON Thumbnails'{..}
           = object
@@ -3615,6 +3667,8 @@
 
 instance Hashable TimeSpan
 
+instance NFData TimeSpan
+
 instance ToJSON TimeSpan where
         toJSON TimeSpan'{..}
           = object
@@ -3673,6 +3727,8 @@
 
 instance Hashable Timing
 
+instance NFData Timing
+
 -- | The 'VideoParameters' structure.
 --
 -- /See:/ 'videoParameters' smart constructor.
@@ -4165,6 +4221,8 @@
 
 instance Hashable VideoParameters
 
+instance NFData VideoParameters
+
 instance ToJSON VideoParameters where
         toJSON VideoParameters'{..}
           = object
@@ -4231,3 +4289,5 @@
                  Warning' <$> (x .:? "Code") <*> (x .:? "Message"))
 
 instance Hashable Warning
+
+instance NFData Warning
diff --git a/gen/Network/AWS/ElasticTranscoder/UpdatePipeline.hs b/gen/Network/AWS/ElasticTranscoder/UpdatePipeline.hs
--- a/gen/Network/AWS/ElasticTranscoder/UpdatePipeline.hs
+++ b/gen/Network/AWS/ElasticTranscoder/UpdatePipeline.hs
@@ -265,6 +265,8 @@
 
 instance Hashable UpdatePipeline
 
+instance NFData UpdatePipeline
+
 instance ToHeaders UpdatePipeline where
         toHeaders = const mempty
 
@@ -331,3 +333,5 @@
 -- | The response status code.
 uprsResponseStatus :: Lens' UpdatePipelineResponse Int
 uprsResponseStatus = lens _uprsResponseStatus (\ s a -> s{_uprsResponseStatus = a});
+
+instance NFData UpdatePipelineResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/UpdatePipelineNotifications.hs b/gen/Network/AWS/ElasticTranscoder/UpdatePipelineNotifications.hs
--- a/gen/Network/AWS/ElasticTranscoder/UpdatePipelineNotifications.hs
+++ b/gen/Network/AWS/ElasticTranscoder/UpdatePipelineNotifications.hs
@@ -112,6 +112,8 @@
 
 instance Hashable UpdatePipelineNotifications
 
+instance NFData UpdatePipelineNotifications
+
 instance ToHeaders UpdatePipelineNotifications where
         toHeaders = const mempty
 
@@ -162,3 +164,5 @@
 -- | The response status code.
 upnrsResponseStatus :: Lens' UpdatePipelineNotificationsResponse Int
 upnrsResponseStatus = lens _upnrsResponseStatus (\ s a -> s{_upnrsResponseStatus = a});
+
+instance NFData UpdatePipelineNotificationsResponse
diff --git a/gen/Network/AWS/ElasticTranscoder/UpdatePipelineStatus.hs b/gen/Network/AWS/ElasticTranscoder/UpdatePipelineStatus.hs
--- a/gen/Network/AWS/ElasticTranscoder/UpdatePipelineStatus.hs
+++ b/gen/Network/AWS/ElasticTranscoder/UpdatePipelineStatus.hs
@@ -98,6 +98,8 @@
 
 instance Hashable UpdatePipelineStatus
 
+instance NFData UpdatePipelineStatus
+
 instance ToHeaders UpdatePipelineStatus where
         toHeaders = const mempty
 
@@ -146,3 +148,5 @@
 -- | The response status code.
 upsrsResponseStatus :: Lens' UpdatePipelineStatusResponse Int
 upsrsResponseStatus = lens _upsrsResponseStatus (\ s a -> s{_upsrsResponseStatus = a});
+
+instance NFData UpdatePipelineStatusResponse
