diff --git a/gen/Network/Google/CustomSearch.hs b/gen/Network/Google/CustomSearch.hs
--- a/gen/Network/Google/CustomSearch.hs
+++ b/gen/Network/Google/CustomSearch.hs
@@ -13,7 +13,7 @@
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
--- Lets you search over a website or collection of websites
+-- Searches over a website or collection of websites
 --
 -- /See:/ <https://developers.google.com/custom-search/v1/using_rest CustomSearch API Reference>
 module Network.Google.CustomSearch
@@ -29,6 +29,9 @@
     -- ** search.cse.list
     , module Network.Google.Resource.Search.CSE.List
 
+    -- ** search.cse.siterestrict.list
+    , module Network.Google.Resource.Search.CSE.Siterestrict.List
+
     -- * Types
 
     -- ** CSEListImgType
@@ -66,12 +69,18 @@
     , suType
     , suTemplate
 
+    -- ** CSESiterestrictListFilter
+    , CSESiterestrictListFilter (..)
+
     -- ** SearchSpelling
     , SearchSpelling
     , searchSpelling
     , ssCorrectedQuery
     , ssHTMLCorrectedQuery
 
+    -- ** CSESiterestrictListImgType
+    , CSESiterestrictListImgType (..)
+
     -- ** CSEListImgDominantColor
     , CSEListImgDominantColor (..)
 
@@ -89,14 +98,23 @@
     -- ** CSEListSafe
     , CSEListSafe (..)
 
+    -- ** CSESiterestrictListImgSize
+    , CSESiterestrictListImgSize (..)
+
     -- ** ResultPagemap
     , ResultPagemap
     , resultPagemap
     , rpAddtional
 
+    -- ** CSESiterestrictListImgColorType
+    , CSESiterestrictListImgColorType (..)
+
     -- ** CSEListImgColorType
     , CSEListImgColorType (..)
 
+    -- ** CSESiterestrictListSafe
+    , CSESiterestrictListSafe (..)
+
     -- ** Result
     , Result
     , result
@@ -123,6 +141,9 @@
     , rliDisplayName
     , rliLabelWithOp
 
+    -- ** CSESiterestrictListImgDominantColor
+    , CSESiterestrictListImgDominantColor (..)
+
     -- ** SearchSearchInformation
     , SearchSearchInformation
     , searchSearchInformation
@@ -153,7 +174,6 @@
     , qDisableCnTwTranslation
     , qRelatedSite
     , qHl
-    , qCref
     , qSort
     , qLanguage
     , qSiteSearch
@@ -175,6 +195,9 @@
     , qHq
     , qHighRange
 
+    -- ** CSESiterestrictListSiteSearchFilter
+    , CSESiterestrictListSiteSearchFilter (..)
+
     -- ** PromotionBodyLinesItem
     , PromotionBodyLinesItem
     , promotionBodyLinesItem
@@ -193,6 +216,12 @@
     , pHTMLTitle
     , pTitle
 
+    -- ** CSESiterestrictListLr
+    , CSESiterestrictListLr (..)
+
+    -- ** CSESiterestrictListSearchType
+    , CSESiterestrictListSearchType (..)
+
     -- ** Search
     , Search
     , search
@@ -225,10 +254,12 @@
 import           Network.Google.CustomSearch.Types
 import           Network.Google.Prelude
 import           Network.Google.Resource.Search.CSE.List
+import           Network.Google.Resource.Search.CSE.Siterestrict.List
 
 {- $resources
 TODO
 -}
 
 -- | Represents the entirety of the methods and resources available for the CustomSearch API service.
-type CustomSearchAPI = CSEListResource
+type CustomSearchAPI =
+     CSESiterestrictListResource :<|> CSEListResource
diff --git a/gen/Network/Google/CustomSearch/Types.hs b/gen/Network/Google/CustomSearch/Types.hs
--- a/gen/Network/Google/CustomSearch/Types.hs
+++ b/gen/Network/Google/CustomSearch/Types.hs
@@ -54,12 +54,18 @@
     , suType
     , suTemplate
 
+    -- * CSESiterestrictListFilter
+    , CSESiterestrictListFilter (..)
+
     -- * SearchSpelling
     , SearchSpelling
     , searchSpelling
     , ssCorrectedQuery
     , ssHTMLCorrectedQuery
 
+    -- * CSESiterestrictListImgType
+    , CSESiterestrictListImgType (..)
+
     -- * CSEListImgDominantColor
     , CSEListImgDominantColor (..)
 
@@ -77,14 +83,23 @@
     -- * CSEListSafe
     , CSEListSafe (..)
 
+    -- * CSESiterestrictListImgSize
+    , CSESiterestrictListImgSize (..)
+
     -- * ResultPagemap
     , ResultPagemap
     , resultPagemap
     , rpAddtional
 
+    -- * CSESiterestrictListImgColorType
+    , CSESiterestrictListImgColorType (..)
+
     -- * CSEListImgColorType
     , CSEListImgColorType (..)
 
+    -- * CSESiterestrictListSafe
+    , CSESiterestrictListSafe (..)
+
     -- * Result
     , Result
     , result
@@ -111,6 +126,9 @@
     , rliDisplayName
     , rliLabelWithOp
 
+    -- * CSESiterestrictListImgDominantColor
+    , CSESiterestrictListImgDominantColor (..)
+
     -- * SearchSearchInformation
     , SearchSearchInformation
     , searchSearchInformation
@@ -141,7 +159,6 @@
     , qDisableCnTwTranslation
     , qRelatedSite
     , qHl
-    , qCref
     , qSort
     , qLanguage
     , qSiteSearch
@@ -163,6 +180,9 @@
     , qHq
     , qHighRange
 
+    -- * CSESiterestrictListSiteSearchFilter
+    , CSESiterestrictListSiteSearchFilter (..)
+
     -- * PromotionBodyLinesItem
     , PromotionBodyLinesItem
     , promotionBodyLinesItem
@@ -180,6 +200,12 @@
     , pLink
     , pHTMLTitle
     , pTitle
+
+    -- * CSESiterestrictListLr
+    , CSESiterestrictListLr (..)
+
+    -- * CSESiterestrictListSearchType
+    , CSESiterestrictListSearchType (..)
 
     -- * Search
     , Search
diff --git a/gen/Network/Google/CustomSearch/Types/Product.hs b/gen/Network/Google/CustomSearch/Types/Product.hs
--- a/gen/Network/Google/CustomSearch/Types/Product.hs
+++ b/gen/Network/Google/CustomSearch/Types/Product.hs
@@ -204,7 +204,7 @@
 searchURL =
     SearchURL'
     { _suType = "application/json"
-    , _suTemplate = "https://www.googleapis.com/customsearch/v1?q={searchTerms}&num={count?}&start={startIndex?}&lr={language?}&safe={safe?}&cx={cx?}&cref={cref?}&sort={sort?}&filter={filter?}&gl={gl?}&cr={cr?}&googlehost={googleHost?}&c2coff={disableCnTwTranslation?}&hq={hq?}&hl={hl?}&siteSearch={siteSearch?}&siteSearchFilter={siteSearchFilter?}&exactTerms={exactTerms?}&excludeTerms={excludeTerms?}&linkSite={linkSite?}&orTerms={orTerms?}&relatedSite={relatedSite?}&dateRestrict={dateRestrict?}&lowRange={lowRange?}&highRange={highRange?}&searchType={searchType}&fileType={fileType?}&rights={rights?}&imgSize={imgSize?}&imgType={imgType?}&imgColorType={imgColorType?}&imgDominantColor={imgDominantColor?}&alt=json"
+    , _suTemplate = "https://www.googleapis.com/customsearch/v1?q={searchTerms}&num={count?}&start={startIndex?}&lr={language?}&safe={safe?}&cx={cx?}&sort={sort?}&filter={filter?}&gl={gl?}&cr={cr?}&googlehost={googleHost?}&c2coff={disableCnTwTranslation?}&hq={hq?}&hl={hl?}&siteSearch={siteSearch?}&siteSearchFilter={siteSearchFilter?}&exactTerms={exactTerms?}&excludeTerms={excludeTerms?}&linkSite={linkSite?}&orTerms={orTerms?}&relatedSite={relatedSite?}&dateRestrict={dateRestrict?}&lowRange={lowRange?}&highRange={highRange?}&searchType={searchType}&fileType={fileType?}&rights={rights?}&imgSize={imgSize?}&imgType={imgType?}&imgColorType={imgColorType?}&imgDominantColor={imgDominantColor?}&alt=json"
     }
 
 suType :: Lens' SearchURL Text
@@ -221,7 +221,7 @@
                  SearchURL' <$>
                    (o .:? "type" .!= "application/json") <*>
                      (o .:? "template" .!=
-                        "https://www.googleapis.com/customsearch/v1?q={searchTerms}&num={count?}&start={startIndex?}&lr={language?}&safe={safe?}&cx={cx?}&cref={cref?}&sort={sort?}&filter={filter?}&gl={gl?}&cr={cr?}&googlehost={googleHost?}&c2coff={disableCnTwTranslation?}&hq={hq?}&hl={hl?}&siteSearch={siteSearch?}&siteSearchFilter={siteSearchFilter?}&exactTerms={exactTerms?}&excludeTerms={excludeTerms?}&linkSite={linkSite?}&orTerms={orTerms?}&relatedSite={relatedSite?}&dateRestrict={dateRestrict?}&lowRange={lowRange?}&highRange={highRange?}&searchType={searchType}&fileType={fileType?}&rights={rights?}&imgSize={imgSize?}&imgType={imgType?}&imgColorType={imgColorType?}&imgDominantColor={imgDominantColor?}&alt=json"))
+                        "https://www.googleapis.com/customsearch/v1?q={searchTerms}&num={count?}&start={startIndex?}&lr={language?}&safe={safe?}&cx={cx?}&sort={sort?}&filter={filter?}&gl={gl?}&cr={cr?}&googlehost={googleHost?}&c2coff={disableCnTwTranslation?}&hq={hq?}&hl={hl?}&siteSearch={siteSearch?}&siteSearchFilter={siteSearchFilter?}&exactTerms={exactTerms?}&excludeTerms={excludeTerms?}&linkSite={linkSite?}&orTerms={orTerms?}&relatedSite={relatedSite?}&dateRestrict={dateRestrict?}&lowRange={lowRange?}&highRange={highRange?}&searchType={searchType}&fileType={fileType?}&rights={rights?}&imgSize={imgSize?}&imgType={imgType?}&imgColorType={imgColorType?}&imgDominantColor={imgDominantColor?}&alt=json"))
 
 instance ToJSON SearchURL where
         toJSON SearchURL'{..}
@@ -726,7 +726,6 @@
     , _qDisableCnTwTranslation :: !(Maybe Text)
     , _qRelatedSite            :: !(Maybe Text)
     , _qHl                     :: !(Maybe Text)
-    , _qCref                   :: !(Maybe Text)
     , _qSort                   :: !(Maybe Text)
     , _qLanguage               :: !(Maybe Text)
     , _qSiteSearch             :: !(Maybe Text)
@@ -785,8 +784,6 @@
 --
 -- * 'qHl'
 --
--- * 'qCref'
---
 -- * 'qSort'
 --
 -- * 'qLanguage'
@@ -846,7 +843,6 @@
     , _qDisableCnTwTranslation = Nothing
     , _qRelatedSite = Nothing
     , _qHl = Nothing
-    , _qCref = Nothing
     , _qSort = Nothing
     , _qLanguage = Nothing
     , _qSiteSearch = Nothing
@@ -938,9 +934,6 @@
 qHl :: Lens' Query (Maybe Text)
 qHl = lens _qHl (\ s a -> s{_qHl = a})
 
-qCref :: Lens' Query (Maybe Text)
-qCref = lens _qCref (\ s a -> s{_qCref = a})
-
 qSort :: Lens' Query (Maybe Text)
 qSort = lens _qSort (\ s a -> s{_qSort = a})
 
@@ -1037,7 +1030,6 @@
                      <*> (o .:? "disableCnTwTranslation")
                      <*> (o .:? "relatedSite")
                      <*> (o .:? "hl")
-                     <*> (o .:? "cref")
                      <*> (o .:? "sort")
                      <*> (o .:? "language")
                      <*> (o .:? "siteSearch")
@@ -1078,8 +1070,7 @@
                   ("disableCnTwTranslation" .=) <$>
                     _qDisableCnTwTranslation,
                   ("relatedSite" .=) <$> _qRelatedSite,
-                  ("hl" .=) <$> _qHl, ("cref" .=) <$> _qCref,
-                  ("sort" .=) <$> _qSort,
+                  ("hl" .=) <$> _qHl, ("sort" .=) <$> _qSort,
                   ("language" .=) <$> _qLanguage,
                   ("siteSearch" .=) <$> _qSiteSearch,
                   ("filter" .=) <$> _qFilter,
diff --git a/gen/Network/Google/CustomSearch/Types/Sum.hs b/gen/Network/Google/CustomSearch/Types/Sum.hs
--- a/gen/Network/Google/CustomSearch/Types/Sum.hs
+++ b/gen/Network/Google/CustomSearch/Types/Sum.hs
@@ -16,7 +16,7 @@
 --
 module Network.Google.CustomSearch.Types.Sum where
 
-import           Network.Google.Prelude
+import           Network.Google.Prelude hiding (Bytes)
 
 -- | Returns images of a type, which can be one of: clipart, face, lineart,
 -- news, and photo.
@@ -93,8 +93,82 @@
 instance ToJSON CSEListSiteSearchFilter where
     toJSON = toJSONText
 
--- | Returns images of a specific dominant color: yellow, green, teal, blue,
--- purple, pink, white, gray, black and brown.
+-- | Controls turning on or off the duplicate content filter.
+data CSESiterestrictListFilter
+    = CSESLF0
+      -- ^ @0@
+      -- Turns off duplicate content filter.
+    | CSESLF1
+      -- ^ @1@
+      -- Turns on duplicate content filter.
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListFilter
+
+instance FromHttpApiData CSESiterestrictListFilter where
+    parseQueryParam = \case
+        "0" -> Right CSESLF0
+        "1" -> Right CSESLF1
+        x -> Left ("Unable to parse CSESiterestrictListFilter from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListFilter where
+    toQueryParam = \case
+        CSESLF0 -> "0"
+        CSESLF1 -> "1"
+
+instance FromJSON CSESiterestrictListFilter where
+    parseJSON = parseJSONText "CSESiterestrictListFilter"
+
+instance ToJSON CSESiterestrictListFilter where
+    toJSON = toJSONText
+
+-- | Returns images of a type, which can be one of: clipart, face, lineart,
+-- news, and photo.
+data CSESiterestrictListImgType
+    = CSESLITCliPart
+      -- ^ @clipart@
+      -- clipart
+    | CSESLITFace
+      -- ^ @face@
+      -- face
+    | CSESLITLineart
+      -- ^ @lineart@
+      -- lineart
+    | CSESLITNews
+      -- ^ @news@
+      -- news
+    | CSESLITPhoto
+      -- ^ @photo@
+      -- photo
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListImgType
+
+instance FromHttpApiData CSESiterestrictListImgType where
+    parseQueryParam = \case
+        "clipart" -> Right CSESLITCliPart
+        "face" -> Right CSESLITFace
+        "lineart" -> Right CSESLITLineart
+        "news" -> Right CSESLITNews
+        "photo" -> Right CSESLITPhoto
+        x -> Left ("Unable to parse CSESiterestrictListImgType from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListImgType where
+    toQueryParam = \case
+        CSESLITCliPart -> "clipart"
+        CSESLITFace -> "face"
+        CSESLITLineart -> "lineart"
+        CSESLITNews -> "news"
+        CSESLITPhoto -> "photo"
+
+instance FromJSON CSESiterestrictListImgType where
+    parseJSON = parseJSONText "CSESiterestrictListImgType"
+
+instance ToJSON CSESiterestrictListImgType where
+    toJSON = toJSONText
+
+-- | Returns images of a specific dominant color: red, orange, yellow, green,
+-- teal, blue, purple, pink, white, gray, black and brown.
 data CSEListImgDominantColor
     = Black
       -- ^ @black@
@@ -111,12 +185,18 @@
     | Green
       -- ^ @green@
       -- green
+    | Orange
+      -- ^ @orange@
+      -- orange
     | Pink
       -- ^ @pink@
       -- pink
     | Purple
       -- ^ @purple@
       -- purple
+    | Red
+      -- ^ @red@
+      -- red
     | Teal
       -- ^ @teal@
       -- teal
@@ -137,8 +217,10 @@
         "brown" -> Right Brown
         "gray" -> Right Gray
         "green" -> Right Green
+        "orange" -> Right Orange
         "pink" -> Right Pink
         "purple" -> Right Purple
+        "red" -> Right Red
         "teal" -> Right Teal
         "white" -> Right White
         "yellow" -> Right Yellow
@@ -151,8 +233,10 @@
         Brown -> "brown"
         Gray -> "gray"
         Green -> "green"
+        Orange -> "orange"
         Pink -> "pink"
         Purple -> "purple"
+        Red -> "red"
         Teal -> "teal"
         White -> "white"
         Yellow -> "yellow"
@@ -165,12 +249,15 @@
 
 -- | Search safety level
 data CSEListSafe
-    = High
+    = Active
+      -- ^ @active@
+      -- Enables safe search filtering.
+    | High
       -- ^ @high@
-      -- Enables highest level of safe search filtering.
+      -- (Deprecated) Same as active.
     | Medium
       -- ^ @medium@
-      -- Enables moderate safe search filtering.
+      -- (Deprecated) Same as active.
     | Off
       -- ^ @off@
       -- Disables safe search filtering.
@@ -180,6 +267,7 @@
 
 instance FromHttpApiData CSEListSafe where
     parseQueryParam = \case
+        "active" -> Right Active
         "high" -> Right High
         "medium" -> Right Medium
         "off" -> Right Off
@@ -187,6 +275,7 @@
 
 instance ToHttpApiData CSEListSafe where
     toQueryParam = \case
+        Active -> "active"
         High -> "high"
         Medium -> "medium"
         Off -> "off"
@@ -197,8 +286,98 @@
 instance ToJSON CSEListSafe where
     toJSON = toJSONText
 
+-- | Returns images of a specified size, where size can be one of: icon,
+-- small, medium, large, xlarge, xxlarge, and huge.
+data CSESiterestrictListImgSize
+    = CSESLISHuge
+      -- ^ @huge@
+      -- huge
+    | CSESLISIcon
+      -- ^ @icon@
+      -- icon
+    | CSESLISLarge
+      -- ^ @large@
+      -- large
+    | CSESLISMedium
+      -- ^ @medium@
+      -- medium
+    | CSESLISSmall
+      -- ^ @small@
+      -- small
+    | CSESLISXlarge
+      -- ^ @xlarge@
+      -- xlarge
+    | CSESLISXxlarge
+      -- ^ @xxlarge@
+      -- xxlarge
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListImgSize
+
+instance FromHttpApiData CSESiterestrictListImgSize where
+    parseQueryParam = \case
+        "huge" -> Right CSESLISHuge
+        "icon" -> Right CSESLISIcon
+        "large" -> Right CSESLISLarge
+        "medium" -> Right CSESLISMedium
+        "small" -> Right CSESLISSmall
+        "xlarge" -> Right CSESLISXlarge
+        "xxlarge" -> Right CSESLISXxlarge
+        x -> Left ("Unable to parse CSESiterestrictListImgSize from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListImgSize where
+    toQueryParam = \case
+        CSESLISHuge -> "huge"
+        CSESLISIcon -> "icon"
+        CSESLISLarge -> "large"
+        CSESLISMedium -> "medium"
+        CSESLISSmall -> "small"
+        CSESLISXlarge -> "xlarge"
+        CSESLISXxlarge -> "xxlarge"
+
+instance FromJSON CSESiterestrictListImgSize where
+    parseJSON = parseJSONText "CSESiterestrictListImgSize"
+
+instance ToJSON CSESiterestrictListImgSize where
+    toJSON = toJSONText
+
 -- | Returns black and white, grayscale, or color images: mono, gray, and
 -- color.
+data CSESiterestrictListImgColorType
+    = CSESLICTColor
+      -- ^ @color@
+      -- color
+    | CSESLICTGray
+      -- ^ @gray@
+      -- gray
+    | CSESLICTMono
+      -- ^ @mono@
+      -- mono
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListImgColorType
+
+instance FromHttpApiData CSESiterestrictListImgColorType where
+    parseQueryParam = \case
+        "color" -> Right CSESLICTColor
+        "gray" -> Right CSESLICTGray
+        "mono" -> Right CSESLICTMono
+        x -> Left ("Unable to parse CSESiterestrictListImgColorType from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListImgColorType where
+    toQueryParam = \case
+        CSESLICTColor -> "color"
+        CSESLICTGray -> "gray"
+        CSESLICTMono -> "mono"
+
+instance FromJSON CSESiterestrictListImgColorType where
+    parseJSON = parseJSONText "CSESiterestrictListImgColorType"
+
+instance ToJSON CSESiterestrictListImgColorType where
+    toJSON = toJSONText
+
+-- | Returns black and white, grayscale, or color images: mono, gray, and
+-- color.
 data CSEListImgColorType
     = CSELICTColor
       -- ^ @color@
@@ -232,6 +411,120 @@
 instance ToJSON CSEListImgColorType where
     toJSON = toJSONText
 
+-- | Search safety level
+data CSESiterestrictListSafe
+    = CSESLSHigh
+      -- ^ @high@
+      -- Enables highest level of safe search filtering.
+    | CSESLSMedium
+      -- ^ @medium@
+      -- Enables moderate safe search filtering.
+    | CSESLSOff
+      -- ^ @off@
+      -- Disables safe search filtering.
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListSafe
+
+instance FromHttpApiData CSESiterestrictListSafe where
+    parseQueryParam = \case
+        "high" -> Right CSESLSHigh
+        "medium" -> Right CSESLSMedium
+        "off" -> Right CSESLSOff
+        x -> Left ("Unable to parse CSESiterestrictListSafe from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListSafe where
+    toQueryParam = \case
+        CSESLSHigh -> "high"
+        CSESLSMedium -> "medium"
+        CSESLSOff -> "off"
+
+instance FromJSON CSESiterestrictListSafe where
+    parseJSON = parseJSONText "CSESiterestrictListSafe"
+
+instance ToJSON CSESiterestrictListSafe where
+    toJSON = toJSONText
+
+-- | Returns images of a specific dominant color: red, orange, yellow, green,
+-- teal, blue, purple, pink, white, gray, black and brown.
+data CSESiterestrictListImgDominantColor
+    = CSESLIDCBlack
+      -- ^ @black@
+      -- black
+    | CSESLIDCBlue
+      -- ^ @blue@
+      -- blue
+    | CSESLIDCBrown
+      -- ^ @brown@
+      -- brown
+    | CSESLIDCGray
+      -- ^ @gray@
+      -- gray
+    | CSESLIDCGreen
+      -- ^ @green@
+      -- green
+    | CSESLIDCOrange
+      -- ^ @orange@
+      -- orange
+    | CSESLIDCPink
+      -- ^ @pink@
+      -- pink
+    | CSESLIDCPurple
+      -- ^ @purple@
+      -- purple
+    | CSESLIDCRed
+      -- ^ @red@
+      -- red
+    | CSESLIDCTeal
+      -- ^ @teal@
+      -- teal
+    | CSESLIDCWhite
+      -- ^ @white@
+      -- white
+    | CSESLIDCYellow
+      -- ^ @yellow@
+      -- yellow
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListImgDominantColor
+
+instance FromHttpApiData CSESiterestrictListImgDominantColor where
+    parseQueryParam = \case
+        "black" -> Right CSESLIDCBlack
+        "blue" -> Right CSESLIDCBlue
+        "brown" -> Right CSESLIDCBrown
+        "gray" -> Right CSESLIDCGray
+        "green" -> Right CSESLIDCGreen
+        "orange" -> Right CSESLIDCOrange
+        "pink" -> Right CSESLIDCPink
+        "purple" -> Right CSESLIDCPurple
+        "red" -> Right CSESLIDCRed
+        "teal" -> Right CSESLIDCTeal
+        "white" -> Right CSESLIDCWhite
+        "yellow" -> Right CSESLIDCYellow
+        x -> Left ("Unable to parse CSESiterestrictListImgDominantColor from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListImgDominantColor where
+    toQueryParam = \case
+        CSESLIDCBlack -> "black"
+        CSESLIDCBlue -> "blue"
+        CSESLIDCBrown -> "brown"
+        CSESLIDCGray -> "gray"
+        CSESLIDCGreen -> "green"
+        CSESLIDCOrange -> "orange"
+        CSESLIDCPink -> "pink"
+        CSESLIDCPurple -> "purple"
+        CSESLIDCRed -> "red"
+        CSESLIDCTeal -> "teal"
+        CSESLIDCWhite -> "white"
+        CSESLIDCYellow -> "yellow"
+
+instance FromJSON CSESiterestrictListImgDominantColor where
+    parseJSON = parseJSONText "CSESiterestrictListImgDominantColor"
+
+instance ToJSON CSESiterestrictListImgDominantColor where
+    toJSON = toJSONText
+
 -- | Controls turning on or off the duplicate content filter.
 data CSEListFilter
     = CSELF0
@@ -261,8 +554,38 @@
 instance ToJSON CSEListFilter where
     toJSON = toJSONText
 
+-- | Controls whether to include or exclude results from the site named in
+-- the as_sitesearch parameter
+data CSESiterestrictListSiteSearchFilter
+    = CSESLSSFE
+      -- ^ @e@
+      -- exclude
+    | CSESLSSFI
+      -- ^ @i@
+      -- include
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListSiteSearchFilter
+
+instance FromHttpApiData CSESiterestrictListSiteSearchFilter where
+    parseQueryParam = \case
+        "e" -> Right CSESLSSFE
+        "i" -> Right CSESLSSFI
+        x -> Left ("Unable to parse CSESiterestrictListSiteSearchFilter from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListSiteSearchFilter where
+    toQueryParam = \case
+        CSESLSSFE -> "e"
+        CSESLSSFI -> "i"
+
+instance FromJSON CSESiterestrictListSiteSearchFilter where
+    parseJSON = parseJSONText "CSESiterestrictListSiteSearchFilter"
+
+instance ToJSON CSESiterestrictListSiteSearchFilter where
+    toJSON = toJSONText
+
 -- | The language restriction for the search results
-data CSEListLr
+data CSESiterestrictListLr
     = LangAr
       -- ^ @lang_ar@
       -- Arabic
@@ -370,9 +693,9 @@
       -- Chinese (Traditional)
       deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
 
-instance Hashable CSEListLr
+instance Hashable CSESiterestrictListLr
 
-instance FromHttpApiData CSEListLr where
+instance FromHttpApiData CSESiterestrictListLr where
     parseQueryParam = \case
         "lang_ar" -> Right LangAr
         "lang_bg" -> Right LangBg
@@ -409,9 +732,9 @@
         "lang_tr" -> Right LangTr
         "lang_zh-CN" -> Right LangZhCn
         "lang_zh-TW" -> Right LangZhTw
-        x -> Left ("Unable to parse CSEListLr from: " <> x)
+        x -> Left ("Unable to parse CSESiterestrictListLr from: " <> x)
 
-instance ToHttpApiData CSEListLr where
+instance ToHttpApiData CSESiterestrictListLr where
     toQueryParam = \case
         LangAr -> "lang_ar"
         LangBg -> "lang_bg"
@@ -449,6 +772,224 @@
         LangZhCn -> "lang_zh-CN"
         LangZhTw -> "lang_zh-TW"
 
+instance FromJSON CSESiterestrictListLr where
+    parseJSON = parseJSONText "CSESiterestrictListLr"
+
+instance ToJSON CSESiterestrictListLr where
+    toJSON = toJSONText
+
+-- | Specifies the search type: image.
+data CSESiterestrictListSearchType
+    = Image
+      -- ^ @image@
+      -- custom image search
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSESiterestrictListSearchType
+
+instance FromHttpApiData CSESiterestrictListSearchType where
+    parseQueryParam = \case
+        "image" -> Right Image
+        x -> Left ("Unable to parse CSESiterestrictListSearchType from: " <> x)
+
+instance ToHttpApiData CSESiterestrictListSearchType where
+    toQueryParam = \case
+        Image -> "image"
+
+instance FromJSON CSESiterestrictListSearchType where
+    parseJSON = parseJSONText "CSESiterestrictListSearchType"
+
+instance ToJSON CSESiterestrictListSearchType where
+    toJSON = toJSONText
+
+-- | The language restriction for the search results
+data CSEListLr
+    = CSELLLangAr
+      -- ^ @lang_ar@
+      -- Arabic
+    | CSELLLangBg
+      -- ^ @lang_bg@
+      -- Bulgarian
+    | CSELLLangCa
+      -- ^ @lang_ca@
+      -- Catalan
+    | CSELLLangCs
+      -- ^ @lang_cs@
+      -- Czech
+    | CSELLLangDa
+      -- ^ @lang_da@
+      -- Danish
+    | CSELLLangDe
+      -- ^ @lang_de@
+      -- German
+    | CSELLLangEl
+      -- ^ @lang_el@
+      -- Greek
+    | CSELLLangEn
+      -- ^ @lang_en@
+      -- English
+    | CSELLLangEs
+      -- ^ @lang_es@
+      -- Spanish
+    | CSELLLangEt
+      -- ^ @lang_et@
+      -- Estonian
+    | CSELLLangFi
+      -- ^ @lang_fi@
+      -- Finnish
+    | CSELLLangFr
+      -- ^ @lang_fr@
+      -- French
+    | CSELLLangHr
+      -- ^ @lang_hr@
+      -- Croatian
+    | CSELLLangHu
+      -- ^ @lang_hu@
+      -- Hungarian
+    | CSELLLangId
+      -- ^ @lang_id@
+      -- Indonesian
+    | CSELLLangIs
+      -- ^ @lang_is@
+      -- Icelandic
+    | CSELLLangIt
+      -- ^ @lang_it@
+      -- Italian
+    | CSELLLangIw
+      -- ^ @lang_iw@
+      -- Hebrew
+    | CSELLLangJa
+      -- ^ @lang_ja@
+      -- Japanese
+    | CSELLLangKo
+      -- ^ @lang_ko@
+      -- Korean
+    | CSELLLangLT
+      -- ^ @lang_lt@
+      -- Lithuanian
+    | CSELLLangLv
+      -- ^ @lang_lv@
+      -- Latvian
+    | CSELLLangNl
+      -- ^ @lang_nl@
+      -- Dutch
+    | CSELLLangNo
+      -- ^ @lang_no@
+      -- Norwegian
+    | CSELLLangPl
+      -- ^ @lang_pl@
+      -- Polish
+    | CSELLLangPt
+      -- ^ @lang_pt@
+      -- Portuguese
+    | CSELLLangRo
+      -- ^ @lang_ro@
+      -- Romanian
+    | CSELLLangRu
+      -- ^ @lang_ru@
+      -- Russian
+    | CSELLLangSk
+      -- ^ @lang_sk@
+      -- Slovak
+    | CSELLLangSl
+      -- ^ @lang_sl@
+      -- Slovenian
+    | CSELLLangSr
+      -- ^ @lang_sr@
+      -- Serbian
+    | CSELLLangSv
+      -- ^ @lang_sv@
+      -- Swedish
+    | CSELLLangTr
+      -- ^ @lang_tr@
+      -- Turkish
+    | CSELLLangZhCn
+      -- ^ @lang_zh-CN@
+      -- Chinese (Simplified)
+    | CSELLLangZhTw
+      -- ^ @lang_zh-TW@
+      -- Chinese (Traditional)
+      deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
+
+instance Hashable CSEListLr
+
+instance FromHttpApiData CSEListLr where
+    parseQueryParam = \case
+        "lang_ar" -> Right CSELLLangAr
+        "lang_bg" -> Right CSELLLangBg
+        "lang_ca" -> Right CSELLLangCa
+        "lang_cs" -> Right CSELLLangCs
+        "lang_da" -> Right CSELLLangDa
+        "lang_de" -> Right CSELLLangDe
+        "lang_el" -> Right CSELLLangEl
+        "lang_en" -> Right CSELLLangEn
+        "lang_es" -> Right CSELLLangEs
+        "lang_et" -> Right CSELLLangEt
+        "lang_fi" -> Right CSELLLangFi
+        "lang_fr" -> Right CSELLLangFr
+        "lang_hr" -> Right CSELLLangHr
+        "lang_hu" -> Right CSELLLangHu
+        "lang_id" -> Right CSELLLangId
+        "lang_is" -> Right CSELLLangIs
+        "lang_it" -> Right CSELLLangIt
+        "lang_iw" -> Right CSELLLangIw
+        "lang_ja" -> Right CSELLLangJa
+        "lang_ko" -> Right CSELLLangKo
+        "lang_lt" -> Right CSELLLangLT
+        "lang_lv" -> Right CSELLLangLv
+        "lang_nl" -> Right CSELLLangNl
+        "lang_no" -> Right CSELLLangNo
+        "lang_pl" -> Right CSELLLangPl
+        "lang_pt" -> Right CSELLLangPt
+        "lang_ro" -> Right CSELLLangRo
+        "lang_ru" -> Right CSELLLangRu
+        "lang_sk" -> Right CSELLLangSk
+        "lang_sl" -> Right CSELLLangSl
+        "lang_sr" -> Right CSELLLangSr
+        "lang_sv" -> Right CSELLLangSv
+        "lang_tr" -> Right CSELLLangTr
+        "lang_zh-CN" -> Right CSELLLangZhCn
+        "lang_zh-TW" -> Right CSELLLangZhTw
+        x -> Left ("Unable to parse CSEListLr from: " <> x)
+
+instance ToHttpApiData CSEListLr where
+    toQueryParam = \case
+        CSELLLangAr -> "lang_ar"
+        CSELLLangBg -> "lang_bg"
+        CSELLLangCa -> "lang_ca"
+        CSELLLangCs -> "lang_cs"
+        CSELLLangDa -> "lang_da"
+        CSELLLangDe -> "lang_de"
+        CSELLLangEl -> "lang_el"
+        CSELLLangEn -> "lang_en"
+        CSELLLangEs -> "lang_es"
+        CSELLLangEt -> "lang_et"
+        CSELLLangFi -> "lang_fi"
+        CSELLLangFr -> "lang_fr"
+        CSELLLangHr -> "lang_hr"
+        CSELLLangHu -> "lang_hu"
+        CSELLLangId -> "lang_id"
+        CSELLLangIs -> "lang_is"
+        CSELLLangIt -> "lang_it"
+        CSELLLangIw -> "lang_iw"
+        CSELLLangJa -> "lang_ja"
+        CSELLLangKo -> "lang_ko"
+        CSELLLangLT -> "lang_lt"
+        CSELLLangLv -> "lang_lv"
+        CSELLLangNl -> "lang_nl"
+        CSELLLangNo -> "lang_no"
+        CSELLLangPl -> "lang_pl"
+        CSELLLangPt -> "lang_pt"
+        CSELLLangRo -> "lang_ro"
+        CSELLLangRu -> "lang_ru"
+        CSELLLangSk -> "lang_sk"
+        CSELLLangSl -> "lang_sl"
+        CSELLLangSr -> "lang_sr"
+        CSELLLangSv -> "lang_sv"
+        CSELLLangTr -> "lang_tr"
+        CSELLLangZhCn -> "lang_zh-CN"
+        CSELLLangZhTw -> "lang_zh-TW"
+
 instance FromJSON CSEListLr where
     parseJSON = parseJSONText "CSEListLr"
 
@@ -457,7 +998,7 @@
 
 -- | Specifies the search type: image.
 data CSEListSearchType
-    = Image
+    = CSELSTImage
       -- ^ @image@
       -- custom image search
       deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
@@ -466,12 +1007,12 @@
 
 instance FromHttpApiData CSEListSearchType where
     parseQueryParam = \case
-        "image" -> Right Image
+        "image" -> Right CSELSTImage
         x -> Left ("Unable to parse CSEListSearchType from: " <> x)
 
 instance ToHttpApiData CSEListSearchType where
     toQueryParam = \case
-        Image -> "image"
+        CSELSTImage -> "image"
 
 instance FromJSON CSEListSearchType where
     parseJSON = parseJSONText "CSEListSearchType"
diff --git a/gen/Network/Google/Resource/Search/CSE/List.hs b/gen/Network/Google/Resource/Search/CSE/List.hs
--- a/gen/Network/Google/Resource/Search/CSE/List.hs
+++ b/gen/Network/Google/Resource/Search/CSE/List.hs
@@ -49,7 +49,6 @@
     , cselGooglehost
     , cselRelatedSite
     , cselHl
-    , cselCref
     , cselSort
     , cselSiteSearch
     , cselFilter
@@ -93,53 +92,50 @@
                                  QueryParam "googlehost" Text :>
                                    QueryParam "relatedSite" Text :>
                                      QueryParam "hl" Text :>
-                                       QueryParam "cref" Text :>
-                                         QueryParam "sort" Text :>
-                                           QueryParam "siteSearch" Text :>
-                                             QueryParam "filter" CSEListFilter
-                                               :>
-                                               QueryParam "dateRestrict" Text :>
-                                                 QueryParam "linkSite" Text :>
-                                                   QueryParam "lowRange" Text :>
-                                                     QueryParam "imgType"
-                                                       CSEListImgType
-                                                       :>
-                                                       QueryParam "gl" Text :>
-                                                         QueryParam "cx" Text :>
-                                                           QueryParam
-                                                             "imgColorType"
-                                                             CSEListImgColorType
+                                       QueryParam "sort" Text :>
+                                         QueryParam "siteSearch" Text :>
+                                           QueryParam "filter" CSEListFilter :>
+                                             QueryParam "dateRestrict" Text :>
+                                               QueryParam "linkSite" Text :>
+                                                 QueryParam "lowRange" Text :>
+                                                   QueryParam "imgType"
+                                                     CSEListImgType
+                                                     :>
+                                                     QueryParam "gl" Text :>
+                                                       QueryParam "cx" Text :>
+                                                         QueryParam
+                                                           "imgColorType"
+                                                           CSEListImgColorType
+                                                           :>
+                                                           QueryParam "imgSize"
+                                                             CSEListImgSize
                                                              :>
                                                              QueryParam
-                                                               "imgSize"
-                                                               CSEListImgSize
+                                                               "exactTerms"
+                                                               Text
                                                                :>
-                                                               QueryParam
-                                                                 "exactTerms"
+                                                               QueryParam "cr"
                                                                  Text
                                                                  :>
-                                                                 QueryParam "cr"
-                                                                   Text
+                                                                 QueryParam
+                                                                   "safe"
+                                                                   CSEListSafe
                                                                    :>
                                                                    QueryParam
-                                                                     "safe"
-                                                                     CSEListSafe
+                                                                     "hq"
+                                                                     Text
                                                                      :>
                                                                      QueryParam
-                                                                       "hq"
+                                                                       "highRange"
                                                                        Text
                                                                        :>
                                                                        QueryParam
-                                                                         "highRange"
-                                                                         Text
+                                                                         "alt"
+                                                                         AltJSON
                                                                          :>
-                                                                         QueryParam
-                                                                           "alt"
-                                                                           AltJSON
-                                                                           :>
-                                                                           Get
-                                                                             '[JSON]
-                                                                             Search
+                                                                         Get
+                                                                           '[JSON]
+                                                                           Search
 
 -- | Returns metadata about the search performed, metadata about the custom
 -- search engine used for the search, and the search results.
@@ -161,7 +157,6 @@
     , _cselGooglehost       :: !(Maybe Text)
     , _cselRelatedSite      :: !(Maybe Text)
     , _cselHl               :: !(Maybe Text)
-    , _cselCref             :: !(Maybe Text)
     , _cselSort             :: !(Maybe Text)
     , _cselSiteSearch       :: !(Maybe Text)
     , _cselFilter           :: !(Maybe CSEListFilter)
@@ -214,8 +209,6 @@
 --
 -- * 'cselHl'
 --
--- * 'cselCref'
---
 -- * 'cselSort'
 --
 -- * 'cselSiteSearch'
@@ -267,7 +260,6 @@
     , _cselGooglehost = Nothing
     , _cselRelatedSite = Nothing
     , _cselHl = Nothing
-    , _cselCref = Nothing
     , _cselSort = Nothing
     , _cselSiteSearch = Nothing
     , _cselFilter = Nothing
@@ -286,8 +278,8 @@
     , _cselHighRange = Nothing
     }
 
--- | Returns images of a specific dominant color: yellow, green, teal, blue,
--- purple, pink, white, gray, black and brown.
+-- | Returns images of a specific dominant color: red, orange, yellow, green,
+-- teal, blue, purple, pink, white, gray, black and brown.
 cselImgDominantColor :: Lens' CSEList (Maybe CSEListImgDominantColor)
 cselImgDominantColor
   = lens _cselImgDominantColor
@@ -374,10 +366,6 @@
 cselHl :: Lens' CSEList (Maybe Text)
 cselHl = lens _cselHl (\ s a -> s{_cselHl = a})
 
--- | The URL of a linked custom search engine
-cselCref :: Lens' CSEList (Maybe Text)
-cselCref = lens _cselCref (\ s a -> s{_cselCref = a})
-
 -- | The sort expression to apply to the results
 cselSort :: Lens' CSEList (Maybe Text)
 cselSort = lens _cselSort (\ s a -> s{_cselSort = a})
@@ -482,7 +470,6 @@
               _cselGooglehost
               _cselRelatedSite
               _cselHl
-              _cselCref
               _cselSort
               _cselSiteSearch
               _cselFilter
diff --git a/gen/Network/Google/Resource/Search/CSE/Siterestrict/List.hs b/gen/Network/Google/Resource/Search/CSE/Siterestrict/List.hs
new file mode 100644
--- /dev/null
+++ b/gen/Network/Google/Resource/Search/CSE/Siterestrict/List.hs
@@ -0,0 +1,510 @@
+{-# LANGUAGE DataKinds          #-}
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric      #-}
+{-# LANGUAGE FlexibleInstances  #-}
+{-# LANGUAGE NoImplicitPrelude  #-}
+{-# LANGUAGE OverloadedStrings  #-}
+{-# LANGUAGE RecordWildCards    #-}
+{-# LANGUAGE TypeFamilies       #-}
+{-# LANGUAGE TypeOperators      #-}
+
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds      #-}
+{-# OPTIONS_GHC -fno-warn-unused-imports    #-}
+
+-- |
+-- Module      : Network.Google.Resource.Search.CSE.Siterestrict.List
+-- Copyright   : (c) 2015-2016 Brendan Hay
+-- License     : Mozilla Public License, v. 2.0.
+-- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Stability   : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns metadata about the search performed, metadata about the custom
+-- search engine used for the search, and the search results. Uses a small
+-- set of url patterns.
+--
+-- /See:/ <https://developers.google.com/custom-search/v1/using_rest CustomSearch API Reference> for @search.cse.siterestrict.list@.
+module Network.Google.Resource.Search.CSE.Siterestrict.List
+    (
+    -- * REST Resource
+      CSESiterestrictListResource
+
+    -- * Creating a Request
+    , cSESiterestrictList
+    , CSESiterestrictList
+
+    -- * Request Lenses
+    , cseslImgDominantColor
+    , cseslSiteSearchFilter
+    , cseslC2coff
+    , cseslOrTerms
+    , cseslStart
+    , cseslRights
+    , cseslExcludeTerms
+    , cseslNum
+    , cseslFileType
+    , cseslSearchType
+    , cseslLr
+    , cseslQ
+    , cseslGooglehost
+    , cseslRelatedSite
+    , cseslHl
+    , cseslSort
+    , cseslSiteSearch
+    , cseslFilter
+    , cseslDateRestrict
+    , cseslLinkSite
+    , cseslLowRange
+    , cseslImgType
+    , cseslGl
+    , cseslCx
+    , cseslImgColorType
+    , cseslImgSize
+    , cseslExactTerms
+    , cseslCr
+    , cseslSafe
+    , cseslHq
+    , cseslHighRange
+    ) where
+
+import           Network.Google.CustomSearch.Types
+import           Network.Google.Prelude
+
+-- | A resource alias for @search.cse.siterestrict.list@ method which the
+-- 'CSESiterestrictList' request conforms to.
+type CSESiterestrictListResource =
+     "customsearch" :>
+       "v1" :>
+         "siterestrict" :>
+           QueryParam "q" Text :>
+             QueryParam "imgDominantColor"
+               CSESiterestrictListImgDominantColor
+               :>
+               QueryParam "siteSearchFilter"
+                 CSESiterestrictListSiteSearchFilter
+                 :>
+                 QueryParam "c2coff" Text :>
+                   QueryParam "orTerms" Text :>
+                     QueryParam "start" (Textual Word32) :>
+                       QueryParam "rights" Text :>
+                         QueryParam "excludeTerms" Text :>
+                           QueryParam "num" (Textual Word32) :>
+                             QueryParam "fileType" Text :>
+                               QueryParam "searchType"
+                                 CSESiterestrictListSearchType
+                                 :>
+                                 QueryParam "lr" CSESiterestrictListLr :>
+                                   QueryParam "googlehost" Text :>
+                                     QueryParam "relatedSite" Text :>
+                                       QueryParam "hl" Text :>
+                                         QueryParam "sort" Text :>
+                                           QueryParam "siteSearch" Text :>
+                                             QueryParam "filter"
+                                               CSESiterestrictListFilter
+                                               :>
+                                               QueryParam "dateRestrict" Text :>
+                                                 QueryParam "linkSite" Text :>
+                                                   QueryParam "lowRange" Text :>
+                                                     QueryParam "imgType"
+                                                       CSESiterestrictListImgType
+                                                       :>
+                                                       QueryParam "gl" Text :>
+                                                         QueryParam "cx" Text :>
+                                                           QueryParam
+                                                             "imgColorType"
+                                                             CSESiterestrictListImgColorType
+                                                             :>
+                                                             QueryParam
+                                                               "imgSize"
+                                                               CSESiterestrictListImgSize
+                                                               :>
+                                                               QueryParam
+                                                                 "exactTerms"
+                                                                 Text
+                                                                 :>
+                                                                 QueryParam "cr"
+                                                                   Text
+                                                                   :>
+                                                                   QueryParam
+                                                                     "safe"
+                                                                     CSESiterestrictListSafe
+                                                                     :>
+                                                                     QueryParam
+                                                                       "hq"
+                                                                       Text
+                                                                       :>
+                                                                       QueryParam
+                                                                         "highRange"
+                                                                         Text
+                                                                         :>
+                                                                         QueryParam
+                                                                           "alt"
+                                                                           AltJSON
+                                                                           :>
+                                                                           Get
+                                                                             '[JSON]
+                                                                             Search
+
+-- | Returns metadata about the search performed, metadata about the custom
+-- search engine used for the search, and the search results. Uses a small
+-- set of url patterns.
+--
+-- /See:/ 'cSESiterestrictList' smart constructor.
+data CSESiterestrictList = CSESiterestrictList'
+    { _cseslImgDominantColor :: !(Maybe CSESiterestrictListImgDominantColor)
+    , _cseslSiteSearchFilter :: !(Maybe CSESiterestrictListSiteSearchFilter)
+    , _cseslC2coff           :: !(Maybe Text)
+    , _cseslOrTerms          :: !(Maybe Text)
+    , _cseslStart            :: !(Maybe (Textual Word32))
+    , _cseslRights           :: !(Maybe Text)
+    , _cseslExcludeTerms     :: !(Maybe Text)
+    , _cseslNum              :: !(Textual Word32)
+    , _cseslFileType         :: !(Maybe Text)
+    , _cseslSearchType       :: !(Maybe CSESiterestrictListSearchType)
+    , _cseslLr               :: !(Maybe CSESiterestrictListLr)
+    , _cseslQ                :: !Text
+    , _cseslGooglehost       :: !(Maybe Text)
+    , _cseslRelatedSite      :: !(Maybe Text)
+    , _cseslHl               :: !(Maybe Text)
+    , _cseslSort             :: !(Maybe Text)
+    , _cseslSiteSearch       :: !(Maybe Text)
+    , _cseslFilter           :: !(Maybe CSESiterestrictListFilter)
+    , _cseslDateRestrict     :: !(Maybe Text)
+    , _cseslLinkSite         :: !(Maybe Text)
+    , _cseslLowRange         :: !(Maybe Text)
+    , _cseslImgType          :: !(Maybe CSESiterestrictListImgType)
+    , _cseslGl               :: !(Maybe Text)
+    , _cseslCx               :: !(Maybe Text)
+    , _cseslImgColorType     :: !(Maybe CSESiterestrictListImgColorType)
+    , _cseslImgSize          :: !(Maybe CSESiterestrictListImgSize)
+    , _cseslExactTerms       :: !(Maybe Text)
+    , _cseslCr               :: !(Maybe Text)
+    , _cseslSafe             :: !CSESiterestrictListSafe
+    , _cseslHq               :: !(Maybe Text)
+    , _cseslHighRange        :: !(Maybe Text)
+    } deriving (Eq,Show,Data,Typeable,Generic)
+
+-- | Creates a value of 'CSESiterestrictList' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'cseslImgDominantColor'
+--
+-- * 'cseslSiteSearchFilter'
+--
+-- * 'cseslC2coff'
+--
+-- * 'cseslOrTerms'
+--
+-- * 'cseslStart'
+--
+-- * 'cseslRights'
+--
+-- * 'cseslExcludeTerms'
+--
+-- * 'cseslNum'
+--
+-- * 'cseslFileType'
+--
+-- * 'cseslSearchType'
+--
+-- * 'cseslLr'
+--
+-- * 'cseslQ'
+--
+-- * 'cseslGooglehost'
+--
+-- * 'cseslRelatedSite'
+--
+-- * 'cseslHl'
+--
+-- * 'cseslSort'
+--
+-- * 'cseslSiteSearch'
+--
+-- * 'cseslFilter'
+--
+-- * 'cseslDateRestrict'
+--
+-- * 'cseslLinkSite'
+--
+-- * 'cseslLowRange'
+--
+-- * 'cseslImgType'
+--
+-- * 'cseslGl'
+--
+-- * 'cseslCx'
+--
+-- * 'cseslImgColorType'
+--
+-- * 'cseslImgSize'
+--
+-- * 'cseslExactTerms'
+--
+-- * 'cseslCr'
+--
+-- * 'cseslSafe'
+--
+-- * 'cseslHq'
+--
+-- * 'cseslHighRange'
+cSESiterestrictList
+    :: Text -- ^ 'cseslQ'
+    -> CSESiterestrictList
+cSESiterestrictList pCseslQ_ =
+    CSESiterestrictList'
+    { _cseslImgDominantColor = Nothing
+    , _cseslSiteSearchFilter = Nothing
+    , _cseslC2coff = Nothing
+    , _cseslOrTerms = Nothing
+    , _cseslStart = Nothing
+    , _cseslRights = Nothing
+    , _cseslExcludeTerms = Nothing
+    , _cseslNum = 10
+    , _cseslFileType = Nothing
+    , _cseslSearchType = Nothing
+    , _cseslLr = Nothing
+    , _cseslQ = pCseslQ_
+    , _cseslGooglehost = Nothing
+    , _cseslRelatedSite = Nothing
+    , _cseslHl = Nothing
+    , _cseslSort = Nothing
+    , _cseslSiteSearch = Nothing
+    , _cseslFilter = Nothing
+    , _cseslDateRestrict = Nothing
+    , _cseslLinkSite = Nothing
+    , _cseslLowRange = Nothing
+    , _cseslImgType = Nothing
+    , _cseslGl = Nothing
+    , _cseslCx = Nothing
+    , _cseslImgColorType = Nothing
+    , _cseslImgSize = Nothing
+    , _cseslExactTerms = Nothing
+    , _cseslCr = Nothing
+    , _cseslSafe = CSESLSOff
+    , _cseslHq = Nothing
+    , _cseslHighRange = Nothing
+    }
+
+-- | Returns images of a specific dominant color: red, orange, yellow, green,
+-- teal, blue, purple, pink, white, gray, black and brown.
+cseslImgDominantColor :: Lens' CSESiterestrictList (Maybe CSESiterestrictListImgDominantColor)
+cseslImgDominantColor
+  = lens _cseslImgDominantColor
+      (\ s a -> s{_cseslImgDominantColor = a})
+
+-- | Controls whether to include or exclude results from the site named in
+-- the as_sitesearch parameter
+cseslSiteSearchFilter :: Lens' CSESiterestrictList (Maybe CSESiterestrictListSiteSearchFilter)
+cseslSiteSearchFilter
+  = lens _cseslSiteSearchFilter
+      (\ s a -> s{_cseslSiteSearchFilter = a})
+
+-- | Turns off the translation between zh-CN and zh-TW.
+cseslC2coff :: Lens' CSESiterestrictList (Maybe Text)
+cseslC2coff
+  = lens _cseslC2coff (\ s a -> s{_cseslC2coff = a})
+
+-- | Provides additional search terms to check for in a document, where each
+-- document in the search results must contain at least one of the
+-- additional search terms
+cseslOrTerms :: Lens' CSESiterestrictList (Maybe Text)
+cseslOrTerms
+  = lens _cseslOrTerms (\ s a -> s{_cseslOrTerms = a})
+
+-- | The index of the first result to return
+cseslStart :: Lens' CSESiterestrictList (Maybe Word32)
+cseslStart
+  = lens _cseslStart (\ s a -> s{_cseslStart = a}) .
+      mapping _Coerce
+
+-- | Filters based on licensing. Supported values include: cc_publicdomain,
+-- cc_attribute, cc_sharealike, cc_noncommercial, cc_nonderived and
+-- combinations of these.
+cseslRights :: Lens' CSESiterestrictList (Maybe Text)
+cseslRights
+  = lens _cseslRights (\ s a -> s{_cseslRights = a})
+
+-- | Identifies a word or phrase that should not appear in any documents in
+-- the search results
+cseslExcludeTerms :: Lens' CSESiterestrictList (Maybe Text)
+cseslExcludeTerms
+  = lens _cseslExcludeTerms
+      (\ s a -> s{_cseslExcludeTerms = a})
+
+-- | Number of search results to return
+cseslNum :: Lens' CSESiterestrictList Word32
+cseslNum
+  = lens _cseslNum (\ s a -> s{_cseslNum = a}) .
+      _Coerce
+
+-- | Returns images of a specified type. Some of the allowed values are: bmp,
+-- gif, png, jpg, svg, pdf, ...
+cseslFileType :: Lens' CSESiterestrictList (Maybe Text)
+cseslFileType
+  = lens _cseslFileType
+      (\ s a -> s{_cseslFileType = a})
+
+-- | Specifies the search type: image.
+cseslSearchType :: Lens' CSESiterestrictList (Maybe CSESiterestrictListSearchType)
+cseslSearchType
+  = lens _cseslSearchType
+      (\ s a -> s{_cseslSearchType = a})
+
+-- | The language restriction for the search results
+cseslLr :: Lens' CSESiterestrictList (Maybe CSESiterestrictListLr)
+cseslLr = lens _cseslLr (\ s a -> s{_cseslLr = a})
+
+-- | Query
+cseslQ :: Lens' CSESiterestrictList Text
+cseslQ = lens _cseslQ (\ s a -> s{_cseslQ = a})
+
+-- | The local Google domain to use to perform the search.
+cseslGooglehost :: Lens' CSESiterestrictList (Maybe Text)
+cseslGooglehost
+  = lens _cseslGooglehost
+      (\ s a -> s{_cseslGooglehost = a})
+
+-- | Specifies that all search results should be pages that are related to
+-- the specified URL
+cseslRelatedSite :: Lens' CSESiterestrictList (Maybe Text)
+cseslRelatedSite
+  = lens _cseslRelatedSite
+      (\ s a -> s{_cseslRelatedSite = a})
+
+-- | Sets the user interface language.
+cseslHl :: Lens' CSESiterestrictList (Maybe Text)
+cseslHl = lens _cseslHl (\ s a -> s{_cseslHl = a})
+
+-- | The sort expression to apply to the results
+cseslSort :: Lens' CSESiterestrictList (Maybe Text)
+cseslSort
+  = lens _cseslSort (\ s a -> s{_cseslSort = a})
+
+-- | Specifies all search results should be pages from a given site
+cseslSiteSearch :: Lens' CSESiterestrictList (Maybe Text)
+cseslSiteSearch
+  = lens _cseslSiteSearch
+      (\ s a -> s{_cseslSiteSearch = a})
+
+-- | Controls turning on or off the duplicate content filter.
+cseslFilter :: Lens' CSESiterestrictList (Maybe CSESiterestrictListFilter)
+cseslFilter
+  = lens _cseslFilter (\ s a -> s{_cseslFilter = a})
+
+-- | Specifies all search results are from a time period
+cseslDateRestrict :: Lens' CSESiterestrictList (Maybe Text)
+cseslDateRestrict
+  = lens _cseslDateRestrict
+      (\ s a -> s{_cseslDateRestrict = a})
+
+-- | Specifies that all search results should contain a link to a particular
+-- URL
+cseslLinkSite :: Lens' CSESiterestrictList (Maybe Text)
+cseslLinkSite
+  = lens _cseslLinkSite
+      (\ s a -> s{_cseslLinkSite = a})
+
+-- | Creates a range in form as_nlo value..as_nhi value and attempts to
+-- append it to query
+cseslLowRange :: Lens' CSESiterestrictList (Maybe Text)
+cseslLowRange
+  = lens _cseslLowRange
+      (\ s a -> s{_cseslLowRange = a})
+
+-- | Returns images of a type, which can be one of: clipart, face, lineart,
+-- news, and photo.
+cseslImgType :: Lens' CSESiterestrictList (Maybe CSESiterestrictListImgType)
+cseslImgType
+  = lens _cseslImgType (\ s a -> s{_cseslImgType = a})
+
+-- | Geolocation of end user.
+cseslGl :: Lens' CSESiterestrictList (Maybe Text)
+cseslGl = lens _cseslGl (\ s a -> s{_cseslGl = a})
+
+-- | The custom search engine ID to scope this search query
+cseslCx :: Lens' CSESiterestrictList (Maybe Text)
+cseslCx = lens _cseslCx (\ s a -> s{_cseslCx = a})
+
+-- | Returns black and white, grayscale, or color images: mono, gray, and
+-- color.
+cseslImgColorType :: Lens' CSESiterestrictList (Maybe CSESiterestrictListImgColorType)
+cseslImgColorType
+  = lens _cseslImgColorType
+      (\ s a -> s{_cseslImgColorType = a})
+
+-- | Returns images of a specified size, where size can be one of: icon,
+-- small, medium, large, xlarge, xxlarge, and huge.
+cseslImgSize :: Lens' CSESiterestrictList (Maybe CSESiterestrictListImgSize)
+cseslImgSize
+  = lens _cseslImgSize (\ s a -> s{_cseslImgSize = a})
+
+-- | Identifies a phrase that all documents in the search results must
+-- contain
+cseslExactTerms :: Lens' CSESiterestrictList (Maybe Text)
+cseslExactTerms
+  = lens _cseslExactTerms
+      (\ s a -> s{_cseslExactTerms = a})
+
+-- | Country restrict(s).
+cseslCr :: Lens' CSESiterestrictList (Maybe Text)
+cseslCr = lens _cseslCr (\ s a -> s{_cseslCr = a})
+
+-- | Search safety level
+cseslSafe :: Lens' CSESiterestrictList CSESiterestrictListSafe
+cseslSafe
+  = lens _cseslSafe (\ s a -> s{_cseslSafe = a})
+
+-- | Appends the extra query terms to the query.
+cseslHq :: Lens' CSESiterestrictList (Maybe Text)
+cseslHq = lens _cseslHq (\ s a -> s{_cseslHq = a})
+
+-- | Creates a range in form as_nlo value..as_nhi value and attempts to
+-- append it to query
+cseslHighRange :: Lens' CSESiterestrictList (Maybe Text)
+cseslHighRange
+  = lens _cseslHighRange
+      (\ s a -> s{_cseslHighRange = a})
+
+instance GoogleRequest CSESiterestrictList where
+        type Rs CSESiterestrictList = Search
+        type Scopes CSESiterestrictList = '[]
+        requestClient CSESiterestrictList'{..}
+          = go (Just _cseslQ) _cseslImgDominantColor
+              _cseslSiteSearchFilter
+              _cseslC2coff
+              _cseslOrTerms
+              _cseslStart
+              _cseslRights
+              _cseslExcludeTerms
+              (Just _cseslNum)
+              _cseslFileType
+              _cseslSearchType
+              _cseslLr
+              _cseslGooglehost
+              _cseslRelatedSite
+              _cseslHl
+              _cseslSort
+              _cseslSiteSearch
+              _cseslFilter
+              _cseslDateRestrict
+              _cseslLinkSite
+              _cseslLowRange
+              _cseslImgType
+              _cseslGl
+              _cseslCx
+              _cseslImgColorType
+              _cseslImgSize
+              _cseslExactTerms
+              _cseslCr
+              (Just _cseslSafe)
+              _cseslHq
+              _cseslHighRange
+              (Just AltJSON)
+              customSearchService
+          where go
+                  = buildClient
+                      (Proxy :: Proxy CSESiterestrictListResource)
+                      mempty
diff --git a/gogol-customsearch.cabal b/gogol-customsearch.cabal
--- a/gogol-customsearch.cabal
+++ b/gogol-customsearch.cabal
@@ -1,5 +1,5 @@
 name:                  gogol-customsearch
-version:               0.3.0
+version:               0.4.0
 synopsis:              Google CustomSearch SDK.
 homepage:              https://github.com/brendanhay/gogol
 bug-reports:           https://github.com/brendanhay/gogol/issues
@@ -14,7 +14,7 @@
 extra-source-files:    README.md src/.gitkeep
 
 description:
-    Lets you search over a website or collection of websites
+    Searches over a website or collection of websites
     .
     /Warning:/ This is an experimental prototype/preview release which is still
     under exploratory development and not intended for public use, caveat emptor!
@@ -36,11 +36,12 @@
           Network.Google.CustomSearch
         , Network.Google.CustomSearch.Types
         , Network.Google.Resource.Search.CSE.List
+        , Network.Google.Resource.Search.CSE.Siterestrict.List
 
     other-modules:
           Network.Google.CustomSearch.Types.Product
         , Network.Google.CustomSearch.Types.Sum
 
     build-depends:
-          gogol-core == 0.3.0.*
+          gogol-core == 0.4.0.*
         , base       >= 4.7 && < 5
