on develop help sign in
Regenerating sum types to replace To/FromText instances
commit2fef97e8e9eec35d8736698da1eb1201e170665d authorBrendan Hay <brendan.g.hay@gmail.com> dateTue 10 May 2016, 17:14 (10 years ago) parentc7d5b60
45 files changed+7775−7775
gogol-adexchange-buyer/gen/Network/Google/AdExchangeBuyer/Types/Sum.hs+41−41 gogol-admin-directory/gen/Network/Google/Directory/Types/Sum.hs+201−201 gogol-adsense-host/gen/Network/Google/AdSenseHost/Types/Sum.hs+11−11 gogol-affiliates/gen/Network/Google/Affiliates/Types/Sum.hs+174−174 gogol-analytics/gen/Network/Google/Analytics/Types/Sum.hs+24−24 gogol-android-publisher/gen/Network/Google/AndroidPublisher/Types/Sum.hs+142−142 gogol-apps-activity/gen/Network/Google/AppsActivity/Types/Sum.hs+59−59 gogol-apps-calendar/gen/Network/Google/AppsCalendar/Types/Sum.hs+33−33 gogol-apps-reseller/gen/Network/Google/AppsReseller/Types/Sum.hs+10−10 gogol-bigquery/gen/Network/Google/BigQuery/Types/Sum.hs+15−15 gogol-blogger/gen/Network/Google/Blogger/Types/Sum.hs+174−174 gogol-books/gen/Network/Google/Books/Types/Sum.hs+173−173 gogol-civicinfo/gen/Network/Google/CivicInfo/Types/Sum.hs+60−60 gogol-cloudmonitoring/gen/Network/Google/CloudMonitoring/Types/Sum.hs+18−18 gogol-compute/gen/Network/Google/Compute/Types/Sum.hs+653−653 gogol-customsearch/gen/Network/Google/CustomSearch/Types/Sum.hs+117−117 gogol-datastore/gen/Network/Google/Datastore/Types/Sum.hs+70−70 gogol-deploymentmanager/gen/Network/Google/DeploymentManager/Types/Sum.hs+29−29 gogol-dfareporting/gen/Network/Google/DFAReporting/Types/Sum.hs+1941−1941 gogol-dns/gen/Network/Google/DNS/Types/Sum.hs+13−13 gogol-doubleclick-bids/gen/Network/Google/DoubleClickBids/Types/Sum.hs+640−640 gogol-drive/gen/Network/Google/Drive/Types/Sum.hs+8−8 gogol-fitness/gen/Network/Google/Fitness/Types/Sum.hs+43−43 gogol-fonts/gen/Network/Google/Fonts/Types/Sum.hs+11−11 gogol-freebasesearch/gen/Network/Google/FreebaseSearch/Types/Sum.hs+43−43 gogol-games-configuration/gen/Network/Google/GamesConfiguration/Types/Sum.hs+8−8 gogol-games/gen/Network/Google/Games/Types/Sum.hs+78−78 gogol-gmail/gen/Network/Google/Gmail/Types/Sum.hs+70−70 gogol-maps-coordinate/gen/Network/Google/MapsCoordinate/Types/Sum.hs+20−20 gogol-maps-engine/gen/Network/Google/MapsEngine/Types/Sum.hs+417−417 gogol-mirror/gen/Network/Google/Mirror/Types/Sum.hs+8−8 gogol-pagespeed/gen/Network/Google/PageSpeed/Types/Sum.hs+8−8 gogol-plus-domains/gen/Network/Google/PlusDomains/Types/Sum.hs+40−40 gogol-plus/gen/Network/Google/Plus/Types/Sum.hs+42−42 gogol-replicapool/gen/Network/Google/ReplicaPool/Types/Sum.hs+34−34 gogol-resourceviews/gen/Network/Google/ResourceViews/Types/Sum.hs+15−15 gogol-shopping-content/gen/Network/Google/ShoppingContent/Types/Sum.hs+34−34 gogol-storage/gen/Network/Google/Storage/Types/Sum.hs+233−233 gogol-tagmanager/gen/Network/Google/TagManager/Types/Sum.hs+146−146 gogol-translate/gen/Network/Google/Translate/Types/Sum.hs+8−8 gogol-urlshortener/gen/Network/Google/URLShortener/Types/Sum.hs+15−15 gogol-useraccounts/gen/Network/Google/UserAccounts/Types/Sum.hs+28−28 gogol-vision/gen/Network/Google/Vision/Types/Sum.hs+194−194 gogol-webmaster-tools/gen/Network/Google/WebmasterTools/Types/Sum.hs+92−92 gogol-youtube/gen/Network/Google/YouTube/Types/Sum.hs+1582−1582
gogol-adexchange-buyer/gen/Network/Google/AdExchangeBuyer/Types/Sum.hs+41−41
@@ -38,16 +38,16 @@ data CreativesListOpenAuctionStatusFilter
3838
3939instance Hashable CreativesListOpenAuctionStatusFilter
4040
41−instance FromText CreativesListOpenAuctionStatusFilter where
42− fromText = \case
43− "approved" -> Just Approved
44− "conditionally_approved" -> Just ConditionallyApproved
45− "disapproved" -> Just DisApproved
46− "not_checked" -> Just NotChecked
47− _ -> Nothing
48−
49−instance ToText CreativesListOpenAuctionStatusFilter where
50− toText = \case
41+instance FromHttpApiData CreativesListOpenAuctionStatusFilter where
42+ parseQueryParam = \case
43+ "approved" -> Right Approved
44+ "conditionally_approved" -> Right ConditionallyApproved
45+ "disapproved" -> Right DisApproved
46+ "not_checked" -> Right NotChecked
47+ x -> Left ("Unable to parse CreativesListOpenAuctionStatusFilter from: " <> x)
48+
49+instance ToHttpApiData CreativesListOpenAuctionStatusFilter where
50+ toQueryParam = \case
5151 Approved -> "approved"
5252 ConditionallyApproved -> "conditionally_approved"
5353 DisApproved -> "disapproved"
@@ -75,17 +75,17 @@ data ProposalsPatchUpdateAction
7575
7676instance Hashable ProposalsPatchUpdateAction
7777
78−instance FromText ProposalsPatchUpdateAction where
79− fromText = \case
80− "accept" -> Just Accept
81− "cancel" -> Just Cancel
82− "propose" -> Just Propose
83− "unknownAction" -> Just UnknownAction
84− "updateFinalized" -> Just UpdateFinalized
85− _ -> Nothing
86−
87−instance ToText ProposalsPatchUpdateAction where
88− toText = \case
78+instance FromHttpApiData ProposalsPatchUpdateAction where
79+ parseQueryParam = \case
80+ "accept" -> Right Accept
81+ "cancel" -> Right Cancel
82+ "propose" -> Right Propose
83+ "unknownAction" -> Right UnknownAction
84+ "updateFinalized" -> Right UpdateFinalized
85+ x -> Left ("Unable to parse ProposalsPatchUpdateAction from: " <> x)
86+
87+instance ToHttpApiData ProposalsPatchUpdateAction where
88+ toQueryParam = \case
8989 Accept -> "accept"
9090 Cancel -> "cancel"
9191 Propose -> "propose"
@@ -117,16 +117,16 @@ data CreativesListDealsStatusFilter
117117
118118instance Hashable CreativesListDealsStatusFilter
119119
120−instance FromText CreativesListDealsStatusFilter where
121− fromText = \case
122− "approved" -> Just CLDSFApproved
123− "conditionally_approved" -> Just CLDSFConditionallyApproved
124− "disapproved" -> Just CLDSFDisApproved
125− "not_checked" -> Just CLDSFNotChecked
126− _ -> Nothing
120+instance FromHttpApiData CreativesListDealsStatusFilter where
121+ parseQueryParam = \case
122+ "approved" -> Right CLDSFApproved
123+ "conditionally_approved" -> Right CLDSFConditionallyApproved
124+ "disapproved" -> Right CLDSFDisApproved
125+ "not_checked" -> Right CLDSFNotChecked
126+ x -> Left ("Unable to parse CreativesListDealsStatusFilter from: " <> x)
127127
128−instance ToText CreativesListDealsStatusFilter where
129− toText = \case
128+instance ToHttpApiData CreativesListDealsStatusFilter where
129+ toQueryParam = \case
130130 CLDSFApproved -> "approved"
131131 CLDSFConditionallyApproved -> "conditionally_approved"
132132 CLDSFDisApproved -> "disapproved"
@@ -154,17 +154,17 @@ data ProposalsUpdateUpdateAction
154154
155155instance Hashable ProposalsUpdateUpdateAction
156156
157−instance FromText ProposalsUpdateUpdateAction where
158− fromText = \case
159− "accept" -> Just PUUAAccept
160− "cancel" -> Just PUUACancel
161− "propose" -> Just PUUAPropose
162− "unknownAction" -> Just PUUAUnknownAction
163− "updateFinalized" -> Just PUUAUpdateFinalized
164− _ -> Nothing
165−
166−instance ToText ProposalsUpdateUpdateAction where
167− toText = \case
157+instance FromHttpApiData ProposalsUpdateUpdateAction where
158+ parseQueryParam = \case
159+ "accept" -> Right PUUAAccept
160+ "cancel" -> Right PUUACancel
161+ "propose" -> Right PUUAPropose
162+ "unknownAction" -> Right PUUAUnknownAction
163+ "updateFinalized" -> Right PUUAUpdateFinalized
164+ x -> Left ("Unable to parse ProposalsUpdateUpdateAction from: " <> x)
165+
166+instance ToHttpApiData ProposalsUpdateUpdateAction where
167+ toQueryParam = \case
168168 PUUAAccept -> "accept"
169169 PUUACancel -> "cancel"
170170 PUUAPropose -> "propose"
gogol-admin-directory/gen/Network/Google/Directory/Types/Sum.hs+201−201
@@ -39,17 +39,17 @@ data UsersListEvent
3939
4040instance Hashable UsersListEvent
4141
42−instance FromText UsersListEvent where
43− fromText = \case
44− "add" -> Just Add
45− "delete" -> Just Delete'
46− "makeAdmin" -> Just MakeAdmin
47− "undelete" -> Just Undelete
48− "update" -> Just Update
49− _ -> Nothing
50−
51−instance ToText UsersListEvent where
52− toText = \case
42+instance FromHttpApiData UsersListEvent where
43+ parseQueryParam = \case
44+ "add" -> Right Add
45+ "delete" -> Right Delete'
46+ "makeAdmin" -> Right MakeAdmin
47+ "undelete" -> Right Undelete
48+ "update" -> Right Update
49+ x -> Left ("Unable to parse UsersListEvent from: " <> x)
50+
51+instance ToHttpApiData UsersListEvent where
52+ toQueryParam = \case
5353 Add -> "add"
5454 Delete' -> "delete"
5555 MakeAdmin -> "makeAdmin"
@@ -74,14 +74,14 @@ data UsersAliasesListEvent
7474
7575instance Hashable UsersAliasesListEvent
7676
77−instance FromText UsersAliasesListEvent where
78− fromText = \case
79− "add" -> Just UALEAdd
80− "delete" -> Just UALEDelete'
81− _ -> Nothing
77+instance FromHttpApiData UsersAliasesListEvent where
78+ parseQueryParam = \case
79+ "add" -> Right UALEAdd
80+ "delete" -> Right UALEDelete'
81+ x -> Left ("Unable to parse UsersAliasesListEvent from: " <> x)
8282
83−instance ToText UsersAliasesListEvent where
84− toText = \case
83+instance ToHttpApiData UsersAliasesListEvent where
84+ toQueryParam = \case
8585 UALEAdd -> "add"
8686 UALEDelete' -> "delete"
8787
@@ -103,14 +103,14 @@ data UsersAliasesWatchEvent
103103
104104instance Hashable UsersAliasesWatchEvent
105105
106−instance FromText UsersAliasesWatchEvent where
107− fromText = \case
108− "add" -> Just UAWEAdd
109− "delete" -> Just UAWEDelete'
110− _ -> Nothing
106+instance FromHttpApiData UsersAliasesWatchEvent where
107+ parseQueryParam = \case
108+ "add" -> Right UAWEAdd
109+ "delete" -> Right UAWEDelete'
110+ x -> Left ("Unable to parse UsersAliasesWatchEvent from: " <> x)
111111
112−instance ToText UsersAliasesWatchEvent where
113− toText = \case
112+instance ToHttpApiData UsersAliasesWatchEvent where
113+ toQueryParam = \case
114114 UAWEAdd -> "add"
115115 UAWEDelete' -> "delete"
116116
@@ -141,17 +141,17 @@ data UsersWatchEvent
141141
142142instance Hashable UsersWatchEvent
143143
144−instance FromText UsersWatchEvent where
145− fromText = \case
146− "add" -> Just UWEAdd
147− "delete" -> Just UWEDelete'
148− "makeAdmin" -> Just UWEMakeAdmin
149− "undelete" -> Just UWEUndelete
150− "update" -> Just UWEUpdate
151− _ -> Nothing
152−
153−instance ToText UsersWatchEvent where
154− toText = \case
144+instance FromHttpApiData UsersWatchEvent where
145+ parseQueryParam = \case
146+ "add" -> Right UWEAdd
147+ "delete" -> Right UWEDelete'
148+ "makeAdmin" -> Right UWEMakeAdmin
149+ "undelete" -> Right UWEUndelete
150+ "update" -> Right UWEUpdate
151+ x -> Left ("Unable to parse UsersWatchEvent from: " <> x)
152+
153+instance ToHttpApiData UsersWatchEvent where
154+ toQueryParam = \case
155155 UWEAdd -> "add"
156156 UWEDelete' -> "delete"
157157 UWEMakeAdmin -> "makeAdmin"
@@ -177,14 +177,14 @@ data ChromeosDevicesPatchProjection
177177
178178instance Hashable ChromeosDevicesPatchProjection
179179
180−instance FromText ChromeosDevicesPatchProjection where
181− fromText = \case
182− "BASIC" -> Just Basic
183− "FULL" -> Just Full
184− _ -> Nothing
180+instance FromHttpApiData ChromeosDevicesPatchProjection where
181+ parseQueryParam = \case
182+ "BASIC" -> Right Basic
183+ "FULL" -> Right Full
184+ x -> Left ("Unable to parse ChromeosDevicesPatchProjection from: " <> x)
185185
186−instance ToText ChromeosDevicesPatchProjection where
187− toText = \case
186+instance ToHttpApiData ChromeosDevicesPatchProjection where
187+ toQueryParam = \case
188188 Basic -> "BASIC"
189189 Full -> "FULL"
190190
@@ -207,14 +207,14 @@ data ChromeosDevicesGetProjection
207207
208208instance Hashable ChromeosDevicesGetProjection
209209
210−instance FromText ChromeosDevicesGetProjection where
211− fromText = \case
212− "BASIC" -> Just CDGPBasic
213− "FULL" -> Just CDGPFull
214− _ -> Nothing
210+instance FromHttpApiData ChromeosDevicesGetProjection where
211+ parseQueryParam = \case
212+ "BASIC" -> Right CDGPBasic
213+ "FULL" -> Right CDGPFull
214+ x -> Left ("Unable to parse ChromeosDevicesGetProjection from: " <> x)
215215
216−instance ToText ChromeosDevicesGetProjection where
217− toText = \case
216+instance ToHttpApiData ChromeosDevicesGetProjection where
217+ toQueryParam = \case
218218 CDGPBasic -> "BASIC"
219219 CDGPFull -> "FULL"
220220
@@ -236,14 +236,14 @@ data UsersListViewType
236236
237237instance Hashable UsersListViewType
238238
239−instance FromText UsersListViewType where
240− fromText = \case
241− "admin_view" -> Just AdminView
242− "domain_public" -> Just DomainPublic
243− _ -> Nothing
239+instance FromHttpApiData UsersListViewType where
240+ parseQueryParam = \case
241+ "admin_view" -> Right AdminView
242+ "domain_public" -> Right DomainPublic
243+ x -> Left ("Unable to parse UsersListViewType from: " <> x)
244244
245−instance ToText UsersListViewType where
246− toText = \case
245+instance ToHttpApiData UsersListViewType where
246+ toQueryParam = \case
247247 AdminView -> "admin_view"
248248 DomainPublic -> "domain_public"
249249
@@ -265,14 +265,14 @@ data OrgUnitsListType
265265
266266instance Hashable OrgUnitsListType
267267
268−instance FromText OrgUnitsListType where
269− fromText = \case
270− "all" -> Just All
271− "children" -> Just Children
272− _ -> Nothing
268+instance FromHttpApiData OrgUnitsListType where
269+ parseQueryParam = \case
270+ "all" -> Right All
271+ "children" -> Right Children
272+ x -> Left ("Unable to parse OrgUnitsListType from: " <> x)
273273
274−instance ToText OrgUnitsListType where
275− toText = \case
274+instance ToHttpApiData OrgUnitsListType where
275+ toQueryParam = \case
276276 All -> "all"
277277 Children -> "children"
278278
@@ -295,14 +295,14 @@ data MobileDevicesListSortOrder
295295
296296instance Hashable MobileDevicesListSortOrder
297297
298−instance FromText MobileDevicesListSortOrder where
299− fromText = \case
300− "ASCENDING" -> Just Ascending
301− "DESCENDING" -> Just Descending
302− _ -> Nothing
298+instance FromHttpApiData MobileDevicesListSortOrder where
299+ parseQueryParam = \case
300+ "ASCENDING" -> Right Ascending
301+ "DESCENDING" -> Right Descending
302+ x -> Left ("Unable to parse MobileDevicesListSortOrder from: " <> x)
303303
304−instance ToText MobileDevicesListSortOrder where
305− toText = \case
304+instance ToHttpApiData MobileDevicesListSortOrder where
305+ toQueryParam = \case
306306 Ascending -> "ASCENDING"
307307 Descending -> "DESCENDING"
308308
@@ -327,15 +327,15 @@ data UsersListOrderBy
327327
328328instance Hashable UsersListOrderBy
329329
330−instance FromText UsersListOrderBy where
331− fromText = \case
332− "email" -> Just Email
333− "familyName" -> Just FamilyName
334− "givenName" -> Just GivenName
335− _ -> Nothing
330+instance FromHttpApiData UsersListOrderBy where
331+ parseQueryParam = \case
332+ "email" -> Right Email
333+ "familyName" -> Right FamilyName
334+ "givenName" -> Right GivenName
335+ x -> Left ("Unable to parse UsersListOrderBy from: " <> x)
336336
337−instance ToText UsersListOrderBy where
338− toText = \case
337+instance ToHttpApiData UsersListOrderBy where
338+ toQueryParam = \case
339339 Email -> "email"
340340 FamilyName -> "familyName"
341341 GivenName -> "givenName"
@@ -358,14 +358,14 @@ data UsersWatchViewType
358358
359359instance Hashable UsersWatchViewType
360360
361−instance FromText UsersWatchViewType where
362− fromText = \case
363− "admin_view" -> Just UWVTAdminView
364− "domain_public" -> Just UWVTDomainPublic
365− _ -> Nothing
361+instance FromHttpApiData UsersWatchViewType where
362+ parseQueryParam = \case
363+ "admin_view" -> Right UWVTAdminView
364+ "domain_public" -> Right UWVTDomainPublic
365+ x -> Left ("Unable to parse UsersWatchViewType from: " <> x)
366366
367−instance ToText UsersWatchViewType where
368− toText = \case
367+instance ToHttpApiData UsersWatchViewType where
368+ toQueryParam = \case
369369 UWVTAdminView -> "admin_view"
370370 UWVTDomainPublic -> "domain_public"
371371
@@ -390,15 +390,15 @@ data UsersGetProjection
390390
391391instance Hashable UsersGetProjection
392392
393−instance FromText UsersGetProjection where
394− fromText = \case
395− "basic" -> Just UGPBasic
396− "custom" -> Just UGPCustom
397− "full" -> Just UGPFull
398− _ -> Nothing
393+instance FromHttpApiData UsersGetProjection where
394+ parseQueryParam = \case
395+ "basic" -> Right UGPBasic
396+ "custom" -> Right UGPCustom
397+ "full" -> Right UGPFull
398+ x -> Left ("Unable to parse UsersGetProjection from: " <> x)
399399
400−instance ToText UsersGetProjection where
401− toText = \case
400+instance ToHttpApiData UsersGetProjection where
401+ toQueryParam = \case
402402 UGPBasic -> "basic"
403403 UGPCustom -> "custom"
404404 UGPFull -> "full"
@@ -422,14 +422,14 @@ data MobileDevicesListProjection
422422
423423instance Hashable MobileDevicesListProjection
424424
425−instance FromText MobileDevicesListProjection where
426− fromText = \case
427− "BASIC" -> Just MDLPBasic
428− "FULL" -> Just MDLPFull
429− _ -> Nothing
425+instance FromHttpApiData MobileDevicesListProjection where
426+ parseQueryParam = \case
427+ "BASIC" -> Right MDLPBasic
428+ "FULL" -> Right MDLPFull
429+ x -> Left ("Unable to parse MobileDevicesListProjection from: " <> x)
430430
431−instance ToText MobileDevicesListProjection where
432− toText = \case
431+instance ToHttpApiData MobileDevicesListProjection where
432+ toQueryParam = \case
433433 MDLPBasic -> "BASIC"
434434 MDLPFull -> "FULL"
435435
@@ -469,20 +469,20 @@ data MobileDevicesListOrderBy
469469
470470instance Hashable MobileDevicesListOrderBy
471471
472−instance FromText MobileDevicesListOrderBy where
473− fromText = \case
474− "deviceId" -> Just MDLOBDeviceId
475− "email" -> Just MDLOBEmail
476− "lastSync" -> Just MDLOBLastSync
477− "model" -> Just MDLOBModel
478− "name" -> Just MDLOBName
479− "os" -> Just MDLOBOS
480− "status" -> Just MDLOBStatus
481− "type" -> Just MDLOBType
482− _ -> Nothing
483−
484−instance ToText MobileDevicesListOrderBy where
485− toText = \case
472+instance FromHttpApiData MobileDevicesListOrderBy where
473+ parseQueryParam = \case
474+ "deviceId" -> Right MDLOBDeviceId
475+ "email" -> Right MDLOBEmail
476+ "lastSync" -> Right MDLOBLastSync
477+ "model" -> Right MDLOBModel
478+ "name" -> Right MDLOBName
479+ "os" -> Right MDLOBOS
480+ "status" -> Right MDLOBStatus
481+ "type" -> Right MDLOBType
482+ x -> Left ("Unable to parse MobileDevicesListOrderBy from: " <> x)
483+
484+instance ToHttpApiData MobileDevicesListOrderBy where
485+ toQueryParam = \case
486486 MDLOBDeviceId -> "deviceId"
487487 MDLOBEmail -> "email"
488488 MDLOBLastSync -> "lastSync"
@@ -510,14 +510,14 @@ data UsersListSortOrder
510510
511511instance Hashable UsersListSortOrder
512512
513−instance FromText UsersListSortOrder where
514− fromText = \case
515− "ASCENDING" -> Just ULSOAscending
516− "DESCENDING" -> Just ULSODescending
517− _ -> Nothing
513+instance FromHttpApiData UsersListSortOrder where
514+ parseQueryParam = \case
515+ "ASCENDING" -> Right ULSOAscending
516+ "DESCENDING" -> Right ULSODescending
517+ x -> Left ("Unable to parse UsersListSortOrder from: " <> x)
518518
519−instance ToText UsersListSortOrder where
520− toText = \case
519+instance ToHttpApiData UsersListSortOrder where
520+ toQueryParam = \case
521521 ULSOAscending -> "ASCENDING"
522522 ULSODescending -> "DESCENDING"
523523
@@ -540,14 +540,14 @@ data ChromeosDevicesListSortOrder
540540
541541instance Hashable ChromeosDevicesListSortOrder
542542
543−instance FromText ChromeosDevicesListSortOrder where
544− fromText = \case
545− "ASCENDING" -> Just CDLSOAscending
546− "DESCENDING" -> Just CDLSODescending
547− _ -> Nothing
543+instance FromHttpApiData ChromeosDevicesListSortOrder where
544+ parseQueryParam = \case
545+ "ASCENDING" -> Right CDLSOAscending
546+ "DESCENDING" -> Right CDLSODescending
547+ x -> Left ("Unable to parse ChromeosDevicesListSortOrder from: " <> x)
548548
549−instance ToText ChromeosDevicesListSortOrder where
550− toText = \case
549+instance ToHttpApiData ChromeosDevicesListSortOrder where
550+ toQueryParam = \case
551551 CDLSOAscending -> "ASCENDING"
552552 CDLSODescending -> "DESCENDING"
553553
@@ -569,14 +569,14 @@ data UsersWatchSortOrder
569569
570570instance Hashable UsersWatchSortOrder
571571
572−instance FromText UsersWatchSortOrder where
573− fromText = \case
574− "ASCENDING" -> Just UWSOAscending
575− "DESCENDING" -> Just UWSODescending
576− _ -> Nothing
572+instance FromHttpApiData UsersWatchSortOrder where
573+ parseQueryParam = \case
574+ "ASCENDING" -> Right UWSOAscending
575+ "DESCENDING" -> Right UWSODescending
576+ x -> Left ("Unable to parse UsersWatchSortOrder from: " <> x)
577577
578−instance ToText UsersWatchSortOrder where
579− toText = \case
578+instance ToHttpApiData UsersWatchSortOrder where
579+ toQueryParam = \case
580580 UWSOAscending -> "ASCENDING"
581581 UWSODescending -> "DESCENDING"
582582
@@ -601,15 +601,15 @@ data UsersListProjection
601601
602602instance Hashable UsersListProjection
603603
604−instance FromText UsersListProjection where
605− fromText = \case
606− "basic" -> Just ULPBasic
607− "custom" -> Just ULPCustom
608− "full" -> Just ULPFull
609− _ -> Nothing
604+instance FromHttpApiData UsersListProjection where
605+ parseQueryParam = \case
606+ "basic" -> Right ULPBasic
607+ "custom" -> Right ULPCustom
608+ "full" -> Right ULPFull
609+ x -> Left ("Unable to parse UsersListProjection from: " <> x)
610610
611−instance ToText UsersListProjection where
612− toText = \case
611+instance ToHttpApiData UsersListProjection where
612+ toQueryParam = \case
613613 ULPBasic -> "basic"
614614 ULPCustom -> "custom"
615615 ULPFull -> "full"
@@ -633,14 +633,14 @@ data ChromeosDevicesUpdateProjection
633633
634634instance Hashable ChromeosDevicesUpdateProjection
635635
636−instance FromText ChromeosDevicesUpdateProjection where
637− fromText = \case
638− "BASIC" -> Just CDUPBasic
639− "FULL" -> Just CDUPFull
640− _ -> Nothing
636+instance FromHttpApiData ChromeosDevicesUpdateProjection where
637+ parseQueryParam = \case
638+ "BASIC" -> Right CDUPBasic
639+ "FULL" -> Right CDUPFull
640+ x -> Left ("Unable to parse ChromeosDevicesUpdateProjection from: " <> x)
641641
642−instance ToText ChromeosDevicesUpdateProjection where
643− toText = \case
642+instance ToHttpApiData ChromeosDevicesUpdateProjection where
643+ toQueryParam = \case
644644 CDUPBasic -> "BASIC"
645645 CDUPFull -> "FULL"
646646
@@ -663,14 +663,14 @@ data MobileDevicesGetProjection
663663
664664instance Hashable MobileDevicesGetProjection
665665
666−instance FromText MobileDevicesGetProjection where
667− fromText = \case
668− "BASIC" -> Just MDGPBasic
669− "FULL" -> Just MDGPFull
670− _ -> Nothing
666+instance FromHttpApiData MobileDevicesGetProjection where
667+ parseQueryParam = \case
668+ "BASIC" -> Right MDGPBasic
669+ "FULL" -> Right MDGPFull
670+ x -> Left ("Unable to parse MobileDevicesGetProjection from: " <> x)
671671
672−instance ToText MobileDevicesGetProjection where
673− toText = \case
672+instance ToHttpApiData MobileDevicesGetProjection where
673+ toQueryParam = \case
674674 MDGPBasic -> "BASIC"
675675 MDGPFull -> "FULL"
676676
@@ -707,19 +707,19 @@ data ChromeosDevicesListOrderBy
707707
708708instance Hashable ChromeosDevicesListOrderBy
709709
710−instance FromText ChromeosDevicesListOrderBy where
711− fromText = \case
712− "annotatedLocation" -> Just AnnotatedLocation
713− "annotatedUser" -> Just AnnotatedUser
714− "lastSync" -> Just LastSync
715− "notes" -> Just Notes
716− "serialNumber" -> Just SerialNumber
717− "status" -> Just Status
718− "supportEndDate" -> Just SupportEndDate
719− _ -> Nothing
720−
721−instance ToText ChromeosDevicesListOrderBy where
722− toText = \case
710+instance FromHttpApiData ChromeosDevicesListOrderBy where
711+ parseQueryParam = \case
712+ "annotatedLocation" -> Right AnnotatedLocation
713+ "annotatedUser" -> Right AnnotatedUser
714+ "lastSync" -> Right LastSync
715+ "notes" -> Right Notes
716+ "serialNumber" -> Right SerialNumber
717+ "status" -> Right Status
718+ "supportEndDate" -> Right SupportEndDate
719+ x -> Left ("Unable to parse ChromeosDevicesListOrderBy from: " <> x)
720+
721+instance ToHttpApiData ChromeosDevicesListOrderBy where
722+ toQueryParam = \case
723723 AnnotatedLocation -> "annotatedLocation"
724724 AnnotatedUser -> "annotatedUser"
725725 LastSync -> "lastSync"
@@ -749,15 +749,15 @@ data UsersWatchProjection
749749
750750instance Hashable UsersWatchProjection
751751
752−instance FromText UsersWatchProjection where
753− fromText = \case
754− "basic" -> Just UWPBasic
755− "custom" -> Just UWPCustom
756− "full" -> Just UWPFull
757− _ -> Nothing
752+instance FromHttpApiData UsersWatchProjection where
753+ parseQueryParam = \case
754+ "basic" -> Right UWPBasic
755+ "custom" -> Right UWPCustom
756+ "full" -> Right UWPFull
757+ x -> Left ("Unable to parse UsersWatchProjection from: " <> x)
758758
759−instance ToText UsersWatchProjection where
760− toText = \case
759+instance ToHttpApiData UsersWatchProjection where
760+ toQueryParam = \case
761761 UWPBasic -> "basic"
762762 UWPCustom -> "custom"
763763 UWPFull -> "full"
@@ -783,15 +783,15 @@ data UsersWatchOrderBy
783783
784784instance Hashable UsersWatchOrderBy
785785
786−instance FromText UsersWatchOrderBy where
787− fromText = \case
788− "email" -> Just UWOBEmail
789− "familyName" -> Just UWOBFamilyName
790− "givenName" -> Just UWOBGivenName
791− _ -> Nothing
786+instance FromHttpApiData UsersWatchOrderBy where
787+ parseQueryParam = \case
788+ "email" -> Right UWOBEmail
789+ "familyName" -> Right UWOBFamilyName
790+ "givenName" -> Right UWOBGivenName
791+ x -> Left ("Unable to parse UsersWatchOrderBy from: " <> x)
792792
793−instance ToText UsersWatchOrderBy where
794− toText = \case
793+instance ToHttpApiData UsersWatchOrderBy where
794+ toQueryParam = \case
795795 UWOBEmail -> "email"
796796 UWOBFamilyName -> "familyName"
797797 UWOBGivenName -> "givenName"
@@ -815,14 +815,14 @@ data ChromeosDevicesListProjection
815815
816816instance Hashable ChromeosDevicesListProjection
817817
818−instance FromText ChromeosDevicesListProjection where
819− fromText = \case
820− "BASIC" -> Just CDLPBasic
821− "FULL" -> Just CDLPFull
822− _ -> Nothing
818+instance FromHttpApiData ChromeosDevicesListProjection where
819+ parseQueryParam = \case
820+ "BASIC" -> Right CDLPBasic
821+ "FULL" -> Right CDLPFull
822+ x -> Left ("Unable to parse ChromeosDevicesListProjection from: " <> x)
823823
824−instance ToText ChromeosDevicesListProjection where
825− toText = \case
824+instance ToHttpApiData ChromeosDevicesListProjection where
825+ toQueryParam = \case
826826 CDLPBasic -> "BASIC"
827827 CDLPFull -> "FULL"
828828
@@ -844,14 +844,14 @@ data UsersGetViewType
844844
845845instance Hashable UsersGetViewType
846846
847−instance FromText UsersGetViewType where
848− fromText = \case
849− "admin_view" -> Just UGVTAdminView
850− "domain_public" -> Just UGVTDomainPublic
851− _ -> Nothing
847+instance FromHttpApiData UsersGetViewType where
848+ parseQueryParam = \case
849+ "admin_view" -> Right UGVTAdminView
850+ "domain_public" -> Right UGVTDomainPublic
851+ x -> Left ("Unable to parse UsersGetViewType from: " <> x)
852852
853−instance ToText UsersGetViewType where
854− toText = \case
853+instance ToHttpApiData UsersGetViewType where
854+ toQueryParam = \case
855855 UGVTAdminView -> "admin_view"
856856 UGVTDomainPublic -> "domain_public"
857857
gogol-adsense-host/gen/Network/Google/AdSenseHost/Types/Sum.hs+11−11
@@ -39,17 +39,17 @@ data AssociationSessionsStartProductCode
3939
4040instance Hashable AssociationSessionsStartProductCode
4141
42−instance FromText AssociationSessionsStartProductCode where
43− fromText = \case
44− "AFC" -> Just Afc
45− "AFG" -> Just Afg
46− "AFMC" -> Just Afmc
47− "AFS" -> Just Afs
48− "AFV" -> Just Afv
49− _ -> Nothing
50−
51−instance ToText AssociationSessionsStartProductCode where
52− toText = \case
42+instance FromHttpApiData AssociationSessionsStartProductCode where
43+ parseQueryParam = \case
44+ "AFC" -> Right Afc
45+ "AFG" -> Right Afg
46+ "AFMC" -> Right Afmc
47+ "AFS" -> Right Afs
48+ "AFV" -> Right Afv
49+ x -> Left ("Unable to parse AssociationSessionsStartProductCode from: " <> x)
50+
51+instance ToHttpApiData AssociationSessionsStartProductCode where
52+ toQueryParam = \case
5353 Afc -> "AFC"
5454 Afg -> "AFG"
5555 Afmc -> "AFMC"
gogol-affiliates/gen/Network/Google/Affiliates/Types/Sum.hs+174−174
@@ -31,14 +31,14 @@ data PublishersGetRole
3131
3232instance Hashable PublishersGetRole
3333
34−instance FromText PublishersGetRole where
35− fromText = \case
36− "advertisers" -> Just PGRAdvertisers
37− "publishers" -> Just PGRPublishers
38− _ -> Nothing
39−
40−instance ToText PublishersGetRole where
41− toText = \case
34+instance FromHttpApiData PublishersGetRole where
35+ parseQueryParam = \case
36+ "advertisers" -> Right PGRAdvertisers
37+ "publishers" -> Right PGRPublishers
38+ x -> Left ("Unable to parse PublishersGetRole from: " <> x)
39+
40+instance ToHttpApiData PublishersGetRole where
41+ toQueryParam = \case
4242 PGRAdvertisers -> "advertisers"
4343 PGRPublishers -> "publishers"
4444
@@ -64,15 +64,15 @@ data ReportsGetEventType
6464
6565instance Hashable ReportsGetEventType
6666
67−instance FromText ReportsGetEventType where
68− fromText = \case
69− "action" -> Just Action
70− "charge" -> Just Charge
71− "transaction" -> Just Transaction
72− _ -> Nothing
67+instance FromHttpApiData ReportsGetEventType where
68+ parseQueryParam = \case
69+ "action" -> Right Action
70+ "charge" -> Right Charge
71+ "transaction" -> Right Transaction
72+ x -> Left ("Unable to parse ReportsGetEventType from: " <> x)
7373
74−instance ToText ReportsGetEventType where
75− toText = \case
74+instance ToHttpApiData ReportsGetEventType where
75+ toQueryParam = \case
7676 Action -> "action"
7777 Charge -> "charge"
7878 Transaction -> "transaction"
@@ -99,15 +99,15 @@ data ReportsGetStatus
9999
100100instance Hashable ReportsGetStatus
101101
102−instance FromText ReportsGetStatus where
103− fromText = \case
104− "active" -> Just Active
105− "canceled" -> Just Canceled
106− "invalid" -> Just Invalid
107− _ -> Nothing
102+instance FromHttpApiData ReportsGetStatus where
103+ parseQueryParam = \case
104+ "active" -> Right Active
105+ "canceled" -> Right Canceled
106+ "invalid" -> Right Invalid
107+ x -> Left ("Unable to parse ReportsGetStatus from: " <> x)
108108
109−instance ToText ReportsGetStatus where
110− toText = \case
109+instance ToHttpApiData ReportsGetStatus where
110+ toQueryParam = \case
111111 Active -> "active"
112112 Canceled -> "canceled"
113113 Invalid -> "invalid"
@@ -134,17 +134,17 @@ data LinksListPromotionType
134134
135135instance Hashable LinksListPromotionType
136136
137−instance FromText LinksListPromotionType where
138− fromText = \case
139− "coupon" -> Just Coupon
140− "free_gift" -> Just FreeGift
141− "free_shipping" -> Just FreeShipping
142− "percent_off" -> Just PercentOff
143− "price_cut" -> Just PriceCut
144− _ -> Nothing
145−
146−instance ToText LinksListPromotionType where
147− toText = \case
137+instance FromHttpApiData LinksListPromotionType where
138+ parseQueryParam = \case
139+ "coupon" -> Right Coupon
140+ "free_gift" -> Right FreeGift
141+ "free_shipping" -> Right FreeShipping
142+ "percent_off" -> Right PercentOff
143+ "price_cut" -> Right PriceCut
144+ x -> Left ("Unable to parse LinksListPromotionType from: " <> x)
145+
146+instance ToHttpApiData LinksListPromotionType where
147+ toQueryParam = \case
148148 Coupon -> "coupon"
149149 FreeGift -> "free_gift"
150150 FreeShipping -> "free_shipping"
@@ -178,15 +178,15 @@ data EventsListType
178178
179179instance Hashable EventsListType
180180
181−instance FromText EventsListType where
182− fromText = \case
183− "action" -> Just ELTAction
184− "charge" -> Just ELTCharge
185− "transaction" -> Just ELTTransaction
186− _ -> Nothing
181+instance FromHttpApiData EventsListType where
182+ parseQueryParam = \case
183+ "action" -> Right ELTAction
184+ "charge" -> Right ELTCharge
185+ "transaction" -> Right ELTTransaction
186+ x -> Left ("Unable to parse EventsListType from: " <> x)
187187
188−instance ToText EventsListType where
189− toText = \case
188+instance ToHttpApiData EventsListType where
189+ toQueryParam = \case
190190 ELTAction -> "action"
191191 ELTCharge -> "charge"
192192 ELTTransaction -> "transaction"
@@ -210,14 +210,14 @@ data LinksListRole
210210
211211instance Hashable LinksListRole
212212
213−instance FromText LinksListRole where
214− fromText = \case
215− "advertisers" -> Just LLRAdvertisers
216− "publishers" -> Just LLRPublishers
217− _ -> Nothing
213+instance FromHttpApiData LinksListRole where
214+ parseQueryParam = \case
215+ "advertisers" -> Right LLRAdvertisers
216+ "publishers" -> Right LLRPublishers
217+ x -> Left ("Unable to parse LinksListRole from: " <> x)
218218
219−instance ToText LinksListRole where
220− toText = \case
219+instance ToHttpApiData LinksListRole where
220+ toQueryParam = \case
221221 LLRAdvertisers -> "advertisers"
222222 LLRPublishers -> "publishers"
223223
@@ -237,13 +237,13 @@ data ReportsGetReportType
237237
238238instance Hashable ReportsGetReportType
239239
240−instance FromText ReportsGetReportType where
241− fromText = \case
242− "order_delta" -> Just OrderDelta
243− _ -> Nothing
240+instance FromHttpApiData ReportsGetReportType where
241+ parseQueryParam = \case
242+ "order_delta" -> Right OrderDelta
243+ x -> Left ("Unable to parse ReportsGetReportType from: " <> x)
244244
245−instance ToText ReportsGetReportType where
246− toText = \case
245+instance ToHttpApiData ReportsGetReportType where
246+ toQueryParam = \case
247247 OrderDelta -> "order_delta"
248248
249249instance FromJSON ReportsGetReportType where
@@ -265,14 +265,14 @@ data AdvertisersListRole
265265
266266instance Hashable AdvertisersListRole
267267
268−instance FromText AdvertisersListRole where
269− fromText = \case
270− "advertisers" -> Just ALRAdvertisers
271− "publishers" -> Just ALRPublishers
272− _ -> Nothing
268+instance FromHttpApiData AdvertisersListRole where
269+ parseQueryParam = \case
270+ "advertisers" -> Right ALRAdvertisers
271+ "publishers" -> Right ALRPublishers
272+ x -> Left ("Unable to parse AdvertisersListRole from: " <> x)
273273
274−instance ToText AdvertisersListRole where
275− toText = \case
274+instance ToHttpApiData AdvertisersListRole where
275+ toQueryParam = \case
276276 ALRAdvertisers -> "advertisers"
277277 ALRPublishers -> "publishers"
278278
@@ -295,14 +295,14 @@ data LinksInsertRole
295295
296296instance Hashable LinksInsertRole
297297
298−instance FromText LinksInsertRole where
299− fromText = \case
300− "advertisers" -> Just LIRAdvertisers
301− "publishers" -> Just LIRPublishers
302− _ -> Nothing
298+instance FromHttpApiData LinksInsertRole where
299+ parseQueryParam = \case
300+ "advertisers" -> Right LIRAdvertisers
301+ "publishers" -> Right LIRPublishers
302+ x -> Left ("Unable to parse LinksInsertRole from: " <> x)
303303
304−instance ToText LinksInsertRole where
305− toText = \case
304+instance ToHttpApiData LinksInsertRole where
305+ toQueryParam = \case
306306 LIRAdvertisers -> "advertisers"
307307 LIRPublishers -> "publishers"
308308
@@ -325,14 +325,14 @@ data PublishersListRole
325325
326326instance Hashable PublishersListRole
327327
328−instance FromText PublishersListRole where
329− fromText = \case
330− "advertisers" -> Just PLRAdvertisers
331− "publishers" -> Just PLRPublishers
332− _ -> Nothing
328+instance FromHttpApiData PublishersListRole where
329+ parseQueryParam = \case
330+ "advertisers" -> Right PLRAdvertisers
331+ "publishers" -> Right PLRPublishers
332+ x -> Left ("Unable to parse PublishersListRole from: " <> x)
333333
334−instance ToText PublishersListRole where
335− toText = \case
334+instance ToHttpApiData PublishersListRole where
335+ toQueryParam = \case
336336 PLRAdvertisers -> "advertisers"
337337 PLRPublishers -> "publishers"
338338
@@ -352,14 +352,14 @@ data LinksListAuthorship
352352
353353instance Hashable LinksListAuthorship
354354
355−instance FromText LinksListAuthorship where
356− fromText = \case
357− "advertiser" -> Just LLAAdvertiser
358− "publisher" -> Just LLAPublisher
359− _ -> Nothing
355+instance FromHttpApiData LinksListAuthorship where
356+ parseQueryParam = \case
357+ "advertiser" -> Right LLAAdvertiser
358+ "publisher" -> Right LLAPublisher
359+ x -> Left ("Unable to parse LinksListAuthorship from: " <> x)
360360
361−instance ToText LinksListAuthorship where
362− toText = \case
361+instance ToHttpApiData LinksListAuthorship where
362+ toQueryParam = \case
363363 LLAAdvertiser -> "advertiser"
364364 LLAPublisher -> "publisher"
365365
@@ -382,14 +382,14 @@ data LinksGetRole
382382
383383instance Hashable LinksGetRole
384384
385−instance FromText LinksGetRole where
386− fromText = \case
387− "advertisers" -> Just LGRAdvertisers
388− "publishers" -> Just LGRPublishers
389− _ -> Nothing
385+instance FromHttpApiData LinksGetRole where
386+ parseQueryParam = \case
387+ "advertisers" -> Right LGRAdvertisers
388+ "publishers" -> Right LGRPublishers
389+ x -> Left ("Unable to parse LinksGetRole from: " <> x)
390390
391−instance ToText LinksGetRole where
392− toText = \case
391+instance ToHttpApiData LinksGetRole where
392+ toQueryParam = \case
393393 LGRAdvertisers -> "advertisers"
394394 LGRPublishers -> "publishers"
395395
@@ -409,14 +409,14 @@ data LinksListLinkType
409409
410410instance Hashable LinksListLinkType
411411
412−instance FromText LinksListLinkType where
413− fromText = \case
414− "banner" -> Just Banner
415− "text" -> Just Text
416− _ -> Nothing
412+instance FromHttpApiData LinksListLinkType where
413+ parseQueryParam = \case
414+ "banner" -> Right Banner
415+ "text" -> Right Text
416+ x -> Left ("Unable to parse LinksListLinkType from: " <> x)
417417
418−instance ToText LinksListLinkType where
419− toText = \case
418+instance ToHttpApiData LinksListLinkType where
419+ toQueryParam = \case
420420 Banner -> "banner"
421421 Text -> "text"
422422
@@ -439,14 +439,14 @@ data EventsListRole
439439
440440instance Hashable EventsListRole
441441
442−instance FromText EventsListRole where
443− fromText = \case
444− "advertisers" -> Just ELRAdvertisers
445− "publishers" -> Just ELRPublishers
446− _ -> Nothing
442+instance FromHttpApiData EventsListRole where
443+ parseQueryParam = \case
444+ "advertisers" -> Right ELRAdvertisers
445+ "publishers" -> Right ELRPublishers
446+ x -> Left ("Unable to parse EventsListRole from: " <> x)
447447
448−instance ToText EventsListRole where
449− toText = \case
448+instance ToHttpApiData EventsListRole where
449+ toQueryParam = \case
450450 ELRAdvertisers -> "advertisers"
451451 ELRPublishers -> "publishers"
452452
@@ -481,17 +481,17 @@ data AdvertisersListRelationshipStatus
481481
482482instance Hashable AdvertisersListRelationshipStatus
483483
484−instance FromText AdvertisersListRelationshipStatus where
485− fromText = \case
486− "approved" -> Just Approved
487− "available" -> Just Available
488− "deactivated" -> Just Deactivated
489− "declined" -> Just Declined
490− "pending" -> Just Pending
491− _ -> Nothing
492−
493−instance ToText AdvertisersListRelationshipStatus where
494− toText = \case
484+instance FromHttpApiData AdvertisersListRelationshipStatus where
485+ parseQueryParam = \case
486+ "approved" -> Right Approved
487+ "available" -> Right Available
488+ "deactivated" -> Right Deactivated
489+ "declined" -> Right Declined
490+ "pending" -> Right Pending
491+ x -> Left ("Unable to parse AdvertisersListRelationshipStatus from: " <> x)
492+
493+instance ToHttpApiData AdvertisersListRelationshipStatus where
494+ toQueryParam = \case
495495 Approved -> "approved"
496496 Available -> "available"
497497 Deactivated -> "deactivated"
@@ -516,14 +516,14 @@ data CcOffersListProjection
516516
517517instance Hashable CcOffersListProjection
518518
519−instance FromText CcOffersListProjection where
520− fromText = \case
521− "full" -> Just Full
522− "summary" -> Just Summary
523− _ -> Nothing
519+instance FromHttpApiData CcOffersListProjection where
520+ parseQueryParam = \case
521+ "full" -> Right Full
522+ "summary" -> Right Summary
523+ x -> Left ("Unable to parse CcOffersListProjection from: " <> x)
524524
525−instance ToText CcOffersListProjection where
526− toText = \case
525+instance ToHttpApiData CcOffersListProjection where
526+ toQueryParam = \case
527527 Full -> "full"
528528 Summary -> "summary"
529529
@@ -546,14 +546,14 @@ data AdvertisersGetRole
546546
547547instance Hashable AdvertisersGetRole
548548
549−instance FromText AdvertisersGetRole where
550− fromText = \case
551− "advertisers" -> Just AGRAdvertisers
552− "publishers" -> Just AGRPublishers
553− _ -> Nothing
549+instance FromHttpApiData AdvertisersGetRole where
550+ parseQueryParam = \case
551+ "advertisers" -> Right AGRAdvertisers
552+ "publishers" -> Right AGRPublishers
553+ x -> Left ("Unable to parse AdvertisersGetRole from: " <> x)
554554
555−instance ToText AdvertisersGetRole where
556− toText = \case
555+instance ToHttpApiData AdvertisersGetRole where
556+ toQueryParam = \case
557557 AGRAdvertisers -> "advertisers"
558558 AGRPublishers -> "publishers"
559559
@@ -593,18 +593,18 @@ data EventsListChargeType
593593
594594instance Hashable EventsListChargeType
595595
596−instance FromText EventsListChargeType where
597− fromText = \case
598− "credit" -> Just Credit
599− "debit" -> Just Debit
600− "monthly_minimum" -> Just MonthlyMinimum
601− "other" -> Just Other
602− "slotting_fee" -> Just SlottingFee
603− "tier_bonus" -> Just TierBonus
604− _ -> Nothing
605−
606−instance ToText EventsListChargeType where
607− toText = \case
596+instance FromHttpApiData EventsListChargeType where
597+ parseQueryParam = \case
598+ "credit" -> Right Credit
599+ "debit" -> Right Debit
600+ "monthly_minimum" -> Right MonthlyMinimum
601+ "other" -> Right Other
602+ "slotting_fee" -> Right SlottingFee
603+ "tier_bonus" -> Right TierBonus
604+ x -> Left ("Unable to parse EventsListChargeType from: " <> x)
605+
606+instance ToHttpApiData EventsListChargeType where
607+ toQueryParam = \case
608608 Credit -> "credit"
609609 Debit -> "debit"
610610 MonthlyMinimum -> "monthly_minimum"
@@ -642,17 +642,17 @@ data PublishersListRelationshipStatus
642642
643643instance Hashable PublishersListRelationshipStatus
644644
645−instance FromText PublishersListRelationshipStatus where
646− fromText = \case
647− "approved" -> Just PLRSApproved
648− "available" -> Just PLRSAvailable
649− "deactivated" -> Just PLRSDeactivated
650− "declined" -> Just PLRSDeclined
651− "pending" -> Just PLRSPending
652− _ -> Nothing
653−
654−instance ToText PublishersListRelationshipStatus where
655− toText = \case
645+instance FromHttpApiData PublishersListRelationshipStatus where
646+ parseQueryParam = \case
647+ "approved" -> Right PLRSApproved
648+ "available" -> Right PLRSAvailable
649+ "deactivated" -> Right PLRSDeactivated
650+ "declined" -> Right PLRSDeclined
651+ "pending" -> Right PLRSPending
652+ x -> Left ("Unable to parse PublishersListRelationshipStatus from: " <> x)
653+
654+instance ToHttpApiData PublishersListRelationshipStatus where
655+ toQueryParam = \case
656656 PLRSApproved -> "approved"
657657 PLRSAvailable -> "available"
658658 PLRSDeactivated -> "deactivated"
@@ -678,14 +678,14 @@ data ReportsGetRole
678678
679679instance Hashable ReportsGetRole
680680
681−instance FromText ReportsGetRole where
682− fromText = \case
683− "advertisers" -> Just RGRAdvertisers
684− "publishers" -> Just RGRPublishers
685− _ -> Nothing
681+instance FromHttpApiData ReportsGetRole where
682+ parseQueryParam = \case
683+ "advertisers" -> Right RGRAdvertisers
684+ "publishers" -> Right RGRPublishers
685+ x -> Left ("Unable to parse ReportsGetRole from: " <> x)
686686
687−instance ToText ReportsGetRole where
688− toText = \case
687+instance ToHttpApiData ReportsGetRole where
688+ toQueryParam = \case
689689 RGRAdvertisers -> "advertisers"
690690 RGRPublishers -> "publishers"
691691
@@ -705,14 +705,14 @@ data LinksListRelationshipStatus
705705
706706instance Hashable LinksListRelationshipStatus
707707
708−instance FromText LinksListRelationshipStatus where
709− fromText = \case
710− "approved" -> Just LLRSApproved
711− "available" -> Just LLRSAvailable
712− _ -> Nothing
708+instance FromHttpApiData LinksListRelationshipStatus where
709+ parseQueryParam = \case
710+ "approved" -> Right LLRSApproved
711+ "available" -> Right LLRSAvailable
712+ x -> Left ("Unable to parse LinksListRelationshipStatus from: " <> x)
713713
714−instance ToText LinksListRelationshipStatus where
715− toText = \case
714+instance ToHttpApiData LinksListRelationshipStatus where
715+ toQueryParam = \case
716716 LLRSApproved -> "approved"
717717 LLRSAvailable -> "available"
718718
@@ -735,14 +735,14 @@ data EventsListStatus
735735
736736instance Hashable EventsListStatus
737737
738−instance FromText EventsListStatus where
739− fromText = \case
740− "active" -> Just ELSActive
741− "canceled" -> Just ELSCanceled
742− _ -> Nothing
738+instance FromHttpApiData EventsListStatus where
739+ parseQueryParam = \case
740+ "active" -> Right ELSActive
741+ "canceled" -> Right ELSCanceled
742+ x -> Left ("Unable to parse EventsListStatus from: " <> x)
743743
744−instance ToText EventsListStatus where
745− toText = \case
744+instance ToHttpApiData EventsListStatus where
745+ toQueryParam = \case
746746 ELSActive -> "active"
747747 ELSCanceled -> "canceled"
748748
gogol-analytics/gen/Network/Google/Analytics/Types/Sum.hs+24−24
@@ -34,15 +34,15 @@ data DataGaGetSamplingLevel
3434
3535instance Hashable DataGaGetSamplingLevel
3636
37−instance FromText DataGaGetSamplingLevel where
38− fromText = \case
39− "DEFAULT" -> Just Default
40− "FASTER" -> Just Faster
41− "HIGHER_PRECISION" -> Just HigherPrecision
42− _ -> Nothing
43−
44−instance ToText DataGaGetSamplingLevel where
45− toText = \case
37+instance FromHttpApiData DataGaGetSamplingLevel where
38+ parseQueryParam = \case
39+ "DEFAULT" -> Right Default
40+ "FASTER" -> Right Faster
41+ "HIGHER_PRECISION" -> Right HigherPrecision
42+ x -> Left ("Unable to parse DataGaGetSamplingLevel from: " <> x)
43+
44+instance ToHttpApiData DataGaGetSamplingLevel where
45+ toQueryParam = \case
4646 Default -> "DEFAULT"
4747 Faster -> "FASTER"
4848 HigherPrecision -> "HIGHER_PRECISION"
@@ -66,14 +66,14 @@ data DataGaGetOutput
6666
6767instance Hashable DataGaGetOutput
6868
69−instance FromText DataGaGetOutput where
70− fromText = \case
71− "dataTable" -> Just DataTable
72− "json" -> Just JSON
73− _ -> Nothing
69+instance FromHttpApiData DataGaGetOutput where
70+ parseQueryParam = \case
71+ "dataTable" -> Right DataTable
72+ "json" -> Right JSON
73+ x -> Left ("Unable to parse DataGaGetOutput from: " <> x)
7474
75−instance ToText DataGaGetOutput where
76− toText = \case
75+instance ToHttpApiData DataGaGetOutput where
76+ toQueryParam = \case
7777 DataTable -> "dataTable"
7878 JSON -> "json"
7979
@@ -99,15 +99,15 @@ data DataMcfGetSamplingLevel
9999
100100instance Hashable DataMcfGetSamplingLevel
101101
102−instance FromText DataMcfGetSamplingLevel where
103− fromText = \case
104− "DEFAULT" -> Just DMGSLDefault
105− "FASTER" -> Just DMGSLFaster
106− "HIGHER_PRECISION" -> Just DMGSLHigherPrecision
107− _ -> Nothing
102+instance FromHttpApiData DataMcfGetSamplingLevel where
103+ parseQueryParam = \case
104+ "DEFAULT" -> Right DMGSLDefault
105+ "FASTER" -> Right DMGSLFaster
106+ "HIGHER_PRECISION" -> Right DMGSLHigherPrecision
107+ x -> Left ("Unable to parse DataMcfGetSamplingLevel from: " <> x)
108108
109−instance ToText DataMcfGetSamplingLevel where
110− toText = \case
109+instance ToHttpApiData DataMcfGetSamplingLevel where
110+ toQueryParam = \case
111111 DMGSLDefault -> "DEFAULT"
112112 DMGSLFaster -> "FASTER"
113113 DMGSLHigherPrecision -> "HIGHER_PRECISION"
gogol-android-publisher/gen/Network/Google/AndroidPublisher/Types/Sum.hs+142−142
@@ -41,21 +41,21 @@ data EditsImagesDeleteallImageType
4141
4242instance Hashable EditsImagesDeleteallImageType
4343
44−instance FromText EditsImagesDeleteallImageType where
45− fromText = \case
46− "featureGraphic" -> Just FeatureGraphic
47− "icon" -> Just Icon
48− "phoneScreenshots" -> Just PhoneScreenshots
49− "promoGraphic" -> Just PromoGraphic
50− "sevenInchScreenshots" -> Just SevenInchScreenshots
51− "tenInchScreenshots" -> Just TenInchScreenshots
52− "tvBanner" -> Just TvBanner
53− "tvScreenshots" -> Just TvScreenshots
54− "wearScreenshots" -> Just WearScreenshots
55− _ -> Nothing
56−
57−instance ToText EditsImagesDeleteallImageType where
58− toText = \case
44+instance FromHttpApiData EditsImagesDeleteallImageType where
45+ parseQueryParam = \case
46+ "featureGraphic" -> Right FeatureGraphic
47+ "icon" -> Right Icon
48+ "phoneScreenshots" -> Right PhoneScreenshots
49+ "promoGraphic" -> Right PromoGraphic
50+ "sevenInchScreenshots" -> Right SevenInchScreenshots
51+ "tenInchScreenshots" -> Right TenInchScreenshots
52+ "tvBanner" -> Right TvBanner
53+ "tvScreenshots" -> Right TvScreenshots
54+ "wearScreenshots" -> Right WearScreenshots
55+ x -> Left ("Unable to parse EditsImagesDeleteallImageType from: " <> x)
56+
57+instance ToHttpApiData EditsImagesDeleteallImageType where
58+ toQueryParam = \case
5959 FeatureGraphic -> "featureGraphic"
6060 Icon -> "icon"
6161 PhoneScreenshots -> "phoneScreenshots"
@@ -86,16 +86,16 @@ data EditsTracksPatchTrack
8686
8787instance Hashable EditsTracksPatchTrack
8888
89−instance FromText EditsTracksPatchTrack where
90− fromText = \case
91− "alpha" -> Just Alpha
92− "beta" -> Just Beta
93− "production" -> Just Production
94− "rollout" -> Just Rollout
95− _ -> Nothing
89+instance FromHttpApiData EditsTracksPatchTrack where
90+ parseQueryParam = \case
91+ "alpha" -> Right Alpha
92+ "beta" -> Right Beta
93+ "production" -> Right Production
94+ "rollout" -> Right Rollout
95+ x -> Left ("Unable to parse EditsTracksPatchTrack from: " <> x)
9696
97−instance ToText EditsTracksPatchTrack where
98− toText = \case
97+instance ToHttpApiData EditsTracksPatchTrack where
98+ toQueryParam = \case
9999 Alpha -> "alpha"
100100 Beta -> "beta"
101101 Production -> "production"
@@ -121,16 +121,16 @@ data EditsTracksGetTrack
121121
122122instance Hashable EditsTracksGetTrack
123123
124−instance FromText EditsTracksGetTrack where
125− fromText = \case
126− "alpha" -> Just ETGTAlpha
127− "beta" -> Just ETGTBeta
128− "production" -> Just ETGTProduction
129− "rollout" -> Just ETGTRollout
130− _ -> Nothing
124+instance FromHttpApiData EditsTracksGetTrack where
125+ parseQueryParam = \case
126+ "alpha" -> Right ETGTAlpha
127+ "beta" -> Right ETGTBeta
128+ "production" -> Right ETGTProduction
129+ "rollout" -> Right ETGTRollout
130+ x -> Left ("Unable to parse EditsTracksGetTrack from: " <> x)
131131
132−instance ToText EditsTracksGetTrack where
133− toText = \case
132+instance ToHttpApiData EditsTracksGetTrack where
133+ toQueryParam = \case
134134 ETGTAlpha -> "alpha"
135135 ETGTBeta -> "beta"
136136 ETGTProduction -> "production"
@@ -156,16 +156,16 @@ data EditsTracksUpdateTrack
156156
157157instance Hashable EditsTracksUpdateTrack
158158
159−instance FromText EditsTracksUpdateTrack where
160− fromText = \case
161− "alpha" -> Just ETUTAlpha
162− "beta" -> Just ETUTBeta
163− "production" -> Just ETUTProduction
164− "rollout" -> Just ETUTRollout
165− _ -> Nothing
159+instance FromHttpApiData EditsTracksUpdateTrack where
160+ parseQueryParam = \case
161+ "alpha" -> Right ETUTAlpha
162+ "beta" -> Right ETUTBeta
163+ "production" -> Right ETUTProduction
164+ "rollout" -> Right ETUTRollout
165+ x -> Left ("Unable to parse EditsTracksUpdateTrack from: " <> x)
166166
167−instance ToText EditsTracksUpdateTrack where
168− toText = \case
167+instance ToHttpApiData EditsTracksUpdateTrack where
168+ toQueryParam = \case
169169 ETUTAlpha -> "alpha"
170170 ETUTBeta -> "beta"
171171 ETUTProduction -> "production"
@@ -200,21 +200,21 @@ data EditsImagesListImageType
200200
201201instance Hashable EditsImagesListImageType
202202
203−instance FromText EditsImagesListImageType where
204− fromText = \case
205− "featureGraphic" -> Just EILITFeatureGraphic
206− "icon" -> Just EILITIcon
207− "phoneScreenshots" -> Just EILITPhoneScreenshots
208− "promoGraphic" -> Just EILITPromoGraphic
209− "sevenInchScreenshots" -> Just EILITSevenInchScreenshots
210− "tenInchScreenshots" -> Just EILITTenInchScreenshots
211− "tvBanner" -> Just EILITTvBanner
212− "tvScreenshots" -> Just EILITTvScreenshots
213− "wearScreenshots" -> Just EILITWearScreenshots
214− _ -> Nothing
215−
216−instance ToText EditsImagesListImageType where
217− toText = \case
203+instance FromHttpApiData EditsImagesListImageType where
204+ parseQueryParam = \case
205+ "featureGraphic" -> Right EILITFeatureGraphic
206+ "icon" -> Right EILITIcon
207+ "phoneScreenshots" -> Right EILITPhoneScreenshots
208+ "promoGraphic" -> Right EILITPromoGraphic
209+ "sevenInchScreenshots" -> Right EILITSevenInchScreenshots
210+ "tenInchScreenshots" -> Right EILITTenInchScreenshots
211+ "tvBanner" -> Right EILITTvBanner
212+ "tvScreenshots" -> Right EILITTvScreenshots
213+ "wearScreenshots" -> Right EILITWearScreenshots
214+ x -> Left ("Unable to parse EditsImagesListImageType from: " <> x)
215+
216+instance ToHttpApiData EditsImagesListImageType where
217+ toQueryParam = \case
218218 EILITFeatureGraphic -> "featureGraphic"
219219 EILITIcon -> "icon"
220220 EILITPhoneScreenshots -> "phoneScreenshots"
@@ -244,16 +244,16 @@ data EditsTestersPatchTrack
244244
245245instance Hashable EditsTestersPatchTrack
246246
247−instance FromText EditsTestersPatchTrack where
248− fromText = \case
249− "alpha" -> Just ETPTAlpha
250− "beta" -> Just ETPTBeta
251− "production" -> Just ETPTProduction
252− "rollout" -> Just ETPTRollout
253− _ -> Nothing
247+instance FromHttpApiData EditsTestersPatchTrack where
248+ parseQueryParam = \case
249+ "alpha" -> Right ETPTAlpha
250+ "beta" -> Right ETPTBeta
251+ "production" -> Right ETPTProduction
252+ "rollout" -> Right ETPTRollout
253+ x -> Left ("Unable to parse EditsTestersPatchTrack from: " <> x)
254254
255−instance ToText EditsTestersPatchTrack where
256− toText = \case
255+instance ToHttpApiData EditsTestersPatchTrack where
256+ toQueryParam = \case
257257 ETPTAlpha -> "alpha"
258258 ETPTBeta -> "beta"
259259 ETPTProduction -> "production"
@@ -278,16 +278,16 @@ data EditsTestersGetTrack
278278
279279instance Hashable EditsTestersGetTrack
280280
281−instance FromText EditsTestersGetTrack where
282− fromText = \case
283− "alpha" -> Just EAlpha
284− "beta" -> Just EBeta
285− "production" -> Just EProduction
286− "rollout" -> Just ERollout
287− _ -> Nothing
281+instance FromHttpApiData EditsTestersGetTrack where
282+ parseQueryParam = \case
283+ "alpha" -> Right EAlpha
284+ "beta" -> Right EBeta
285+ "production" -> Right EProduction
286+ "rollout" -> Right ERollout
287+ x -> Left ("Unable to parse EditsTestersGetTrack from: " <> x)
288288
289−instance ToText EditsTestersGetTrack where
290− toText = \case
289+instance ToHttpApiData EditsTestersGetTrack where
290+ toQueryParam = \case
291291 EAlpha -> "alpha"
292292 EBeta -> "beta"
293293 EProduction -> "production"
@@ -322,21 +322,21 @@ data EditsImagesUploadImageType
322322
323323instance Hashable EditsImagesUploadImageType
324324
325−instance FromText EditsImagesUploadImageType where
326− fromText = \case
327− "featureGraphic" -> Just EIUITFeatureGraphic
328− "icon" -> Just EIUITIcon
329− "phoneScreenshots" -> Just EIUITPhoneScreenshots
330− "promoGraphic" -> Just EIUITPromoGraphic
331− "sevenInchScreenshots" -> Just EIUITSevenInchScreenshots
332− "tenInchScreenshots" -> Just EIUITTenInchScreenshots
333− "tvBanner" -> Just EIUITTvBanner
334− "tvScreenshots" -> Just EIUITTvScreenshots
335− "wearScreenshots" -> Just EIUITWearScreenshots
336− _ -> Nothing
337−
338−instance ToText EditsImagesUploadImageType where
339− toText = \case
325+instance FromHttpApiData EditsImagesUploadImageType where
326+ parseQueryParam = \case
327+ "featureGraphic" -> Right EIUITFeatureGraphic
328+ "icon" -> Right EIUITIcon
329+ "phoneScreenshots" -> Right EIUITPhoneScreenshots
330+ "promoGraphic" -> Right EIUITPromoGraphic
331+ "sevenInchScreenshots" -> Right EIUITSevenInchScreenshots
332+ "tenInchScreenshots" -> Right EIUITTenInchScreenshots
333+ "tvBanner" -> Right EIUITTvBanner
334+ "tvScreenshots" -> Right EIUITTvScreenshots
335+ "wearScreenshots" -> Right EIUITWearScreenshots
336+ x -> Left ("Unable to parse EditsImagesUploadImageType from: " <> x)
337+
338+instance ToHttpApiData EditsImagesUploadImageType where
339+ toQueryParam = \case
340340 EIUITFeatureGraphic -> "featureGraphic"
341341 EIUITIcon -> "icon"
342342 EIUITPhoneScreenshots -> "phoneScreenshots"
@@ -362,14 +362,14 @@ data EditsExpansionFilesUploadExpansionFileType
362362
363363instance Hashable EditsExpansionFilesUploadExpansionFileType
364364
365−instance FromText EditsExpansionFilesUploadExpansionFileType where
366− fromText = \case
367− "main" -> Just Main
368− "patch" -> Just Patch'
369− _ -> Nothing
365+instance FromHttpApiData EditsExpansionFilesUploadExpansionFileType where
366+ parseQueryParam = \case
367+ "main" -> Right Main
368+ "patch" -> Right Patch'
369+ x -> Left ("Unable to parse EditsExpansionFilesUploadExpansionFileType from: " <> x)
370370
371−instance ToText EditsExpansionFilesUploadExpansionFileType where
372− toText = \case
371+instance ToHttpApiData EditsExpansionFilesUploadExpansionFileType where
372+ toQueryParam = \case
373373 Main -> "main"
374374 Patch' -> "patch"
375375
@@ -388,14 +388,14 @@ data EditsExpansionFilesGetExpansionFileType
388388
389389instance Hashable EditsExpansionFilesGetExpansionFileType
390390
391−instance FromText EditsExpansionFilesGetExpansionFileType where
392− fromText = \case
393− "main" -> Just EEFGEFTMain
394− "patch" -> Just EEFGEFTPatch'
395− _ -> Nothing
391+instance FromHttpApiData EditsExpansionFilesGetExpansionFileType where
392+ parseQueryParam = \case
393+ "main" -> Right EEFGEFTMain
394+ "patch" -> Right EEFGEFTPatch'
395+ x -> Left ("Unable to parse EditsExpansionFilesGetExpansionFileType from: " <> x)
396396
397−instance ToText EditsExpansionFilesGetExpansionFileType where
398− toText = \case
397+instance ToHttpApiData EditsExpansionFilesGetExpansionFileType where
398+ toQueryParam = \case
399399 EEFGEFTMain -> "main"
400400 EEFGEFTPatch' -> "patch"
401401
@@ -414,14 +414,14 @@ data EditsExpansionFilesPatchExpansionFileType
414414
415415instance Hashable EditsExpansionFilesPatchExpansionFileType
416416
417−instance FromText EditsExpansionFilesPatchExpansionFileType where
418− fromText = \case
419− "main" -> Just EEFPEFTMain
420− "patch" -> Just EEFPEFTPatch'
421− _ -> Nothing
417+instance FromHttpApiData EditsExpansionFilesPatchExpansionFileType where
418+ parseQueryParam = \case
419+ "main" -> Right EEFPEFTMain
420+ "patch" -> Right EEFPEFTPatch'
421+ x -> Left ("Unable to parse EditsExpansionFilesPatchExpansionFileType from: " <> x)
422422
423−instance ToText EditsExpansionFilesPatchExpansionFileType where
424− toText = \case
423+instance ToHttpApiData EditsExpansionFilesPatchExpansionFileType where
424+ toQueryParam = \case
425425 EEFPEFTMain -> "main"
426426 EEFPEFTPatch' -> "patch"
427427
@@ -440,14 +440,14 @@ data EditsExpansionFilesUpdateExpansionFileType
440440
441441instance Hashable EditsExpansionFilesUpdateExpansionFileType
442442
443−instance FromText EditsExpansionFilesUpdateExpansionFileType where
444− fromText = \case
445− "main" -> Just EEFUEFTMain
446− "patch" -> Just EEFUEFTPatch'
447− _ -> Nothing
443+instance FromHttpApiData EditsExpansionFilesUpdateExpansionFileType where
444+ parseQueryParam = \case
445+ "main" -> Right EEFUEFTMain
446+ "patch" -> Right EEFUEFTPatch'
447+ x -> Left ("Unable to parse EditsExpansionFilesUpdateExpansionFileType from: " <> x)
448448
449−instance ToText EditsExpansionFilesUpdateExpansionFileType where
450− toText = \case
449+instance ToHttpApiData EditsExpansionFilesUpdateExpansionFileType where
450+ toQueryParam = \case
451451 EEFUEFTMain -> "main"
452452 EEFUEFTPatch' -> "patch"
453453
@@ -480,21 +480,21 @@ data EditsImagesDeleteImageType
480480
481481instance Hashable EditsImagesDeleteImageType
482482
483−instance FromText EditsImagesDeleteImageType where
484− fromText = \case
485− "featureGraphic" -> Just EIDITFeatureGraphic
486− "icon" -> Just EIDITIcon
487− "phoneScreenshots" -> Just EIDITPhoneScreenshots
488− "promoGraphic" -> Just EIDITPromoGraphic
489− "sevenInchScreenshots" -> Just EIDITSevenInchScreenshots
490− "tenInchScreenshots" -> Just EIDITTenInchScreenshots
491− "tvBanner" -> Just EIDITTvBanner
492− "tvScreenshots" -> Just EIDITTvScreenshots
493− "wearScreenshots" -> Just EIDITWearScreenshots
494− _ -> Nothing
495−
496−instance ToText EditsImagesDeleteImageType where
497− toText = \case
483+instance FromHttpApiData EditsImagesDeleteImageType where
484+ parseQueryParam = \case
485+ "featureGraphic" -> Right EIDITFeatureGraphic
486+ "icon" -> Right EIDITIcon
487+ "phoneScreenshots" -> Right EIDITPhoneScreenshots
488+ "promoGraphic" -> Right EIDITPromoGraphic
489+ "sevenInchScreenshots" -> Right EIDITSevenInchScreenshots
490+ "tenInchScreenshots" -> Right EIDITTenInchScreenshots
491+ "tvBanner" -> Right EIDITTvBanner
492+ "tvScreenshots" -> Right EIDITTvScreenshots
493+ "wearScreenshots" -> Right EIDITWearScreenshots
494+ x -> Left ("Unable to parse EditsImagesDeleteImageType from: " <> x)
495+
496+instance ToHttpApiData EditsImagesDeleteImageType where
497+ toQueryParam = \case
498498 EIDITFeatureGraphic -> "featureGraphic"
499499 EIDITIcon -> "icon"
500500 EIDITPhoneScreenshots -> "phoneScreenshots"
@@ -524,16 +524,16 @@ data EditsTestersUpdateTrack
524524
525525instance Hashable EditsTestersUpdateTrack
526526
527−instance FromText EditsTestersUpdateTrack where
528− fromText = \case
529− "alpha" -> Just EDIAlpha
530− "beta" -> Just EDIBeta
531− "production" -> Just EDIProduction
532− "rollout" -> Just EDIRollout
533− _ -> Nothing
527+instance FromHttpApiData EditsTestersUpdateTrack where
528+ parseQueryParam = \case
529+ "alpha" -> Right EDIAlpha
530+ "beta" -> Right EDIBeta
531+ "production" -> Right EDIProduction
532+ "rollout" -> Right EDIRollout
533+ x -> Left ("Unable to parse EditsTestersUpdateTrack from: " <> x)
534534
535−instance ToText EditsTestersUpdateTrack where
536− toText = \case
535+instance ToHttpApiData EditsTestersUpdateTrack where
536+ toQueryParam = \case
537537 EDIAlpha -> "alpha"
538538 EDIBeta -> "beta"
539539 EDIProduction -> "production"
gogol-apps-activity/gen/Network/Google/AppsActivity/Types/Sum.hs+59−59
@@ -46,23 +46,23 @@ data EventPrimaryEventType
4646
4747instance Hashable EventPrimaryEventType
4848
49−instance FromText EventPrimaryEventType where
50− fromText = \case
51− "comment" -> Just EPETComment
52− "create" -> Just EPETCreate
53− "edit" -> Just EPETEdit
54− "emptyTrash" -> Just EPETEmptyTrash
55− "move" -> Just EPETMove
56− "permissionChange" -> Just EPETPermissionChange
57− "rename" -> Just EPETRename
58− "trash" -> Just EPETTrash
59− "unknown" -> Just EPETUnknown
60− "untrash" -> Just EPETUntrash
61− "upload" -> Just EPETUpload
62− _ -> Nothing
63−
64−instance ToText EventPrimaryEventType where
65− toText = \case
49+instance FromHttpApiData EventPrimaryEventType where
50+ parseQueryParam = \case
51+ "comment" -> Right EPETComment
52+ "create" -> Right EPETCreate
53+ "edit" -> Right EPETEdit
54+ "emptyTrash" -> Right EPETEmptyTrash
55+ "move" -> Right EPETMove
56+ "permissionChange" -> Right EPETPermissionChange
57+ "rename" -> Right EPETRename
58+ "trash" -> Right EPETTrash
59+ "unknown" -> Right EPETUnknown
60+ "untrash" -> Right EPETUntrash
61+ "upload" -> Right EPETUpload
62+ x -> Left ("Unable to parse EventPrimaryEventType from: " <> x)
63+
64+instance ToHttpApiData EventPrimaryEventType where
65+ toQueryParam = \case
6666 EPETComment -> "comment"
6767 EPETCreate -> "create"
6868 EPETEdit -> "edit"
@@ -96,16 +96,16 @@ data PermissionRole
9696
9797instance Hashable PermissionRole
9898
99−instance FromText PermissionRole where
100− fromText = \case
101− "commenter" -> Just Commenter
102− "owner" -> Just Owner
103− "reader" -> Just Reader
104− "writer" -> Just Writer
105− _ -> Nothing
99+instance FromHttpApiData PermissionRole where
100+ parseQueryParam = \case
101+ "commenter" -> Right Commenter
102+ "owner" -> Right Owner
103+ "reader" -> Right Reader
104+ "writer" -> Right Writer
105+ x -> Left ("Unable to parse PermissionRole from: " <> x)
106106
107−instance ToText PermissionRole where
108− toText = \case
107+instance ToHttpApiData PermissionRole where
108+ toQueryParam = \case
109109 Commenter -> "commenter"
110110 Owner -> "owner"
111111 Reader -> "reader"
@@ -131,16 +131,16 @@ data PermissionType
131131
132132instance Hashable PermissionType
133133
134−instance FromText PermissionType where
135− fromText = \case
136− "anyone" -> Just PTAnyone
137− "domain" -> Just PTDomain
138− "group" -> Just PTGroup
139− "user" -> Just PTUser
140− _ -> Nothing
134+instance FromHttpApiData PermissionType where
135+ parseQueryParam = \case
136+ "anyone" -> Right PTAnyone
137+ "domain" -> Right PTDomain
138+ "group" -> Right PTGroup
139+ "user" -> Right PTUser
140+ x -> Left ("Unable to parse PermissionType from: " <> x)
141141
142−instance ToText PermissionType where
143− toText = \case
142+instance ToHttpApiData PermissionType where
143+ toQueryParam = \case
144144 PTAnyone -> "anyone"
145145 PTDomain -> "domain"
146146 PTGroup -> "group"
@@ -179,23 +179,23 @@ data EventAdditionalEventTypesItem
179179
180180instance Hashable EventAdditionalEventTypesItem
181181
182−instance FromText EventAdditionalEventTypesItem where
183− fromText = \case
184− "comment" -> Just EAETIComment
185− "create" -> Just EAETICreate
186− "edit" -> Just EAETIEdit
187− "emptyTrash" -> Just EAETIEmptyTrash
188− "move" -> Just EAETIMove
189− "permissionChange" -> Just EAETIPermissionChange
190− "rename" -> Just EAETIRename
191− "trash" -> Just EAETITrash
192− "unknown" -> Just EAETIUnknown
193− "untrash" -> Just EAETIUntrash
194− "upload" -> Just EAETIUpload
195− _ -> Nothing
196−
197−instance ToText EventAdditionalEventTypesItem where
198− toText = \case
182+instance FromHttpApiData EventAdditionalEventTypesItem where
183+ parseQueryParam = \case
184+ "comment" -> Right EAETIComment
185+ "create" -> Right EAETICreate
186+ "edit" -> Right EAETIEdit
187+ "emptyTrash" -> Right EAETIEmptyTrash
188+ "move" -> Right EAETIMove
189+ "permissionChange" -> Right EAETIPermissionChange
190+ "rename" -> Right EAETIRename
191+ "trash" -> Right EAETITrash
192+ "unknown" -> Right EAETIUnknown
193+ "untrash" -> Right EAETIUntrash
194+ "upload" -> Right EAETIUpload
195+ x -> Left ("Unable to parse EventAdditionalEventTypesItem from: " <> x)
196+
197+instance ToHttpApiData EventAdditionalEventTypesItem where
198+ toQueryParam = \case
199199 EAETIComment -> "comment"
200200 EAETICreate -> "create"
201201 EAETIEdit -> "edit"
@@ -225,14 +225,14 @@ data ActivitiesListGroupingStrategy
225225
226226instance Hashable ActivitiesListGroupingStrategy
227227
228−instance FromText ActivitiesListGroupingStrategy where
229− fromText = \case
230− "driveUi" -> Just DriveUi
231− "none" -> Just None
232− _ -> Nothing
228+instance FromHttpApiData ActivitiesListGroupingStrategy where
229+ parseQueryParam = \case
230+ "driveUi" -> Right DriveUi
231+ "none" -> Right None
232+ x -> Left ("Unable to parse ActivitiesListGroupingStrategy from: " <> x)
233233
234−instance ToText ActivitiesListGroupingStrategy where
235− toText = \case
234+instance ToHttpApiData ActivitiesListGroupingStrategy where
235+ toQueryParam = \case
236236 DriveUi -> "driveUi"
237237 None -> "none"
238238
gogol-apps-calendar/gen/Network/Google/AppsCalendar/Types/Sum.hs+33−33
@@ -32,14 +32,14 @@ data EventsListOrderBy
3232
3333instance Hashable EventsListOrderBy
3434
35−instance FromText EventsListOrderBy where
36− fromText = \case
37− "startTime" -> Just StartTime
38− "updated" -> Just Updated
39− _ -> Nothing
40−
41−instance ToText EventsListOrderBy where
42− toText = \case
35+instance FromHttpApiData EventsListOrderBy where
36+ parseQueryParam = \case
37+ "startTime" -> Right StartTime
38+ "updated" -> Right Updated
39+ x -> Left ("Unable to parse EventsListOrderBy from: " <> x)
40+
41+instance ToHttpApiData EventsListOrderBy where
42+ toQueryParam = \case
4343 StartTime -> "startTime"
4444 Updated -> "updated"
4545
@@ -68,16 +68,16 @@ data CalendarListListMinAccessRole
6868
6969instance Hashable CalendarListListMinAccessRole
7070
71−instance FromText CalendarListListMinAccessRole where
72− fromText = \case
73− "freeBusyReader" -> Just FreeBusyReader
74− "owner" -> Just Owner
75− "reader" -> Just Reader
76− "writer" -> Just Writer
77− _ -> Nothing
71+instance FromHttpApiData CalendarListListMinAccessRole where
72+ parseQueryParam = \case
73+ "freeBusyReader" -> Right FreeBusyReader
74+ "owner" -> Right Owner
75+ "reader" -> Right Reader
76+ "writer" -> Right Writer
77+ x -> Left ("Unable to parse CalendarListListMinAccessRole from: " <> x)
7878
79−instance ToText CalendarListListMinAccessRole where
80− toText = \case
79+instance ToHttpApiData CalendarListListMinAccessRole where
80+ toQueryParam = \case
8181 FreeBusyReader -> "freeBusyReader"
8282 Owner -> "owner"
8383 Reader -> "reader"
@@ -103,14 +103,14 @@ data EventsWatchOrderBy
103103
104104instance Hashable EventsWatchOrderBy
105105
106−instance FromText EventsWatchOrderBy where
107− fromText = \case
108− "startTime" -> Just EWOBStartTime
109− "updated" -> Just EWOBUpdated
110− _ -> Nothing
106+instance FromHttpApiData EventsWatchOrderBy where
107+ parseQueryParam = \case
108+ "startTime" -> Right EWOBStartTime
109+ "updated" -> Right EWOBUpdated
110+ x -> Left ("Unable to parse EventsWatchOrderBy from: " <> x)
111111
112−instance ToText EventsWatchOrderBy where
113− toText = \case
112+instance ToHttpApiData EventsWatchOrderBy where
113+ toQueryParam = \case
114114 EWOBStartTime -> "startTime"
115115 EWOBUpdated -> "updated"
116116
@@ -139,16 +139,16 @@ data CalendarListWatchMinAccessRole
139139
140140instance Hashable CalendarListWatchMinAccessRole
141141
142−instance FromText CalendarListWatchMinAccessRole where
143− fromText = \case
144− "freeBusyReader" -> Just CLWMARFreeBusyReader
145− "owner" -> Just CLWMAROwner
146− "reader" -> Just CLWMARReader
147− "writer" -> Just CLWMARWriter
148− _ -> Nothing
142+instance FromHttpApiData CalendarListWatchMinAccessRole where
143+ parseQueryParam = \case
144+ "freeBusyReader" -> Right CLWMARFreeBusyReader
145+ "owner" -> Right CLWMAROwner
146+ "reader" -> Right CLWMARReader
147+ "writer" -> Right CLWMARWriter
148+ x -> Left ("Unable to parse CalendarListWatchMinAccessRole from: " <> x)
149149
150−instance ToText CalendarListWatchMinAccessRole where
151− toText = \case
150+instance ToHttpApiData CalendarListWatchMinAccessRole where
151+ toQueryParam = \case
152152 CLWMARFreeBusyReader -> "freeBusyReader"
153153 CLWMAROwner -> "owner"
154154 CLWMARReader -> "reader"
gogol-apps-reseller/gen/Network/Google/AppsReseller/Types/Sum.hs+10−10
@@ -36,16 +36,16 @@ data SubscriptionsDeleteDeletionType
3636
3737instance Hashable SubscriptionsDeleteDeletionType
3838
39−instance FromText SubscriptionsDeleteDeletionType where
40− fromText = \case
41− "cancel" -> Just Cancel
42− "downgrade" -> Just Downgrade
43− "suspend" -> Just Suspend
44− "transfer_to_direct" -> Just TransferToDirect
45− _ -> Nothing
46−
47−instance ToText SubscriptionsDeleteDeletionType where
48− toText = \case
39+instance FromHttpApiData SubscriptionsDeleteDeletionType where
40+ parseQueryParam = \case
41+ "cancel" -> Right Cancel
42+ "downgrade" -> Right Downgrade
43+ "suspend" -> Right Suspend
44+ "transfer_to_direct" -> Right TransferToDirect
45+ x -> Left ("Unable to parse SubscriptionsDeleteDeletionType from: " <> x)
46+
47+instance ToHttpApiData SubscriptionsDeleteDeletionType where
48+ toQueryParam = \case
4949 Cancel -> "cancel"
5050 Downgrade -> "downgrade"
5151 Suspend -> "suspend"
gogol-bigquery/gen/Network/Google/BigQuery/Types/Sum.hs+15−15
@@ -30,14 +30,14 @@ data JobsListProjection
3030
3131instance Hashable JobsListProjection
3232
33−instance FromText JobsListProjection where
34− fromText = \case
35− "full" -> Just Full
36− "minimal" -> Just Minimal
37− _ -> Nothing
33+instance FromHttpApiData JobsListProjection where
34+ parseQueryParam = \case
35+ "full" -> Right Full
36+ "minimal" -> Right Minimal
37+ x -> Left ("Unable to parse JobsListProjection from: " <> x)
3838
39−instance ToText JobsListProjection where
40− toText = \case
39+instance ToHttpApiData JobsListProjection where
40+ toQueryParam = \case
4141 Full -> "full"
4242 Minimal -> "minimal"
4343
@@ -62,15 +62,15 @@ data JobsListStateFilter
6262
6363instance Hashable JobsListStateFilter
6464
65−instance FromText JobsListStateFilter where
66− fromText = \case
67− "done" -> Just Done
68− "pending" -> Just Pending
69− "running" -> Just Running
70− _ -> Nothing
65+instance FromHttpApiData JobsListStateFilter where
66+ parseQueryParam = \case
67+ "done" -> Right Done
68+ "pending" -> Right Pending
69+ "running" -> Right Running
70+ x -> Left ("Unable to parse JobsListStateFilter from: " <> x)
7171
72−instance ToText JobsListStateFilter where
73− toText = \case
72+instance ToHttpApiData JobsListStateFilter where
73+ toQueryParam = \case
7474 Done -> "done"
7575 Pending -> "pending"
7676 Running -> "running"
gogol-blogger/gen/Network/Google/Blogger/Types/Sum.hs+174−174
@@ -30,14 +30,14 @@ data PostsListOrderBy
3030
3131instance Hashable PostsListOrderBy
3232
33−instance FromText PostsListOrderBy where
34− fromText = \case
35− "published" -> Just Published
36− "updated" -> Just Updated
37− _ -> Nothing
38−
39−instance ToText PostsListOrderBy where
40− toText = \case
33+instance FromHttpApiData PostsListOrderBy where
34+ parseQueryParam = \case
35+ "published" -> Right Published
36+ "updated" -> Right Updated
37+ x -> Left ("Unable to parse PostsListOrderBy from: " <> x)
38+
39+instance ToHttpApiData PostsListOrderBy where
40+ toQueryParam = \case
4141 Published -> "published"
4242 Updated -> "updated"
4343
@@ -63,15 +63,15 @@ data PostsListView
6363
6464instance Hashable PostsListView
6565
66−instance FromText PostsListView where
67− fromText = \case
68− "ADMIN" -> Just Admin
69− "AUTHOR" -> Just Author
70− "READER" -> Just Reader
71− _ -> Nothing
66+instance FromHttpApiData PostsListView where
67+ parseQueryParam = \case
68+ "ADMIN" -> Right Admin
69+ "AUTHOR" -> Right Author
70+ "READER" -> Right Reader
71+ x -> Left ("Unable to parse PostsListView from: " <> x)
7272
73−instance ToText PostsListView where
74− toText = \case
73+instance ToHttpApiData PostsListView where
74+ toQueryParam = \case
7575 Admin -> "ADMIN"
7676 Author -> "AUTHOR"
7777 Reader -> "READER"
@@ -96,15 +96,15 @@ data PageViewsGetRange
9696
9797instance Hashable PageViewsGetRange
9898
99−instance FromText PageViewsGetRange where
100− fromText = \case
101− "30DAYS" -> Just PVGR30DAYS
102− "7DAYS" -> Just PVGR7DAYS
103− "all" -> Just PVGRAll
104− _ -> Nothing
99+instance FromHttpApiData PageViewsGetRange where
100+ parseQueryParam = \case
101+ "30DAYS" -> Right PVGR30DAYS
102+ "7DAYS" -> Right PVGR7DAYS
103+ "all" -> Right PVGRAll
104+ x -> Left ("Unable to parse PageViewsGetRange from: " <> x)
105105
106−instance ToText PageViewsGetRange where
107− toText = \case
106+instance ToHttpApiData PageViewsGetRange where
107+ toQueryParam = \case
108108 PVGR30DAYS -> "30DAYS"
109109 PVGR7DAYS -> "7DAYS"
110110 PVGRAll -> "all"
@@ -131,15 +131,15 @@ data CommentsListView
131131
132132instance Hashable CommentsListView
133133
134−instance FromText CommentsListView where
135− fromText = \case
136− "ADMIN" -> Just CLVAdmin
137− "AUTHOR" -> Just CLVAuthor
138− "READER" -> Just CLVReader
139− _ -> Nothing
134+instance FromHttpApiData CommentsListView where
135+ parseQueryParam = \case
136+ "ADMIN" -> Right CLVAdmin
137+ "AUTHOR" -> Right CLVAuthor
138+ "READER" -> Right CLVReader
139+ x -> Left ("Unable to parse CommentsListView from: " <> x)
140140
141−instance ToText CommentsListView where
142− toText = \case
141+instance ToHttpApiData CommentsListView where
142+ toQueryParam = \case
143143 CLVAdmin -> "ADMIN"
144144 CLVAuthor -> "AUTHOR"
145145 CLVReader -> "READER"
@@ -164,15 +164,15 @@ data PostUserInfosListStatus
164164
165165instance Hashable PostUserInfosListStatus
166166
167−instance FromText PostUserInfosListStatus where
168− fromText = \case
169− "draft" -> Just Draft
170− "live" -> Just Live
171− "scheduled" -> Just Scheduled
172− _ -> Nothing
167+instance FromHttpApiData PostUserInfosListStatus where
168+ parseQueryParam = \case
169+ "draft" -> Right Draft
170+ "live" -> Right Live
171+ "scheduled" -> Right Scheduled
172+ x -> Left ("Unable to parse PostUserInfosListStatus from: " <> x)
173173
174−instance ToText PostUserInfosListStatus where
175− toText = \case
174+instance ToHttpApiData PostUserInfosListStatus where
175+ toQueryParam = \case
176176 Draft -> "draft"
177177 Live -> "live"
178178 Scheduled -> "scheduled"
@@ -199,15 +199,15 @@ data PostsGetView
199199
200200instance Hashable PostsGetView
201201
202−instance FromText PostsGetView where
203− fromText = \case
204− "ADMIN" -> Just PGVAdmin
205− "AUTHOR" -> Just PGVAuthor
206− "READER" -> Just PGVReader
207− _ -> Nothing
202+instance FromHttpApiData PostsGetView where
203+ parseQueryParam = \case
204+ "ADMIN" -> Right PGVAdmin
205+ "AUTHOR" -> Right PGVAuthor
206+ "READER" -> Right PGVReader
207+ x -> Left ("Unable to parse PostsGetView from: " <> x)
208208
209−instance ToText PostsGetView where
210− toText = \case
209+instance ToHttpApiData PostsGetView where
210+ toQueryParam = \case
211211 PGVAdmin -> "ADMIN"
212212 PGVAuthor -> "AUTHOR"
213213 PGVReader -> "READER"
@@ -230,14 +230,14 @@ data PostsSearchOrderBy
230230
231231instance Hashable PostsSearchOrderBy
232232
233−instance FromText PostsSearchOrderBy where
234− fromText = \case
235− "published" -> Just PSOBPublished
236− "updated" -> Just PSOBUpdated
237− _ -> Nothing
233+instance FromHttpApiData PostsSearchOrderBy where
234+ parseQueryParam = \case
235+ "published" -> Right PSOBPublished
236+ "updated" -> Right PSOBUpdated
237+ x -> Left ("Unable to parse PostsSearchOrderBy from: " <> x)
238238
239−instance ToText PostsSearchOrderBy where
240− toText = \case
239+instance ToHttpApiData PostsSearchOrderBy where
240+ toQueryParam = \case
241241 PSOBPublished -> "published"
242242 PSOBUpdated -> "updated"
243243
@@ -264,16 +264,16 @@ data CommentsListByBlogStatus
264264
265265instance Hashable CommentsListByBlogStatus
266266
267−instance FromText CommentsListByBlogStatus where
268− fromText = \case
269− "emptied" -> Just CLBBSEmptied
270− "live" -> Just CLBBSLive
271− "pending" -> Just CLBBSPending
272− "spam" -> Just CLBBSSpam
273− _ -> Nothing
267+instance FromHttpApiData CommentsListByBlogStatus where
268+ parseQueryParam = \case
269+ "emptied" -> Right CLBBSEmptied
270+ "live" -> Right CLBBSLive
271+ "pending" -> Right CLBBSPending
272+ "spam" -> Right CLBBSSpam
273+ x -> Left ("Unable to parse CommentsListByBlogStatus from: " <> x)
274274
275−instance ToText CommentsListByBlogStatus where
276− toText = \case
275+instance ToHttpApiData CommentsListByBlogStatus where
276+ toQueryParam = \case
277277 CLBBSEmptied -> "emptied"
278278 CLBBSLive -> "live"
279279 CLBBSPending -> "pending"
@@ -299,15 +299,15 @@ data PagesGetView
299299
300300instance Hashable PagesGetView
301301
302−instance FromText PagesGetView where
303− fromText = \case
304− "ADMIN" -> Just PAdmin
305− "AUTHOR" -> Just PAuthor
306− "READER" -> Just PReader
307− _ -> Nothing
302+instance FromHttpApiData PagesGetView where
303+ parseQueryParam = \case
304+ "ADMIN" -> Right PAdmin
305+ "AUTHOR" -> Right PAuthor
306+ "READER" -> Right PReader
307+ x -> Left ("Unable to parse PagesGetView from: " <> x)
308308
309−instance ToText PagesGetView where
310− toText = \case
309+instance ToHttpApiData PagesGetView where
310+ toQueryParam = \case
311311 PAdmin -> "ADMIN"
312312 PAuthor -> "AUTHOR"
313313 PReader -> "READER"
@@ -330,14 +330,14 @@ data PostUserInfosListOrderBy
330330
331331instance Hashable PostUserInfosListOrderBy
332332
333−instance FromText PostUserInfosListOrderBy where
334− fromText = \case
335− "published" -> Just PUILOBPublished
336− "updated" -> Just PUILOBUpdated
337− _ -> Nothing
333+instance FromHttpApiData PostUserInfosListOrderBy where
334+ parseQueryParam = \case
335+ "published" -> Right PUILOBPublished
336+ "updated" -> Right PUILOBUpdated
337+ x -> Left ("Unable to parse PostUserInfosListOrderBy from: " <> x)
338338
339−instance ToText PostUserInfosListOrderBy where
340− toText = \case
339+instance ToHttpApiData PostUserInfosListOrderBy where
340+ toQueryParam = \case
341341 PUILOBPublished -> "published"
342342 PUILOBUpdated -> "updated"
343343
@@ -363,15 +363,15 @@ data BlogsGetView
363363
364364instance Hashable BlogsGetView
365365
366−instance FromText BlogsGetView where
367− fromText = \case
368− "ADMIN" -> Just BGVAdmin
369− "AUTHOR" -> Just BGVAuthor
370− "READER" -> Just BGVReader
371− _ -> Nothing
366+instance FromHttpApiData BlogsGetView where
367+ parseQueryParam = \case
368+ "ADMIN" -> Right BGVAdmin
369+ "AUTHOR" -> Right BGVAuthor
370+ "READER" -> Right BGVReader
371+ x -> Left ("Unable to parse BlogsGetView from: " <> x)
372372
373−instance ToText BlogsGetView where
374− toText = \case
373+instance ToHttpApiData BlogsGetView where
374+ toQueryParam = \case
375375 BGVAdmin -> "ADMIN"
376376 BGVAuthor -> "AUTHOR"
377377 BGVReader -> "READER"
@@ -398,15 +398,15 @@ data BlogsGetByURLView
398398
399399instance Hashable BlogsGetByURLView
400400
401−instance FromText BlogsGetByURLView where
402− fromText = \case
403− "ADMIN" -> Just BGBUVAdmin
404− "AUTHOR" -> Just BGBUVAuthor
405− "READER" -> Just BGBUVReader
406− _ -> Nothing
401+instance FromHttpApiData BlogsGetByURLView where
402+ parseQueryParam = \case
403+ "ADMIN" -> Right BGBUVAdmin
404+ "AUTHOR" -> Right BGBUVAuthor
405+ "READER" -> Right BGBUVReader
406+ x -> Left ("Unable to parse BlogsGetByURLView from: " <> x)
407407
408−instance ToText BlogsGetByURLView where
409− toText = \case
408+instance ToHttpApiData BlogsGetByURLView where
409+ toQueryParam = \case
410410 BGBUVAdmin -> "ADMIN"
411411 BGBUVAuthor -> "AUTHOR"
412412 BGBUVReader -> "READER"
@@ -434,16 +434,16 @@ data CommentsListStatus
434434
435435instance Hashable CommentsListStatus
436436
437−instance FromText CommentsListStatus where
438− fromText = \case
439− "emptied" -> Just CLSEmptied
440− "live" -> Just CLSLive
441− "pending" -> Just CLSPending
442− "spam" -> Just CLSSpam
443− _ -> Nothing
437+instance FromHttpApiData CommentsListStatus where
438+ parseQueryParam = \case
439+ "emptied" -> Right CLSEmptied
440+ "live" -> Right CLSLive
441+ "pending" -> Right CLSPending
442+ "spam" -> Right CLSSpam
443+ x -> Left ("Unable to parse CommentsListStatus from: " <> x)
444444
445−instance ToText CommentsListStatus where
446− toText = \case
445+instance ToHttpApiData CommentsListStatus where
446+ toQueryParam = \case
447447 CLSEmptied -> "emptied"
448448 CLSLive -> "live"
449449 CLSPending -> "pending"
@@ -468,14 +468,14 @@ data BlogsListByUserStatus
468468
469469instance Hashable BlogsListByUserStatus
470470
471−instance FromText BlogsListByUserStatus where
472− fromText = \case
473− "DELETED" -> Just BLBUSDeleted
474− "LIVE" -> Just BLBUSLive
475− _ -> Nothing
471+instance FromHttpApiData BlogsListByUserStatus where
472+ parseQueryParam = \case
473+ "DELETED" -> Right BLBUSDeleted
474+ "LIVE" -> Right BLBUSLive
475+ x -> Left ("Unable to parse BlogsListByUserStatus from: " <> x)
476476
477−instance ToText BlogsListByUserStatus where
478− toText = \case
477+instance ToHttpApiData BlogsListByUserStatus where
478+ toQueryParam = \case
479479 BLBUSDeleted -> "DELETED"
480480 BLBUSLive -> "LIVE"
481481
@@ -501,15 +501,15 @@ data PagesListView
501501
502502instance Hashable PagesListView
503503
504−instance FromText PagesListView where
505− fromText = \case
506− "ADMIN" -> Just PLVAdmin
507− "AUTHOR" -> Just PLVAuthor
508− "READER" -> Just PLVReader
509− _ -> Nothing
504+instance FromHttpApiData PagesListView where
505+ parseQueryParam = \case
506+ "ADMIN" -> Right PLVAdmin
507+ "AUTHOR" -> Right PLVAuthor
508+ "READER" -> Right PLVReader
509+ x -> Left ("Unable to parse PagesListView from: " <> x)
510510
511−instance ToText PagesListView where
512− toText = \case
511+instance ToHttpApiData PagesListView where
512+ toQueryParam = \case
513513 PLVAdmin -> "ADMIN"
514514 PLVAuthor -> "AUTHOR"
515515 PLVReader -> "READER"
@@ -535,15 +535,15 @@ data PostsListStatus
535535
536536instance Hashable PostsListStatus
537537
538−instance FromText PostsListStatus where
539− fromText = \case
540− "draft" -> Just PLSDraft
541− "live" -> Just PLSLive
542− "scheduled" -> Just PLSScheduled
543− _ -> Nothing
538+instance FromHttpApiData PostsListStatus where
539+ parseQueryParam = \case
540+ "draft" -> Right PLSDraft
541+ "live" -> Right PLSLive
542+ "scheduled" -> Right PLSScheduled
543+ x -> Left ("Unable to parse PostsListStatus from: " <> x)
544544
545−instance ToText PostsListStatus where
546− toText = \case
545+instance ToHttpApiData PostsListStatus where
546+ toQueryParam = \case
547547 PLSDraft -> "draft"
548548 PLSLive -> "live"
549549 PLSScheduled -> "scheduled"
@@ -570,15 +570,15 @@ data BlogsListByUserView
570570
571571instance Hashable BlogsListByUserView
572572
573−instance FromText BlogsListByUserView where
574− fromText = \case
575− "ADMIN" -> Just BLBUVAdmin
576− "AUTHOR" -> Just BLBUVAuthor
577− "READER" -> Just BLBUVReader
578− _ -> Nothing
573+instance FromHttpApiData BlogsListByUserView where
574+ parseQueryParam = \case
575+ "ADMIN" -> Right BLBUVAdmin
576+ "AUTHOR" -> Right BLBUVAuthor
577+ "READER" -> Right BLBUVReader
578+ x -> Left ("Unable to parse BlogsListByUserView from: " <> x)
579579
580−instance ToText BlogsListByUserView where
581− toText = \case
580+instance ToHttpApiData BlogsListByUserView where
581+ toQueryParam = \case
582582 BLBUVAdmin -> "ADMIN"
583583 BLBUVAuthor -> "AUTHOR"
584584 BLBUVReader -> "READER"
@@ -605,15 +605,15 @@ data PostUserInfosListView
605605
606606instance Hashable PostUserInfosListView
607607
608−instance FromText PostUserInfosListView where
609− fromText = \case
610− "ADMIN" -> Just PUILVAdmin
611− "AUTHOR" -> Just PUILVAuthor
612− "READER" -> Just PUILVReader
613− _ -> Nothing
608+instance FromHttpApiData PostUserInfosListView where
609+ parseQueryParam = \case
610+ "ADMIN" -> Right PUILVAdmin
611+ "AUTHOR" -> Right PUILVAuthor
612+ "READER" -> Right PUILVReader
613+ x -> Left ("Unable to parse PostUserInfosListView from: " <> x)
614614
615−instance ToText PostUserInfosListView where
616− toText = \case
615+instance ToHttpApiData PostUserInfosListView where
616+ toQueryParam = \case
617617 PUILVAdmin -> "ADMIN"
618618 PUILVAuthor -> "AUTHOR"
619619 PUILVReader -> "READER"
@@ -642,15 +642,15 @@ data CommentsGetView
642642
643643instance Hashable CommentsGetView
644644
645−instance FromText CommentsGetView where
646− fromText = \case
647− "ADMIN" -> Just CGVAdmin
648− "AUTHOR" -> Just CGVAuthor
649− "READER" -> Just CGVReader
650− _ -> Nothing
645+instance FromHttpApiData CommentsGetView where
646+ parseQueryParam = \case
647+ "ADMIN" -> Right CGVAdmin
648+ "AUTHOR" -> Right CGVAuthor
649+ "READER" -> Right CGVReader
650+ x -> Left ("Unable to parse CommentsGetView from: " <> x)
651651
652−instance ToText CommentsGetView where
653− toText = \case
652+instance ToHttpApiData CommentsGetView where
653+ toQueryParam = \case
654654 CGVAdmin -> "ADMIN"
655655 CGVAuthor -> "AUTHOR"
656656 CGVReader -> "READER"
@@ -677,15 +677,15 @@ data PostsGetByPathView
677677
678678instance Hashable PostsGetByPathView
679679
680−instance FromText PostsGetByPathView where
681− fromText = \case
682− "ADMIN" -> Just PGBPVAdmin
683− "AUTHOR" -> Just PGBPVAuthor
684− "READER" -> Just PGBPVReader
685− _ -> Nothing
680+instance FromHttpApiData PostsGetByPathView where
681+ parseQueryParam = \case
682+ "ADMIN" -> Right PGBPVAdmin
683+ "AUTHOR" -> Right PGBPVAuthor
684+ "READER" -> Right PGBPVReader
685+ x -> Left ("Unable to parse PostsGetByPathView from: " <> x)
686686
687−instance ToText PostsGetByPathView where
688− toText = \case
687+instance ToHttpApiData PostsGetByPathView where
688+ toQueryParam = \case
689689 PGBPVAdmin -> "ADMIN"
690690 PGBPVAuthor -> "AUTHOR"
691691 PGBPVReader -> "READER"
@@ -707,14 +707,14 @@ data PagesListStatus
707707
708708instance Hashable PagesListStatus
709709
710−instance FromText PagesListStatus where
711− fromText = \case
712− "draft" -> Just PDraft
713− "live" -> Just PLive
714− _ -> Nothing
710+instance FromHttpApiData PagesListStatus where
711+ parseQueryParam = \case
712+ "draft" -> Right PDraft
713+ "live" -> Right PLive
714+ x -> Left ("Unable to parse PagesListStatus from: " <> x)
715715
716−instance ToText PagesListStatus where
717− toText = \case
716+instance ToHttpApiData PagesListStatus where
717+ toQueryParam = \case
718718 PDraft -> "draft"
719719 PLive -> "live"
720720
@@ -742,15 +742,15 @@ data BlogsListByUserRole
742742
743743instance Hashable BlogsListByUserRole
744744
745−instance FromText BlogsListByUserRole where
746− fromText = \case
747− "ADMIN" -> Just BLBURAdmin
748− "AUTHOR" -> Just BLBURAuthor
749− "READER" -> Just BLBURReader
750− _ -> Nothing
745+instance FromHttpApiData BlogsListByUserRole where
746+ parseQueryParam = \case
747+ "ADMIN" -> Right BLBURAdmin
748+ "AUTHOR" -> Right BLBURAuthor
749+ "READER" -> Right BLBURReader
750+ x -> Left ("Unable to parse BlogsListByUserRole from: " <> x)
751751
752−instance ToText BlogsListByUserRole where
753− toText = \case
752+instance ToHttpApiData BlogsListByUserRole where
753+ toQueryParam = \case
754754 BLBURAdmin -> "ADMIN"
755755 BLBURAuthor -> "AUTHOR"
756756 BLBURReader -> "READER"
gogol-books/gen/Network/Google/Books/Types/Sum.hs+173−173
@@ -30,14 +30,14 @@ data VolumesListProjection
3030
3131instance Hashable VolumesListProjection
3232
33−instance FromText VolumesListProjection where
34− fromText = \case
35− "full" -> Just Full
36− "lite" -> Just Lite
37− _ -> Nothing
38−
39−instance ToText VolumesListProjection where
40− toText = \case
33+instance FromHttpApiData VolumesListProjection where
34+ parseQueryParam = \case
35+ "full" -> Right Full
36+ "lite" -> Right Lite
37+ x -> Left ("Unable to parse VolumesListProjection from: " <> x)
38+
39+instance ToHttpApiData VolumesListProjection where
40+ toQueryParam = \case
4141 Full -> "full"
4242 Lite -> "lite"
4343
@@ -59,14 +59,14 @@ data MyLibraryBookshelvesVolumesListProjection
5959
6060instance Hashable MyLibraryBookshelvesVolumesListProjection
6161
62−instance FromText MyLibraryBookshelvesVolumesListProjection where
63− fromText = \case
64− "full" -> Just MLBVLPFull
65− "lite" -> Just MLBVLPLite
66− _ -> Nothing
62+instance FromHttpApiData MyLibraryBookshelvesVolumesListProjection where
63+ parseQueryParam = \case
64+ "full" -> Right MLBVLPFull
65+ "lite" -> Right MLBVLPLite
66+ x -> Left ("Unable to parse MyLibraryBookshelvesVolumesListProjection from: " <> x)
6767
68−instance ToText MyLibraryBookshelvesVolumesListProjection where
69− toText = \case
68+instance ToHttpApiData MyLibraryBookshelvesVolumesListProjection where
69+ toQueryParam = \case
7070 MLBVLPFull -> "full"
7171 MLBVLPLite -> "lite"
7272
@@ -88,14 +88,14 @@ data VolumesListOrderBy
8888
8989instance Hashable VolumesListOrderBy
9090
91−instance FromText VolumesListOrderBy where
92− fromText = \case
93− "newest" -> Just Newest
94− "relevance" -> Just Relevance
95− _ -> Nothing
91+instance FromHttpApiData VolumesListOrderBy where
92+ parseQueryParam = \case
93+ "newest" -> Right Newest
94+ "relevance" -> Right Relevance
95+ x -> Left ("Unable to parse VolumesListOrderBy from: " <> x)
9696
97−instance ToText VolumesListOrderBy where
98− toText = \case
97+instance ToHttpApiData VolumesListOrderBy where
98+ toQueryParam = \case
9999 Newest -> "newest"
100100 Relevance -> "relevance"
101101
@@ -117,14 +117,14 @@ data VolumesListLibraryRestrict
117117
118118instance Hashable VolumesListLibraryRestrict
119119
120−instance FromText VolumesListLibraryRestrict where
121− fromText = \case
122− "my-library" -> Just MyLibrary
123− "no-restrict" -> Just NoRestrict
124− _ -> Nothing
120+instance FromHttpApiData VolumesListLibraryRestrict where
121+ parseQueryParam = \case
122+ "my-library" -> Right MyLibrary
123+ "no-restrict" -> Right NoRestrict
124+ x -> Left ("Unable to parse VolumesListLibraryRestrict from: " <> x)
125125
126−instance ToText VolumesListLibraryRestrict where
127− toText = \case
126+instance ToHttpApiData VolumesListLibraryRestrict where
127+ toQueryParam = \case
128128 MyLibrary -> "my-library"
129129 NoRestrict -> "no-restrict"
130130
@@ -143,13 +143,13 @@ data MyLibraryBookshelvesRemoveVolumeReason
143143
144144instance Hashable MyLibraryBookshelvesRemoveVolumeReason
145145
146−instance FromText MyLibraryBookshelvesRemoveVolumeReason where
147− fromText = \case
148− "ONBOARDING" -> Just Onboarding
149− _ -> Nothing
146+instance FromHttpApiData MyLibraryBookshelvesRemoveVolumeReason where
147+ parseQueryParam = \case
148+ "ONBOARDING" -> Right Onboarding
149+ x -> Left ("Unable to parse MyLibraryBookshelvesRemoveVolumeReason from: " <> x)
150150
151−instance ToText MyLibraryBookshelvesRemoveVolumeReason where
152− toText = \case
151+instance ToHttpApiData MyLibraryBookshelvesRemoveVolumeReason where
152+ toQueryParam = \case
153153 Onboarding -> "ONBOARDING"
154154
155155instance FromJSON MyLibraryBookshelvesRemoveVolumeReason where
@@ -171,14 +171,14 @@ data OnboardingListCategoryVolumesMaxAllowedMaturityRating
171171
172172instance Hashable OnboardingListCategoryVolumesMaxAllowedMaturityRating
173173
174−instance FromText OnboardingListCategoryVolumesMaxAllowedMaturityRating where
175− fromText = \case
176− "mature" -> Just Mature
177− "not-mature" -> Just NotMature
178− _ -> Nothing
174+instance FromHttpApiData OnboardingListCategoryVolumesMaxAllowedMaturityRating where
175+ parseQueryParam = \case
176+ "mature" -> Right Mature
177+ "not-mature" -> Right NotMature
178+ x -> Left ("Unable to parse OnboardingListCategoryVolumesMaxAllowedMaturityRating from: " <> x)
179179
180−instance ToText OnboardingListCategoryVolumesMaxAllowedMaturityRating where
181− toText = \case
180+instance ToHttpApiData OnboardingListCategoryVolumesMaxAllowedMaturityRating where
181+ toQueryParam = \case
182182 Mature -> "mature"
183183 NotMature -> "not-mature"
184184
@@ -197,13 +197,13 @@ data VolumesListDownload
197197
198198instance Hashable VolumesListDownload
199199
200−instance FromText VolumesListDownload where
201− fromText = \case
202− "epub" -> Just Epub
203− _ -> Nothing
200+instance FromHttpApiData VolumesListDownload where
201+ parseQueryParam = \case
202+ "epub" -> Right Epub
203+ x -> Left ("Unable to parse VolumesListDownload from: " <> x)
204204
205−instance ToText VolumesListDownload where
206− toText = \case
205+instance ToHttpApiData VolumesListDownload where
206+ toQueryParam = \case
207207 Epub -> "epub"
208208
209209instance FromJSON VolumesListDownload where
@@ -224,14 +224,14 @@ data VolumesGetProjection
224224
225225instance Hashable VolumesGetProjection
226226
227−instance FromText VolumesGetProjection where
228− fromText = \case
229− "full" -> Just VGPFull
230− "lite" -> Just VGPLite
231− _ -> Nothing
227+instance FromHttpApiData VolumesGetProjection where
228+ parseQueryParam = \case
229+ "full" -> Right VGPFull
230+ "lite" -> Right VGPLite
231+ x -> Left ("Unable to parse VolumesGetProjection from: " <> x)
232232
233−instance ToText VolumesGetProjection where
234− toText = \case
233+instance ToHttpApiData VolumesGetProjection where
234+ toQueryParam = \case
235235 VGPFull -> "full"
236236 VGPLite -> "lite"
237237
@@ -256,15 +256,15 @@ data VolumesAssociatedListAssociation
256256
257257instance Hashable VolumesAssociatedListAssociation
258258
259−instance FromText VolumesAssociatedListAssociation where
260− fromText = \case
261− "end-of-sample" -> Just EndOfSample
262− "end-of-volume" -> Just EndOfVolume
263− "related-for-play" -> Just RelatedForPlay
264− _ -> Nothing
259+instance FromHttpApiData VolumesAssociatedListAssociation where
260+ parseQueryParam = \case
261+ "end-of-sample" -> Right EndOfSample
262+ "end-of-volume" -> Right EndOfVolume
263+ "related-for-play" -> Right RelatedForPlay
264+ x -> Left ("Unable to parse VolumesAssociatedListAssociation from: " <> x)
265265
266−instance ToText VolumesAssociatedListAssociation where
267− toText = \case
266+instance ToHttpApiData VolumesAssociatedListAssociation where
267+ toQueryParam = \case
268268 EndOfSample -> "end-of-sample"
269269 EndOfVolume -> "end-of-volume"
270270 RelatedForPlay -> "related-for-play"
@@ -287,14 +287,14 @@ data VolumesRecommendedRateRating
287287
288288instance Hashable VolumesRecommendedRateRating
289289
290−instance FromText VolumesRecommendedRateRating where
291− fromText = \case
292− "HAVE_IT" -> Just HaveIt
293− "NOT_INTERESTED" -> Just NotInterested
294− _ -> Nothing
290+instance FromHttpApiData VolumesRecommendedRateRating where
291+ parseQueryParam = \case
292+ "HAVE_IT" -> Right HaveIt
293+ "NOT_INTERESTED" -> Right NotInterested
294+ x -> Left ("Unable to parse VolumesRecommendedRateRating from: " <> x)
295295
296−instance ToText VolumesRecommendedRateRating where
297− toText = \case
296+instance ToHttpApiData VolumesRecommendedRateRating where
297+ toQueryParam = \case
298298 HaveIt -> "HAVE_IT"
299299 NotInterested -> "NOT_INTERESTED"
300300
@@ -319,15 +319,15 @@ data VolumesUserUploadedListProcessingState
319319
320320instance Hashable VolumesUserUploadedListProcessingState
321321
322−instance FromText VolumesUserUploadedListProcessingState where
323− fromText = \case
324− "COMPLETED_FAILED" -> Just CompletedFailed
325− "COMPLETED_SUCCESS" -> Just CompletedSuccess
326− "RUNNING" -> Just Running
327− _ -> Nothing
322+instance FromHttpApiData VolumesUserUploadedListProcessingState where
323+ parseQueryParam = \case
324+ "COMPLETED_FAILED" -> Right CompletedFailed
325+ "COMPLETED_SUCCESS" -> Right CompletedSuccess
326+ "RUNNING" -> Right Running
327+ x -> Left ("Unable to parse VolumesUserUploadedListProcessingState from: " <> x)
328328
329−instance ToText VolumesUserUploadedListProcessingState where
330− toText = \case
329+instance ToHttpApiData VolumesUserUploadedListProcessingState where
330+ toQueryParam = \case
331331 CompletedFailed -> "COMPLETED_FAILED"
332332 CompletedSuccess -> "COMPLETED_SUCCESS"
333333 Running -> "RUNNING"
@@ -347,13 +347,13 @@ data MyConfigSyncVolumeLicensesFeatures
347347
348348instance Hashable MyConfigSyncVolumeLicensesFeatures
349349
350−instance FromText MyConfigSyncVolumeLicensesFeatures where
351− fromText = \case
352− "RENTALS" -> Just Rentals
353− _ -> Nothing
350+instance FromHttpApiData MyConfigSyncVolumeLicensesFeatures where
351+ parseQueryParam = \case
352+ "RENTALS" -> Right Rentals
353+ x -> Left ("Unable to parse MyConfigSyncVolumeLicensesFeatures from: " <> x)
354354
355−instance ToText MyConfigSyncVolumeLicensesFeatures where
356− toText = \case
355+instance ToHttpApiData MyConfigSyncVolumeLicensesFeatures where
356+ toQueryParam = \case
357357 Rentals -> "RENTALS"
358358
359359instance FromJSON MyConfigSyncVolumeLicensesFeatures where
@@ -375,14 +375,14 @@ data VolumesAssociatedListMaxAllowedMaturityRating
375375
376376instance Hashable VolumesAssociatedListMaxAllowedMaturityRating
377377
378−instance FromText VolumesAssociatedListMaxAllowedMaturityRating where
379− fromText = \case
380− "mature" -> Just VALMAMRMature
381− "not-mature" -> Just VALMAMRNotMature
382− _ -> Nothing
378+instance FromHttpApiData VolumesAssociatedListMaxAllowedMaturityRating where
379+ parseQueryParam = \case
380+ "mature" -> Right VALMAMRMature
381+ "not-mature" -> Right VALMAMRNotMature
382+ x -> Left ("Unable to parse VolumesAssociatedListMaxAllowedMaturityRating from: " <> x)
383383
384−instance ToText VolumesAssociatedListMaxAllowedMaturityRating where
385− toText = \case
384+instance ToHttpApiData VolumesAssociatedListMaxAllowedMaturityRating where
385+ toQueryParam = \case
386386 VALMAMRMature -> "mature"
387387 VALMAMRNotMature -> "not-mature"
388388
@@ -413,17 +413,17 @@ data VolumesListFilter
413413
414414instance Hashable VolumesListFilter
415415
416−instance FromText VolumesListFilter where
417− fromText = \case
418− "ebooks" -> Just VLFEbooks
419− "free-ebooks" -> Just VLFFreeEbooks
420− "full" -> Just VLFFull
421− "paid-ebooks" -> Just VLFPaidEbooks
422− "partial" -> Just VLFPartial
423− _ -> Nothing
424−
425−instance ToText VolumesListFilter where
426− toText = \case
416+instance FromHttpApiData VolumesListFilter where
417+ parseQueryParam = \case
418+ "ebooks" -> Right VLFEbooks
419+ "free-ebooks" -> Right VLFFreeEbooks
420+ "full" -> Right VLFFull
421+ "paid-ebooks" -> Right VLFPaidEbooks
422+ "partial" -> Right VLFPartial
423+ x -> Left ("Unable to parse VolumesListFilter from: " <> x)
424+
425+instance ToHttpApiData VolumesListFilter where
426+ toQueryParam = \case
427427 VLFEbooks -> "ebooks"
428428 VLFFreeEbooks -> "free-ebooks"
429429 VLFFull -> "full"
@@ -449,14 +449,14 @@ data VolumesRecommendedListMaxAllowedMaturityRating
449449
450450instance Hashable VolumesRecommendedListMaxAllowedMaturityRating
451451
452−instance FromText VolumesRecommendedListMaxAllowedMaturityRating where
453− fromText = \case
454− "mature" -> Just VRLMAMRMature
455− "not-mature" -> Just VRLMAMRNotMature
456− _ -> Nothing
452+instance FromHttpApiData VolumesRecommendedListMaxAllowedMaturityRating where
453+ parseQueryParam = \case
454+ "mature" -> Right VRLMAMRMature
455+ "not-mature" -> Right VRLMAMRNotMature
456+ x -> Left ("Unable to parse VolumesRecommendedListMaxAllowedMaturityRating from: " <> x)
457457
458−instance ToText VolumesRecommendedListMaxAllowedMaturityRating where
459− toText = \case
458+instance ToHttpApiData VolumesRecommendedListMaxAllowedMaturityRating where
459+ toQueryParam = \case
460460 VRLMAMRMature -> "mature"
461461 VRLMAMRNotMature -> "not-mature"
462462
@@ -481,15 +481,15 @@ data MyLibraryBookshelvesAddVolumeReason
481481
482482instance Hashable MyLibraryBookshelvesAddVolumeReason
483483
484−instance FromText MyLibraryBookshelvesAddVolumeReason where
485− fromText = \case
486− "IOS_PREX" -> Just MLBAVRIosPrex
487− "IOS_SEARCH" -> Just MLBAVRIosSearch
488− "ONBOARDING" -> Just MLBAVROnboarding
489− _ -> Nothing
484+instance FromHttpApiData MyLibraryBookshelvesAddVolumeReason where
485+ parseQueryParam = \case
486+ "IOS_PREX" -> Right MLBAVRIosPrex
487+ "IOS_SEARCH" -> Right MLBAVRIosSearch
488+ "ONBOARDING" -> Right MLBAVROnboarding
489+ x -> Left ("Unable to parse MyLibraryBookshelvesAddVolumeReason from: " <> x)
490490
491−instance ToText MyLibraryBookshelvesAddVolumeReason where
492− toText = \case
491+instance ToHttpApiData MyLibraryBookshelvesAddVolumeReason where
492+ toQueryParam = \case
493493 MLBAVRIosPrex -> "IOS_PREX"
494494 MLBAVRIosSearch -> "IOS_SEARCH"
495495 MLBAVROnboarding -> "ONBOARDING"
@@ -527,19 +527,19 @@ data VolumesMybooksListAcquireMethod
527527
528528instance Hashable VolumesMybooksListAcquireMethod
529529
530−instance FromText VolumesMybooksListAcquireMethod where
531− fromText = \case
532− "PREORDERED" -> Just PreOrdered
533− "PREVIOUSLY_RENTED" -> Just PreviouslyRented
534− "PUBLIC_DOMAIN" -> Just PublicDomain
535− "PURCHASED" -> Just Purchased
536− "RENTED" -> Just Rented
537− "SAMPLE" -> Just Sample
538− "UPLOADED" -> Just Uploaded
539− _ -> Nothing
540−
541−instance ToText VolumesMybooksListAcquireMethod where
542− toText = \case
530+instance FromHttpApiData VolumesMybooksListAcquireMethod where
531+ parseQueryParam = \case
532+ "PREORDERED" -> Right PreOrdered
533+ "PREVIOUSLY_RENTED" -> Right PreviouslyRented
534+ "PUBLIC_DOMAIN" -> Right PublicDomain
535+ "PURCHASED" -> Right Purchased
536+ "RENTED" -> Right Rented
537+ "SAMPLE" -> Right Sample
538+ "UPLOADED" -> Right Uploaded
539+ x -> Left ("Unable to parse VolumesMybooksListAcquireMethod from: " <> x)
540+
541+instance ToHttpApiData VolumesMybooksListAcquireMethod where
542+ toQueryParam = \case
543543 PreOrdered -> "PREORDERED"
544544 PreviouslyRented -> "PREVIOUSLY_RENTED"
545545 PublicDomain -> "PUBLIC_DOMAIN"
@@ -567,14 +567,14 @@ data PersonalizedstreamGetMaxAllowedMaturityRating
567567
568568instance Hashable PersonalizedstreamGetMaxAllowedMaturityRating
569569
570−instance FromText PersonalizedstreamGetMaxAllowedMaturityRating where
571− fromText = \case
572− "mature" -> Just PGMAMRMature
573− "not-mature" -> Just PGMAMRNotMature
574− _ -> Nothing
570+instance FromHttpApiData PersonalizedstreamGetMaxAllowedMaturityRating where
571+ parseQueryParam = \case
572+ "mature" -> Right PGMAMRMature
573+ "not-mature" -> Right PGMAMRNotMature
574+ x -> Left ("Unable to parse PersonalizedstreamGetMaxAllowedMaturityRating from: " <> x)
575575
576−instance ToText PersonalizedstreamGetMaxAllowedMaturityRating where
577− toText = \case
576+instance ToHttpApiData PersonalizedstreamGetMaxAllowedMaturityRating where
577+ toQueryParam = \case
578578 PGMAMRMature -> "mature"
579579 PGMAMRNotMature -> "not-mature"
580580
@@ -599,15 +599,15 @@ data VolumesListPrintType
599599
600600instance Hashable VolumesListPrintType
601601
602−instance FromText VolumesListPrintType where
603− fromText = \case
604− "all" -> Just All
605− "books" -> Just Books
606− "magazines" -> Just Magazines
607− _ -> Nothing
602+instance FromHttpApiData VolumesListPrintType where
603+ parseQueryParam = \case
604+ "all" -> Right All
605+ "books" -> Right Books
606+ "magazines" -> Right Magazines
607+ x -> Left ("Unable to parse VolumesListPrintType from: " <> x)
608608
609−instance ToText VolumesListPrintType where
610− toText = \case
609+instance ToHttpApiData VolumesListPrintType where
610+ toQueryParam = \case
611611 All -> "all"
612612 Books -> "books"
613613 Magazines -> "magazines"
@@ -634,15 +634,15 @@ data VolumesMybooksListProcessingState
634634
635635instance Hashable VolumesMybooksListProcessingState
636636
637−instance FromText VolumesMybooksListProcessingState where
638− fromText = \case
639− "COMPLETED_FAILED" -> Just VMLPSCompletedFailed
640− "COMPLETED_SUCCESS" -> Just VMLPSCompletedSuccess
641− "RUNNING" -> Just VMLPSRunning
642− _ -> Nothing
637+instance FromHttpApiData VolumesMybooksListProcessingState where
638+ parseQueryParam = \case
639+ "COMPLETED_FAILED" -> Right VMLPSCompletedFailed
640+ "COMPLETED_SUCCESS" -> Right VMLPSCompletedSuccess
641+ "RUNNING" -> Right VMLPSRunning
642+ x -> Left ("Unable to parse VolumesMybooksListProcessingState from: " <> x)
643643
644−instance ToText VolumesMybooksListProcessingState where
645− toText = \case
644+instance ToHttpApiData VolumesMybooksListProcessingState where
645+ toQueryParam = \case
646646 VMLPSCompletedFailed -> "COMPLETED_FAILED"
647647 VMLPSCompletedSuccess -> "COMPLETED_SUCCESS"
648648 VMLPSRunning -> "RUNNING"
@@ -669,15 +669,15 @@ data MyConfigRequestAccessLicenseTypes
669669
670670instance Hashable MyConfigRequestAccessLicenseTypes
671671
672−instance FromText MyConfigRequestAccessLicenseTypes where
673− fromText = \case
674− "BOTH" -> Just Both
675− "CONCURRENT" -> Just Concurrent
676− "DOWNLOAD" -> Just Download
677− _ -> Nothing
672+instance FromHttpApiData MyConfigRequestAccessLicenseTypes where
673+ parseQueryParam = \case
674+ "BOTH" -> Right Both
675+ "CONCURRENT" -> Right Concurrent
676+ "DOWNLOAD" -> Right Download
677+ x -> Left ("Unable to parse MyConfigRequestAccessLicenseTypes from: " <> x)
678678
679−instance ToText MyConfigRequestAccessLicenseTypes where
680− toText = \case
679+instance ToHttpApiData MyConfigRequestAccessLicenseTypes where
680+ toQueryParam = \case
681681 Both -> "BOTH"
682682 Concurrent -> "CONCURRENT"
683683 Download -> "DOWNLOAD"
@@ -712,18 +712,18 @@ data MyLibraryReadingPositionsSetPositionAction
712712
713713instance Hashable MyLibraryReadingPositionsSetPositionAction
714714
715−instance FromText MyLibraryReadingPositionsSetPositionAction where
716− fromText = \case
717− "bookmark" -> Just Bookmark
718− "chapter" -> Just Chapter
719− "next-page" -> Just NextPage
720− "prev-page" -> Just PrevPage
721− "scroll" -> Just Scroll
722− "search" -> Just Search
723− _ -> Nothing
724−
725−instance ToText MyLibraryReadingPositionsSetPositionAction where
726− toText = \case
715+instance FromHttpApiData MyLibraryReadingPositionsSetPositionAction where
716+ parseQueryParam = \case
717+ "bookmark" -> Right Bookmark
718+ "chapter" -> Right Chapter
719+ "next-page" -> Right NextPage
720+ "prev-page" -> Right PrevPage
721+ "scroll" -> Right Scroll
722+ "search" -> Right Search
723+ x -> Left ("Unable to parse MyLibraryReadingPositionsSetPositionAction from: " <> x)
724+
725+instance ToHttpApiData MyLibraryReadingPositionsSetPositionAction where
726+ toQueryParam = \case
727727 Bookmark -> "bookmark"
728728 Chapter -> "chapter"
729729 NextPage -> "next-page"
gogol-civicinfo/gen/Network/Google/CivicInfo/Types/Sum.hs+60−60
@@ -44,21 +44,21 @@ data RepresentativesRepresentativeInfoByDivisionLevels
4444
4545instance Hashable RepresentativesRepresentativeInfoByDivisionLevels
4646
47−instance FromText RepresentativesRepresentativeInfoByDivisionLevels where
48− fromText = \case
49− "administrativeArea1" -> Just ADMINISTRATIVEAREA1
50− "administrativeArea2" -> Just ADMINISTRATIVEAREA2
51− "country" -> Just Country
52− "international" -> Just International
53− "locality" -> Just Locality
54− "regional" -> Just Regional
55− "special" -> Just Special
56− "subLocality1" -> Just SUBLOCALITY1
57− "subLocality2" -> Just SUBLOCALITY2
58− _ -> Nothing
47+instance FromHttpApiData RepresentativesRepresentativeInfoByDivisionLevels where
48+ parseQueryParam = \case
49+ "administrativeArea1" -> Right ADMINISTRATIVEAREA1
50+ "administrativeArea2" -> Right ADMINISTRATIVEAREA2
51+ "country" -> Right Country
52+ "international" -> Right International
53+ "locality" -> Right Locality
54+ "regional" -> Right Regional
55+ "special" -> Right Special
56+ "subLocality1" -> Right SUBLOCALITY1
57+ "subLocality2" -> Right SUBLOCALITY2
58+ x -> Left ("Unable to parse RepresentativesRepresentativeInfoByDivisionLevels from: " <> x)
5959
60−instance ToText RepresentativesRepresentativeInfoByDivisionLevels where
61− toText = \case
60+instance ToHttpApiData RepresentativesRepresentativeInfoByDivisionLevels where
61+ toQueryParam = \case
6262 ADMINISTRATIVEAREA1 -> "administrativeArea1"
6363 ADMINISTRATIVEAREA2 -> "administrativeArea2"
6464 Country -> "country"
@@ -101,21 +101,21 @@ data RepresentativesRepresentativeInfoByAddressLevels
101101
102102instance Hashable RepresentativesRepresentativeInfoByAddressLevels
103103
104−instance FromText RepresentativesRepresentativeInfoByAddressLevels where
105− fromText = \case
106− "administrativeArea1" -> Just RRIBALADMINISTRATIVEAREA1
107− "administrativeArea2" -> Just RRIBALADMINISTRATIVEAREA2
108− "country" -> Just RRIBALCountry
109− "international" -> Just RRIBALInternational
110− "locality" -> Just RRIBALLocality
111− "regional" -> Just RRIBALRegional
112− "special" -> Just RRIBALSpecial
113− "subLocality1" -> Just RRIBALSUBLOCALITY1
114− "subLocality2" -> Just RRIBALSUBLOCALITY2
115− _ -> Nothing
104+instance FromHttpApiData RepresentativesRepresentativeInfoByAddressLevels where
105+ parseQueryParam = \case
106+ "administrativeArea1" -> Right RRIBALADMINISTRATIVEAREA1
107+ "administrativeArea2" -> Right RRIBALADMINISTRATIVEAREA2
108+ "country" -> Right RRIBALCountry
109+ "international" -> Right RRIBALInternational
110+ "locality" -> Right RRIBALLocality
111+ "regional" -> Right RRIBALRegional
112+ "special" -> Right RRIBALSpecial
113+ "subLocality1" -> Right RRIBALSUBLOCALITY1
114+ "subLocality2" -> Right RRIBALSUBLOCALITY2
115+ x -> Left ("Unable to parse RepresentativesRepresentativeInfoByAddressLevels from: " <> x)
116116
117−instance ToText RepresentativesRepresentativeInfoByAddressLevels where
118− toText = \case
117+instance ToHttpApiData RepresentativesRepresentativeInfoByAddressLevels where
118+ toQueryParam = \case
119119 RRIBALADMINISTRATIVEAREA1 -> "administrativeArea1"
120120 RRIBALADMINISTRATIVEAREA2 -> "administrativeArea2"
121121 RRIBALCountry -> "country"
@@ -162,23 +162,23 @@ data RepresentativesRepresentativeInfoByDivisionRoles
162162
163163instance Hashable RepresentativesRepresentativeInfoByDivisionRoles
164164
165−instance FromText RepresentativesRepresentativeInfoByDivisionRoles where
166− fromText = \case
167− "deputyHeadOfGovernment" -> Just DeputyHeadOfGovernment
168− "executiveCouncil" -> Just ExecutiveCouncil
169− "governmentOfficer" -> Just GovernmentOfficer
170− "headOfGovernment" -> Just HeadOfGovernment
171− "headOfState" -> Just HeadOfState
172− "highestCourtJudge" -> Just HighestCourtJudge
173− "judge" -> Just Judge
174− "legislatorLowerBody" -> Just LegislatorLowerBody
175− "legislatorUpperBody" -> Just LegislatorUpperBody
176− "schoolBoard" -> Just SchoolBoard
177− "specialPurposeOfficer" -> Just SpecialPurposeOfficer
178− _ -> Nothing
165+instance FromHttpApiData RepresentativesRepresentativeInfoByDivisionRoles where
166+ parseQueryParam = \case
167+ "deputyHeadOfGovernment" -> Right DeputyHeadOfGovernment
168+ "executiveCouncil" -> Right ExecutiveCouncil
169+ "governmentOfficer" -> Right GovernmentOfficer
170+ "headOfGovernment" -> Right HeadOfGovernment
171+ "headOfState" -> Right HeadOfState
172+ "highestCourtJudge" -> Right HighestCourtJudge
173+ "judge" -> Right Judge
174+ "legislatorLowerBody" -> Right LegislatorLowerBody
175+ "legislatorUpperBody" -> Right LegislatorUpperBody
176+ "schoolBoard" -> Right SchoolBoard
177+ "specialPurposeOfficer" -> Right SpecialPurposeOfficer
178+ x -> Left ("Unable to parse RepresentativesRepresentativeInfoByDivisionRoles from: " <> x)
179179
180−instance ToText RepresentativesRepresentativeInfoByDivisionRoles where
181− toText = \case
180+instance ToHttpApiData RepresentativesRepresentativeInfoByDivisionRoles where
181+ toQueryParam = \case
182182 DeputyHeadOfGovernment -> "deputyHeadOfGovernment"
183183 ExecutiveCouncil -> "executiveCouncil"
184184 GovernmentOfficer -> "governmentOfficer"
@@ -227,23 +227,23 @@ data RepresentativesRepresentativeInfoByAddressRoles
227227
228228instance Hashable RepresentativesRepresentativeInfoByAddressRoles
229229
230−instance FromText RepresentativesRepresentativeInfoByAddressRoles where
231− fromText = \case
232− "deputyHeadOfGovernment" -> Just RRIBARDeputyHeadOfGovernment
233− "executiveCouncil" -> Just RRIBARExecutiveCouncil
234− "governmentOfficer" -> Just RRIBARGovernmentOfficer
235− "headOfGovernment" -> Just RRIBARHeadOfGovernment
236− "headOfState" -> Just RRIBARHeadOfState
237− "highestCourtJudge" -> Just RRIBARHighestCourtJudge
238− "judge" -> Just RRIBARJudge
239− "legislatorLowerBody" -> Just RRIBARLegislatorLowerBody
240− "legislatorUpperBody" -> Just RRIBARLegislatorUpperBody
241− "schoolBoard" -> Just RRIBARSchoolBoard
242− "specialPurposeOfficer" -> Just RRIBARSpecialPurposeOfficer
243− _ -> Nothing
230+instance FromHttpApiData RepresentativesRepresentativeInfoByAddressRoles where
231+ parseQueryParam = \case
232+ "deputyHeadOfGovernment" -> Right RRIBARDeputyHeadOfGovernment
233+ "executiveCouncil" -> Right RRIBARExecutiveCouncil
234+ "governmentOfficer" -> Right RRIBARGovernmentOfficer
235+ "headOfGovernment" -> Right RRIBARHeadOfGovernment
236+ "headOfState" -> Right RRIBARHeadOfState
237+ "highestCourtJudge" -> Right RRIBARHighestCourtJudge
238+ "judge" -> Right RRIBARJudge
239+ "legislatorLowerBody" -> Right RRIBARLegislatorLowerBody
240+ "legislatorUpperBody" -> Right RRIBARLegislatorUpperBody
241+ "schoolBoard" -> Right RRIBARSchoolBoard
242+ "specialPurposeOfficer" -> Right RRIBARSpecialPurposeOfficer
243+ x -> Left ("Unable to parse RepresentativesRepresentativeInfoByAddressRoles from: " <> x)
244244
245−instance ToText RepresentativesRepresentativeInfoByAddressRoles where
246− toText = \case
245+instance ToHttpApiData RepresentativesRepresentativeInfoByAddressRoles where
246+ toQueryParam = \case
247247 RRIBARDeputyHeadOfGovernment -> "deputyHeadOfGovernment"
248248 RRIBARExecutiveCouncil -> "executiveCouncil"
249249 RRIBARGovernmentOfficer -> "governmentOfficer"
gogol-cloudmonitoring/gen/Network/Google/CloudMonitoring/Types/Sum.hs+18−18
@@ -34,16 +34,16 @@ data TimeseriesListAggregator
3434
3535instance Hashable TimeseriesListAggregator
3636
37−instance FromText TimeseriesListAggregator where
38− fromText = \case
39− "max" -> Just Max
40− "mean" -> Just Mean
41− "min" -> Just Min
42− "sum" -> Just Sum
43− _ -> Nothing
37+instance FromHttpApiData TimeseriesListAggregator where
38+ parseQueryParam = \case
39+ "max" -> Right Max
40+ "mean" -> Right Mean
41+ "min" -> Right Min
42+ "sum" -> Right Sum
43+ x -> Left ("Unable to parse TimeseriesListAggregator from: " <> x)
4444
45−instance ToText TimeseriesListAggregator where
46− toText = \case
45+instance ToHttpApiData TimeseriesListAggregator where
46+ toQueryParam = \case
4747 Max -> "max"
4848 Mean -> "mean"
4949 Min -> "min"
@@ -71,16 +71,16 @@ data TimeseriesDescriptorsListAggregator
7171
7272instance Hashable TimeseriesDescriptorsListAggregator
7373
74−instance FromText TimeseriesDescriptorsListAggregator where
75− fromText = \case
76− "max" -> Just TDLAMax
77− "mean" -> Just TDLAMean
78− "min" -> Just TDLAMin
79− "sum" -> Just TDLASum
80− _ -> Nothing
74+instance FromHttpApiData TimeseriesDescriptorsListAggregator where
75+ parseQueryParam = \case
76+ "max" -> Right TDLAMax
77+ "mean" -> Right TDLAMean
78+ "min" -> Right TDLAMin
79+ "sum" -> Right TDLASum
80+ x -> Left ("Unable to parse TimeseriesDescriptorsListAggregator from: " <> x)
8181
82−instance ToText TimeseriesDescriptorsListAggregator where
83− toText = \case
82+instance ToHttpApiData TimeseriesDescriptorsListAggregator where
83+ toQueryParam = \case
8484 TDLAMax -> "max"
8585 TDLAMean -> "mean"
8686 TDLAMin -> "min"
gogol-compute/gen/Network/Google/Compute/Types/Sum.hs+653−653
@@ -31,14 +31,14 @@ data SchedulingOnHostMaintenance
3131
3232instance Hashable SchedulingOnHostMaintenance
3333
34−instance FromText SchedulingOnHostMaintenance where
35− fromText = \case
36− "MIGRATE" -> Just Migrate
37− "TERMINATE" -> Just Terminate
38− _ -> Nothing
39−
40−instance ToText SchedulingOnHostMaintenance where
41− toText = \case
34+instance FromHttpApiData SchedulingOnHostMaintenance where
35+ parseQueryParam = \case
36+ "MIGRATE" -> Right Migrate
37+ "TERMINATE" -> Right Terminate
38+ x -> Left ("Unable to parse SchedulingOnHostMaintenance from: " <> x)
39+
40+instance ToHttpApiData SchedulingOnHostMaintenance where
41+ toQueryParam = \case
4242 Migrate -> "MIGRATE"
4343 Terminate -> "TERMINATE"
4444
@@ -62,15 +62,15 @@ data AutoscalingPolicyCustomMetricUtilizationUtilizationTargetType
6262
6363instance Hashable AutoscalingPolicyCustomMetricUtilizationUtilizationTargetType
6464
65−instance FromText AutoscalingPolicyCustomMetricUtilizationUtilizationTargetType where
66− fromText = \case
67− "DELTA_PER_MINUTE" -> Just DeltaPerMinute
68− "DELTA_PER_SECOND" -> Just DeltaPerSecond
69− "GAUGE" -> Just Gauge
70− _ -> Nothing
65+instance FromHttpApiData AutoscalingPolicyCustomMetricUtilizationUtilizationTargetType where
66+ parseQueryParam = \case
67+ "DELTA_PER_MINUTE" -> Right DeltaPerMinute
68+ "DELTA_PER_SECOND" -> Right DeltaPerSecond
69+ "GAUGE" -> Right Gauge
70+ x -> Left ("Unable to parse AutoscalingPolicyCustomMetricUtilizationUtilizationTargetType from: " <> x)
7171
72−instance ToText AutoscalingPolicyCustomMetricUtilizationUtilizationTargetType where
73− toText = \case
72+instance ToHttpApiData AutoscalingPolicyCustomMetricUtilizationUtilizationTargetType where
73+ toQueryParam = \case
7474 DeltaPerMinute -> "DELTA_PER_MINUTE"
7575 DeltaPerSecond -> "DELTA_PER_SECOND"
7676 Gauge -> "GAUGE"
@@ -118,27 +118,27 @@ data OperationWarningsItemCode
118118
119119instance Hashable OperationWarningsItemCode
120120
121−instance FromText OperationWarningsItemCode where
122− fromText = \case
123− "CLEANUP_FAILED" -> Just CleanupFailed
124− "DEPRECATED_RESOURCE_USED" -> Just DeprecatedResourceUsed
125− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just DiskSizeLargerThanImageSize
126− "INJECTED_KERNELS_DEPRECATED" -> Just InjectedKernelsDeprecated
127− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just NextHopAddressNotAssigned
128− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just NextHopCannotIPForward
129− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just NextHopInstanceNotFound
130− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just NextHopInstanceNotOnNetwork
131− "NEXT_HOP_NOT_RUNNING" -> Just NextHopNotRunning
132− "NOT_CRITICAL_ERROR" -> Just NotCriticalError
133− "NO_RESULTS_ON_PAGE" -> Just NoResultsOnPage
134− "REQUIRED_TOS_AGREEMENT" -> Just RequiredTosAgreement
135− "RESOURCE_NOT_DELETED" -> Just ResourceNotDeleted
136− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just SingleInstancePropertyTemplate
137− "UNREACHABLE" -> Just Unreachable
138− _ -> Nothing
139−
140−instance ToText OperationWarningsItemCode where
141− toText = \case
121+instance FromHttpApiData OperationWarningsItemCode where
122+ parseQueryParam = \case
123+ "CLEANUP_FAILED" -> Right CleanupFailed
124+ "DEPRECATED_RESOURCE_USED" -> Right DeprecatedResourceUsed
125+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right DiskSizeLargerThanImageSize
126+ "INJECTED_KERNELS_DEPRECATED" -> Right InjectedKernelsDeprecated
127+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right NextHopAddressNotAssigned
128+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right NextHopCannotIPForward
129+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right NextHopInstanceNotFound
130+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right NextHopInstanceNotOnNetwork
131+ "NEXT_HOP_NOT_RUNNING" -> Right NextHopNotRunning
132+ "NOT_CRITICAL_ERROR" -> Right NotCriticalError
133+ "NO_RESULTS_ON_PAGE" -> Right NoResultsOnPage
134+ "REQUIRED_TOS_AGREEMENT" -> Right RequiredTosAgreement
135+ "RESOURCE_NOT_DELETED" -> Right ResourceNotDeleted
136+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right SingleInstancePropertyTemplate
137+ "UNREACHABLE" -> Right Unreachable
138+ x -> Left ("Unable to parse OperationWarningsItemCode from: " <> x)
139+
140+instance ToHttpApiData OperationWarningsItemCode where
141+ toQueryParam = \case
142142 CleanupFailed -> "CLEANUP_FAILED"
143143 DeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
144144 DiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -172,14 +172,14 @@ data BackendServiceProtocol
172172
173173instance Hashable BackendServiceProtocol
174174
175−instance FromText BackendServiceProtocol where
176− fromText = \case
177− "HTTP" -> Just HTTP
178− "HTTPS" -> Just HTTPS
179− _ -> Nothing
175+instance FromHttpApiData BackendServiceProtocol where
176+ parseQueryParam = \case
177+ "HTTP" -> Right HTTP
178+ "HTTPS" -> Right HTTPS
179+ x -> Left ("Unable to parse BackendServiceProtocol from: " <> x)
180180
181−instance ToText BackendServiceProtocol where
182− toText = \case
181+instance ToHttpApiData BackendServiceProtocol where
182+ toQueryParam = \case
183183 HTTP -> "HTTP"
184184 HTTPS -> "HTTPS"
185185
@@ -200,14 +200,14 @@ data AttachedDiskType
200200
201201instance Hashable AttachedDiskType
202202
203−instance FromText AttachedDiskType where
204− fromText = \case
205− "PERSISTENT" -> Just Persistent
206− "SCRATCH" -> Just Scratch
207− _ -> Nothing
203+instance FromHttpApiData AttachedDiskType where
204+ parseQueryParam = \case
205+ "PERSISTENT" -> Right Persistent
206+ "SCRATCH" -> Right Scratch
207+ x -> Left ("Unable to parse AttachedDiskType from: " <> x)
208208
209−instance ToText AttachedDiskType where
210− toText = \case
209+instance ToHttpApiData AttachedDiskType where
210+ toQueryParam = \case
211211 Persistent -> "PERSISTENT"
212212 Scratch -> "SCRATCH"
213213
@@ -226,13 +226,13 @@ data ImageSourceType
226226
227227instance Hashable ImageSourceType
228228
229−instance FromText ImageSourceType where
230− fromText = \case
231− "RAW" -> Just Raw
232− _ -> Nothing
229+instance FromHttpApiData ImageSourceType where
230+ parseQueryParam = \case
231+ "RAW" -> Right Raw
232+ x -> Left ("Unable to parse ImageSourceType from: " <> x)
233233
234−instance ToText ImageSourceType where
235− toText = \case
234+instance ToHttpApiData ImageSourceType where
235+ toQueryParam = \case
236236 Raw -> "RAW"
237237
238238instance FromJSON ImageSourceType where
@@ -278,27 +278,27 @@ data ForwardingRulesScopedListWarningCode
278278
279279instance Hashable ForwardingRulesScopedListWarningCode
280280
281−instance FromText ForwardingRulesScopedListWarningCode where
282− fromText = \case
283− "CLEANUP_FAILED" -> Just FRSLWCCleanupFailed
284− "DEPRECATED_RESOURCE_USED" -> Just FRSLWCDeprecatedResourceUsed
285− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just FRSLWCDiskSizeLargerThanImageSize
286− "INJECTED_KERNELS_DEPRECATED" -> Just FRSLWCInjectedKernelsDeprecated
287− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just FRSLWCNextHopAddressNotAssigned
288− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just FRSLWCNextHopCannotIPForward
289− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just FRSLWCNextHopInstanceNotFound
290− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just FRSLWCNextHopInstanceNotOnNetwork
291− "NEXT_HOP_NOT_RUNNING" -> Just FRSLWCNextHopNotRunning
292− "NOT_CRITICAL_ERROR" -> Just FRSLWCNotCriticalError
293− "NO_RESULTS_ON_PAGE" -> Just FRSLWCNoResultsOnPage
294− "REQUIRED_TOS_AGREEMENT" -> Just FRSLWCRequiredTosAgreement
295− "RESOURCE_NOT_DELETED" -> Just FRSLWCResourceNotDeleted
296− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just FRSLWCSingleInstancePropertyTemplate
297− "UNREACHABLE" -> Just FRSLWCUnreachable
298− _ -> Nothing
299−
300−instance ToText ForwardingRulesScopedListWarningCode where
301− toText = \case
281+instance FromHttpApiData ForwardingRulesScopedListWarningCode where
282+ parseQueryParam = \case
283+ "CLEANUP_FAILED" -> Right FRSLWCCleanupFailed
284+ "DEPRECATED_RESOURCE_USED" -> Right FRSLWCDeprecatedResourceUsed
285+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right FRSLWCDiskSizeLargerThanImageSize
286+ "INJECTED_KERNELS_DEPRECATED" -> Right FRSLWCInjectedKernelsDeprecated
287+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right FRSLWCNextHopAddressNotAssigned
288+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right FRSLWCNextHopCannotIPForward
289+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right FRSLWCNextHopInstanceNotFound
290+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right FRSLWCNextHopInstanceNotOnNetwork
291+ "NEXT_HOP_NOT_RUNNING" -> Right FRSLWCNextHopNotRunning
292+ "NOT_CRITICAL_ERROR" -> Right FRSLWCNotCriticalError
293+ "NO_RESULTS_ON_PAGE" -> Right FRSLWCNoResultsOnPage
294+ "REQUIRED_TOS_AGREEMENT" -> Right FRSLWCRequiredTosAgreement
295+ "RESOURCE_NOT_DELETED" -> Right FRSLWCResourceNotDeleted
296+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right FRSLWCSingleInstancePropertyTemplate
297+ "UNREACHABLE" -> Right FRSLWCUnreachable
298+ x -> Left ("Unable to parse ForwardingRulesScopedListWarningCode from: " <> x)
299+
300+instance ToHttpApiData ForwardingRulesScopedListWarningCode where
301+ toQueryParam = \case
302302 FRSLWCCleanupFailed -> "CLEANUP_FAILED"
303303 FRSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
304304 FRSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -358,27 +358,27 @@ data OperationsScopedListWarningCode
358358
359359instance Hashable OperationsScopedListWarningCode
360360
361−instance FromText OperationsScopedListWarningCode where
362− fromText = \case
363− "CLEANUP_FAILED" -> Just OSLWCCleanupFailed
364− "DEPRECATED_RESOURCE_USED" -> Just OSLWCDeprecatedResourceUsed
365− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just OSLWCDiskSizeLargerThanImageSize
366− "INJECTED_KERNELS_DEPRECATED" -> Just OSLWCInjectedKernelsDeprecated
367− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just OSLWCNextHopAddressNotAssigned
368− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just OSLWCNextHopCannotIPForward
369− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just OSLWCNextHopInstanceNotFound
370− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just OSLWCNextHopInstanceNotOnNetwork
371− "NEXT_HOP_NOT_RUNNING" -> Just OSLWCNextHopNotRunning
372− "NOT_CRITICAL_ERROR" -> Just OSLWCNotCriticalError
373− "NO_RESULTS_ON_PAGE" -> Just OSLWCNoResultsOnPage
374− "REQUIRED_TOS_AGREEMENT" -> Just OSLWCRequiredTosAgreement
375− "RESOURCE_NOT_DELETED" -> Just OSLWCResourceNotDeleted
376− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just OSLWCSingleInstancePropertyTemplate
377− "UNREACHABLE" -> Just OSLWCUnreachable
378− _ -> Nothing
379−
380−instance ToText OperationsScopedListWarningCode where
381− toText = \case
361+instance FromHttpApiData OperationsScopedListWarningCode where
362+ parseQueryParam = \case
363+ "CLEANUP_FAILED" -> Right OSLWCCleanupFailed
364+ "DEPRECATED_RESOURCE_USED" -> Right OSLWCDeprecatedResourceUsed
365+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right OSLWCDiskSizeLargerThanImageSize
366+ "INJECTED_KERNELS_DEPRECATED" -> Right OSLWCInjectedKernelsDeprecated
367+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right OSLWCNextHopAddressNotAssigned
368+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right OSLWCNextHopCannotIPForward
369+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right OSLWCNextHopInstanceNotFound
370+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right OSLWCNextHopInstanceNotOnNetwork
371+ "NEXT_HOP_NOT_RUNNING" -> Right OSLWCNextHopNotRunning
372+ "NOT_CRITICAL_ERROR" -> Right OSLWCNotCriticalError
373+ "NO_RESULTS_ON_PAGE" -> Right OSLWCNoResultsOnPage
374+ "REQUIRED_TOS_AGREEMENT" -> Right OSLWCRequiredTosAgreement
375+ "RESOURCE_NOT_DELETED" -> Right OSLWCResourceNotDeleted
376+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right OSLWCSingleInstancePropertyTemplate
377+ "UNREACHABLE" -> Right OSLWCUnreachable
378+ x -> Left ("Unable to parse OperationsScopedListWarningCode from: " <> x)
379+
380+instance ToHttpApiData OperationsScopedListWarningCode where
381+ toQueryParam = \case
382382 OSLWCCleanupFailed -> "CLEANUP_FAILED"
383383 OSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
384384 OSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -438,27 +438,27 @@ data DisksScopedListWarningCode
438438
439439instance Hashable DisksScopedListWarningCode
440440
441−instance FromText DisksScopedListWarningCode where
442− fromText = \case
443− "CLEANUP_FAILED" -> Just DSLWCCleanupFailed
444− "DEPRECATED_RESOURCE_USED" -> Just DSLWCDeprecatedResourceUsed
445− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just DSLWCDiskSizeLargerThanImageSize
446− "INJECTED_KERNELS_DEPRECATED" -> Just DSLWCInjectedKernelsDeprecated
447− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just DSLWCNextHopAddressNotAssigned
448− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just DSLWCNextHopCannotIPForward
449− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just DSLWCNextHopInstanceNotFound
450− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just DSLWCNextHopInstanceNotOnNetwork
451− "NEXT_HOP_NOT_RUNNING" -> Just DSLWCNextHopNotRunning
452− "NOT_CRITICAL_ERROR" -> Just DSLWCNotCriticalError
453− "NO_RESULTS_ON_PAGE" -> Just DSLWCNoResultsOnPage
454− "REQUIRED_TOS_AGREEMENT" -> Just DSLWCRequiredTosAgreement
455− "RESOURCE_NOT_DELETED" -> Just DSLWCResourceNotDeleted
456− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just DSLWCSingleInstancePropertyTemplate
457− "UNREACHABLE" -> Just DSLWCUnreachable
458− _ -> Nothing
459−
460−instance ToText DisksScopedListWarningCode where
461− toText = \case
441+instance FromHttpApiData DisksScopedListWarningCode where
442+ parseQueryParam = \case
443+ "CLEANUP_FAILED" -> Right DSLWCCleanupFailed
444+ "DEPRECATED_RESOURCE_USED" -> Right DSLWCDeprecatedResourceUsed
445+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right DSLWCDiskSizeLargerThanImageSize
446+ "INJECTED_KERNELS_DEPRECATED" -> Right DSLWCInjectedKernelsDeprecated
447+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right DSLWCNextHopAddressNotAssigned
448+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right DSLWCNextHopCannotIPForward
449+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right DSLWCNextHopInstanceNotFound
450+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right DSLWCNextHopInstanceNotOnNetwork
451+ "NEXT_HOP_NOT_RUNNING" -> Right DSLWCNextHopNotRunning
452+ "NOT_CRITICAL_ERROR" -> Right DSLWCNotCriticalError
453+ "NO_RESULTS_ON_PAGE" -> Right DSLWCNoResultsOnPage
454+ "REQUIRED_TOS_AGREEMENT" -> Right DSLWCRequiredTosAgreement
455+ "RESOURCE_NOT_DELETED" -> Right DSLWCResourceNotDeleted
456+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right DSLWCSingleInstancePropertyTemplate
457+ "UNREACHABLE" -> Right DSLWCUnreachable
458+ x -> Left ("Unable to parse DisksScopedListWarningCode from: " <> x)
459+
460+instance ToHttpApiData DisksScopedListWarningCode where
461+ toQueryParam = \case
462462 DSLWCCleanupFailed -> "CLEANUP_FAILED"
463463 DSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
464464 DSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -518,27 +518,27 @@ data InstanceGroupManagersScopedListWarningCode
518518
519519instance Hashable InstanceGroupManagersScopedListWarningCode
520520
521−instance FromText InstanceGroupManagersScopedListWarningCode where
522− fromText = \case
523− "CLEANUP_FAILED" -> Just IGMSLWCCleanupFailed
524− "DEPRECATED_RESOURCE_USED" -> Just IGMSLWCDeprecatedResourceUsed
525− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just IGMSLWCDiskSizeLargerThanImageSize
526− "INJECTED_KERNELS_DEPRECATED" -> Just IGMSLWCInjectedKernelsDeprecated
527− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just IGMSLWCNextHopAddressNotAssigned
528− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just IGMSLWCNextHopCannotIPForward
529− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just IGMSLWCNextHopInstanceNotFound
530− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just IGMSLWCNextHopInstanceNotOnNetwork
531− "NEXT_HOP_NOT_RUNNING" -> Just IGMSLWCNextHopNotRunning
532− "NOT_CRITICAL_ERROR" -> Just IGMSLWCNotCriticalError
533− "NO_RESULTS_ON_PAGE" -> Just IGMSLWCNoResultsOnPage
534− "REQUIRED_TOS_AGREEMENT" -> Just IGMSLWCRequiredTosAgreement
535− "RESOURCE_NOT_DELETED" -> Just IGMSLWCResourceNotDeleted
536− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just IGMSLWCSingleInstancePropertyTemplate
537− "UNREACHABLE" -> Just IGMSLWCUnreachable
538− _ -> Nothing
539−
540−instance ToText InstanceGroupManagersScopedListWarningCode where
541− toText = \case
521+instance FromHttpApiData InstanceGroupManagersScopedListWarningCode where
522+ parseQueryParam = \case
523+ "CLEANUP_FAILED" -> Right IGMSLWCCleanupFailed
524+ "DEPRECATED_RESOURCE_USED" -> Right IGMSLWCDeprecatedResourceUsed
525+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right IGMSLWCDiskSizeLargerThanImageSize
526+ "INJECTED_KERNELS_DEPRECATED" -> Right IGMSLWCInjectedKernelsDeprecated
527+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right IGMSLWCNextHopAddressNotAssigned
528+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right IGMSLWCNextHopCannotIPForward
529+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right IGMSLWCNextHopInstanceNotFound
530+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right IGMSLWCNextHopInstanceNotOnNetwork
531+ "NEXT_HOP_NOT_RUNNING" -> Right IGMSLWCNextHopNotRunning
532+ "NOT_CRITICAL_ERROR" -> Right IGMSLWCNotCriticalError
533+ "NO_RESULTS_ON_PAGE" -> Right IGMSLWCNoResultsOnPage
534+ "REQUIRED_TOS_AGREEMENT" -> Right IGMSLWCRequiredTosAgreement
535+ "RESOURCE_NOT_DELETED" -> Right IGMSLWCResourceNotDeleted
536+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right IGMSLWCSingleInstancePropertyTemplate
537+ "UNREACHABLE" -> Right IGMSLWCUnreachable
538+ x -> Left ("Unable to parse InstanceGroupManagersScopedListWarningCode from: " <> x)
539+
540+instance ToHttpApiData InstanceGroupManagersScopedListWarningCode where
541+ toQueryParam = \case
542542 IGMSLWCCleanupFailed -> "CLEANUP_FAILED"
543543 IGMSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
544544 IGMSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -598,27 +598,27 @@ data TargetPoolsScopedListWarningCode
598598
599599instance Hashable TargetPoolsScopedListWarningCode
600600
601−instance FromText TargetPoolsScopedListWarningCode where
602− fromText = \case
603− "CLEANUP_FAILED" -> Just TPSLWCCleanupFailed
604− "DEPRECATED_RESOURCE_USED" -> Just TPSLWCDeprecatedResourceUsed
605− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just TPSLWCDiskSizeLargerThanImageSize
606− "INJECTED_KERNELS_DEPRECATED" -> Just TPSLWCInjectedKernelsDeprecated
607− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just TPSLWCNextHopAddressNotAssigned
608− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just TPSLWCNextHopCannotIPForward
609− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just TPSLWCNextHopInstanceNotFound
610− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just TPSLWCNextHopInstanceNotOnNetwork
611− "NEXT_HOP_NOT_RUNNING" -> Just TPSLWCNextHopNotRunning
612− "NOT_CRITICAL_ERROR" -> Just TPSLWCNotCriticalError
613− "NO_RESULTS_ON_PAGE" -> Just TPSLWCNoResultsOnPage
614− "REQUIRED_TOS_AGREEMENT" -> Just TPSLWCRequiredTosAgreement
615− "RESOURCE_NOT_DELETED" -> Just TPSLWCResourceNotDeleted
616− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just TPSLWCSingleInstancePropertyTemplate
617− "UNREACHABLE" -> Just TPSLWCUnreachable
618− _ -> Nothing
619−
620−instance ToText TargetPoolsScopedListWarningCode where
621− toText = \case
601+instance FromHttpApiData TargetPoolsScopedListWarningCode where
602+ parseQueryParam = \case
603+ "CLEANUP_FAILED" -> Right TPSLWCCleanupFailed
604+ "DEPRECATED_RESOURCE_USED" -> Right TPSLWCDeprecatedResourceUsed
605+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right TPSLWCDiskSizeLargerThanImageSize
606+ "INJECTED_KERNELS_DEPRECATED" -> Right TPSLWCInjectedKernelsDeprecated
607+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right TPSLWCNextHopAddressNotAssigned
608+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right TPSLWCNextHopCannotIPForward
609+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right TPSLWCNextHopInstanceNotFound
610+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right TPSLWCNextHopInstanceNotOnNetwork
611+ "NEXT_HOP_NOT_RUNNING" -> Right TPSLWCNextHopNotRunning
612+ "NOT_CRITICAL_ERROR" -> Right TPSLWCNotCriticalError
613+ "NO_RESULTS_ON_PAGE" -> Right TPSLWCNoResultsOnPage
614+ "REQUIRED_TOS_AGREEMENT" -> Right TPSLWCRequiredTosAgreement
615+ "RESOURCE_NOT_DELETED" -> Right TPSLWCResourceNotDeleted
616+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right TPSLWCSingleInstancePropertyTemplate
617+ "UNREACHABLE" -> Right TPSLWCUnreachable
618+ x -> Left ("Unable to parse TargetPoolsScopedListWarningCode from: " <> x)
619+
620+instance ToHttpApiData TargetPoolsScopedListWarningCode where
621+ toQueryParam = \case
622622 TPSLWCCleanupFailed -> "CLEANUP_FAILED"
623623 TPSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
624624 TPSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -655,16 +655,16 @@ data TargetVPNGatewayStatus
655655
656656instance Hashable TargetVPNGatewayStatus
657657
658−instance FromText TargetVPNGatewayStatus where
659− fromText = \case
660− "CREATING" -> Just Creating
661− "DELETING" -> Just Deleting
662− "FAILED" -> Just Failed
663− "READY" -> Just Ready
664− _ -> Nothing
658+instance FromHttpApiData TargetVPNGatewayStatus where
659+ parseQueryParam = \case
660+ "CREATING" -> Right Creating
661+ "DELETING" -> Right Deleting
662+ "FAILED" -> Right Failed
663+ "READY" -> Right Ready
664+ x -> Left ("Unable to parse TargetVPNGatewayStatus from: " <> x)
665665
666−instance ToText TargetVPNGatewayStatus where
667− toText = \case
666+instance ToHttpApiData TargetVPNGatewayStatus where
667+ toQueryParam = \case
668668 Creating -> "CREATING"
669669 Deleting -> "DELETING"
670670 Failed -> "FAILED"
@@ -693,17 +693,17 @@ data SnapshotStatus
693693
694694instance Hashable SnapshotStatus
695695
696−instance FromText SnapshotStatus where
697− fromText = \case
698− "CREATING" -> Just SSCreating
699− "DELETING" -> Just SSDeleting
700− "FAILED" -> Just SSFailed
701− "READY" -> Just SSReady
702− "UPLOADING" -> Just SSUploading
703− _ -> Nothing
704−
705−instance ToText SnapshotStatus where
706− toText = \case
696+instance FromHttpApiData SnapshotStatus where
697+ parseQueryParam = \case
698+ "CREATING" -> Right SSCreating
699+ "DELETING" -> Right SSDeleting
700+ "FAILED" -> Right SSFailed
701+ "READY" -> Right SSReady
702+ "UPLOADING" -> Right SSUploading
703+ x -> Left ("Unable to parse SnapshotStatus from: " <> x)
704+
705+instance ToHttpApiData SnapshotStatus where
706+ toQueryParam = \case
707707 SSCreating -> "CREATING"
708708 SSDeleting -> "DELETING"
709709 SSFailed -> "FAILED"
@@ -753,27 +753,27 @@ data TargetInstancesScopedListWarningCode
753753
754754instance Hashable TargetInstancesScopedListWarningCode
755755
756−instance FromText TargetInstancesScopedListWarningCode where
757− fromText = \case
758− "CLEANUP_FAILED" -> Just TISLWCCleanupFailed
759− "DEPRECATED_RESOURCE_USED" -> Just TISLWCDeprecatedResourceUsed
760− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just TISLWCDiskSizeLargerThanImageSize
761− "INJECTED_KERNELS_DEPRECATED" -> Just TISLWCInjectedKernelsDeprecated
762− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just TISLWCNextHopAddressNotAssigned
763− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just TISLWCNextHopCannotIPForward
764− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just TISLWCNextHopInstanceNotFound
765− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just TISLWCNextHopInstanceNotOnNetwork
766− "NEXT_HOP_NOT_RUNNING" -> Just TISLWCNextHopNotRunning
767− "NOT_CRITICAL_ERROR" -> Just TISLWCNotCriticalError
768− "NO_RESULTS_ON_PAGE" -> Just TISLWCNoResultsOnPage
769− "REQUIRED_TOS_AGREEMENT" -> Just TISLWCRequiredTosAgreement
770− "RESOURCE_NOT_DELETED" -> Just TISLWCResourceNotDeleted
771− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just TISLWCSingleInstancePropertyTemplate
772− "UNREACHABLE" -> Just TISLWCUnreachable
773− _ -> Nothing
774−
775−instance ToText TargetInstancesScopedListWarningCode where
776− toText = \case
756+instance FromHttpApiData TargetInstancesScopedListWarningCode where
757+ parseQueryParam = \case
758+ "CLEANUP_FAILED" -> Right TISLWCCleanupFailed
759+ "DEPRECATED_RESOURCE_USED" -> Right TISLWCDeprecatedResourceUsed
760+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right TISLWCDiskSizeLargerThanImageSize
761+ "INJECTED_KERNELS_DEPRECATED" -> Right TISLWCInjectedKernelsDeprecated
762+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right TISLWCNextHopAddressNotAssigned
763+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right TISLWCNextHopCannotIPForward
764+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right TISLWCNextHopInstanceNotFound
765+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right TISLWCNextHopInstanceNotOnNetwork
766+ "NEXT_HOP_NOT_RUNNING" -> Right TISLWCNextHopNotRunning
767+ "NOT_CRITICAL_ERROR" -> Right TISLWCNotCriticalError
768+ "NO_RESULTS_ON_PAGE" -> Right TISLWCNoResultsOnPage
769+ "REQUIRED_TOS_AGREEMENT" -> Right TISLWCRequiredTosAgreement
770+ "RESOURCE_NOT_DELETED" -> Right TISLWCResourceNotDeleted
771+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right TISLWCSingleInstancePropertyTemplate
772+ "UNREACHABLE" -> Right TISLWCUnreachable
773+ x -> Left ("Unable to parse TargetInstancesScopedListWarningCode from: " <> x)
774+
775+instance ToHttpApiData TargetInstancesScopedListWarningCode where
776+ toQueryParam = \case
777777 TISLWCCleanupFailed -> "CLEANUP_FAILED"
778778 TISLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
779779 TISLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -833,27 +833,27 @@ data RouteWarningsItemCode
833833
834834instance Hashable RouteWarningsItemCode
835835
836−instance FromText RouteWarningsItemCode where
837− fromText = \case
838− "CLEANUP_FAILED" -> Just RWICCleanupFailed
839− "DEPRECATED_RESOURCE_USED" -> Just RWICDeprecatedResourceUsed
840− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just RWICDiskSizeLargerThanImageSize
841− "INJECTED_KERNELS_DEPRECATED" -> Just RWICInjectedKernelsDeprecated
842− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just RWICNextHopAddressNotAssigned
843− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just RWICNextHopCannotIPForward
844− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just RWICNextHopInstanceNotFound
845− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just RWICNextHopInstanceNotOnNetwork
846− "NEXT_HOP_NOT_RUNNING" -> Just RWICNextHopNotRunning
847− "NOT_CRITICAL_ERROR" -> Just RWICNotCriticalError
848− "NO_RESULTS_ON_PAGE" -> Just RWICNoResultsOnPage
849− "REQUIRED_TOS_AGREEMENT" -> Just RWICRequiredTosAgreement
850− "RESOURCE_NOT_DELETED" -> Just RWICResourceNotDeleted
851− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just RWICSingleInstancePropertyTemplate
852− "UNREACHABLE" -> Just RWICUnreachable
853− _ -> Nothing
854−
855−instance ToText RouteWarningsItemCode where
856− toText = \case
836+instance FromHttpApiData RouteWarningsItemCode where
837+ parseQueryParam = \case
838+ "CLEANUP_FAILED" -> Right RWICCleanupFailed
839+ "DEPRECATED_RESOURCE_USED" -> Right RWICDeprecatedResourceUsed
840+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right RWICDiskSizeLargerThanImageSize
841+ "INJECTED_KERNELS_DEPRECATED" -> Right RWICInjectedKernelsDeprecated
842+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right RWICNextHopAddressNotAssigned
843+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right RWICNextHopCannotIPForward
844+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right RWICNextHopInstanceNotFound
845+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right RWICNextHopInstanceNotOnNetwork
846+ "NEXT_HOP_NOT_RUNNING" -> Right RWICNextHopNotRunning
847+ "NOT_CRITICAL_ERROR" -> Right RWICNotCriticalError
848+ "NO_RESULTS_ON_PAGE" -> Right RWICNoResultsOnPage
849+ "REQUIRED_TOS_AGREEMENT" -> Right RWICRequiredTosAgreement
850+ "RESOURCE_NOT_DELETED" -> Right RWICResourceNotDeleted
851+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right RWICSingleInstancePropertyTemplate
852+ "UNREACHABLE" -> Right RWICUnreachable
853+ x -> Left ("Unable to parse RouteWarningsItemCode from: " <> x)
854+
855+instance ToHttpApiData RouteWarningsItemCode where
856+ toQueryParam = \case
857857 RWICCleanupFailed -> "CLEANUP_FAILED"
858858 RWICDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
859859 RWICDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -889,14 +889,14 @@ data SnapshotStorageBytesStatus
889889
890890instance Hashable SnapshotStorageBytesStatus
891891
892−instance FromText SnapshotStorageBytesStatus where
893− fromText = \case
894− "UPDATING" -> Just Updating
895− "UP_TO_DATE" -> Just UpToDate
896− _ -> Nothing
892+instance FromHttpApiData SnapshotStorageBytesStatus where
893+ parseQueryParam = \case
894+ "UPDATING" -> Right Updating
895+ "UP_TO_DATE" -> Right UpToDate
896+ x -> Left ("Unable to parse SnapshotStorageBytesStatus from: " <> x)
897897
898−instance ToText SnapshotStorageBytesStatus where
899− toText = \case
898+instance ToHttpApiData SnapshotStorageBytesStatus where
899+ toQueryParam = \case
900900 Updating -> "UPDATING"
901901 UpToDate -> "UP_TO_DATE"
902902
@@ -943,27 +943,27 @@ data AddressesScopedListWarningCode
943943
944944instance Hashable AddressesScopedListWarningCode
945945
946−instance FromText AddressesScopedListWarningCode where
947− fromText = \case
948− "CLEANUP_FAILED" -> Just ASLWCCleanupFailed
949− "DEPRECATED_RESOURCE_USED" -> Just ASLWCDeprecatedResourceUsed
950− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just ASLWCDiskSizeLargerThanImageSize
951− "INJECTED_KERNELS_DEPRECATED" -> Just ASLWCInjectedKernelsDeprecated
952− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just ASLWCNextHopAddressNotAssigned
953− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just ASLWCNextHopCannotIPForward
954− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just ASLWCNextHopInstanceNotFound
955− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just ASLWCNextHopInstanceNotOnNetwork
956− "NEXT_HOP_NOT_RUNNING" -> Just ASLWCNextHopNotRunning
957− "NOT_CRITICAL_ERROR" -> Just ASLWCNotCriticalError
958− "NO_RESULTS_ON_PAGE" -> Just ASLWCNoResultsOnPage
959− "REQUIRED_TOS_AGREEMENT" -> Just ASLWCRequiredTosAgreement
960− "RESOURCE_NOT_DELETED" -> Just ASLWCResourceNotDeleted
961− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just ASLWCSingleInstancePropertyTemplate
962− "UNREACHABLE" -> Just ASLWCUnreachable
963− _ -> Nothing
964−
965−instance ToText AddressesScopedListWarningCode where
966− toText = \case
946+instance FromHttpApiData AddressesScopedListWarningCode where
947+ parseQueryParam = \case
948+ "CLEANUP_FAILED" -> Right ASLWCCleanupFailed
949+ "DEPRECATED_RESOURCE_USED" -> Right ASLWCDeprecatedResourceUsed
950+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right ASLWCDiskSizeLargerThanImageSize
951+ "INJECTED_KERNELS_DEPRECATED" -> Right ASLWCInjectedKernelsDeprecated
952+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right ASLWCNextHopAddressNotAssigned
953+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right ASLWCNextHopCannotIPForward
954+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right ASLWCNextHopInstanceNotFound
955+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right ASLWCNextHopInstanceNotOnNetwork
956+ "NEXT_HOP_NOT_RUNNING" -> Right ASLWCNextHopNotRunning
957+ "NOT_CRITICAL_ERROR" -> Right ASLWCNotCriticalError
958+ "NO_RESULTS_ON_PAGE" -> Right ASLWCNoResultsOnPage
959+ "REQUIRED_TOS_AGREEMENT" -> Right ASLWCRequiredTosAgreement
960+ "RESOURCE_NOT_DELETED" -> Right ASLWCResourceNotDeleted
961+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right ASLWCSingleInstancePropertyTemplate
962+ "UNREACHABLE" -> Right ASLWCUnreachable
963+ x -> Left ("Unable to parse AddressesScopedListWarningCode from: " <> x)
964+
965+instance ToHttpApiData AddressesScopedListWarningCode where
966+ toQueryParam = \case
967967 ASLWCCleanupFailed -> "CLEANUP_FAILED"
968968 ASLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
969969 ASLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -1001,15 +1001,15 @@ data ImageStatus
10011001
10021002instance Hashable ImageStatus
10031003
1004−instance FromText ImageStatus where
1005− fromText = \case
1006− "FAILED" -> Just ISFailed
1007− "PENDING" -> Just ISPending
1008− "READY" -> Just ISReady
1009− _ -> Nothing
1004+instance FromHttpApiData ImageStatus where
1005+ parseQueryParam = \case
1006+ "FAILED" -> Right ISFailed
1007+ "PENDING" -> Right ISPending
1008+ "READY" -> Right ISReady
1009+ x -> Left ("Unable to parse ImageStatus from: " <> x)
10101010
1011−instance ToText ImageStatus where
1012− toText = \case
1011+instance ToHttpApiData ImageStatus where
1012+ toQueryParam = \case
10131013 ISFailed -> "FAILED"
10141014 ISPending -> "PENDING"
10151015 ISReady -> "READY"
@@ -1030,14 +1030,14 @@ data HealthStatusHealthState
10301030
10311031instance Hashable HealthStatusHealthState
10321032
1033−instance FromText HealthStatusHealthState where
1034− fromText = \case
1035− "HEALTHY" -> Just Healthy
1036− "UNHEALTHY" -> Just Unhealthy
1037− _ -> Nothing
1033+instance FromHttpApiData HealthStatusHealthState where
1034+ parseQueryParam = \case
1035+ "HEALTHY" -> Right Healthy
1036+ "UNHEALTHY" -> Right Unhealthy
1037+ x -> Left ("Unable to parse HealthStatusHealthState from: " <> x)
10381038
1039−instance ToText HealthStatusHealthState where
1040− toText = \case
1039+instance ToHttpApiData HealthStatusHealthState where
1040+ toQueryParam = \case
10411041 Healthy -> "HEALTHY"
10421042 Unhealthy -> "UNHEALTHY"
10431043
@@ -1064,15 +1064,15 @@ data DeprecationStatusState
10641064
10651065instance Hashable DeprecationStatusState
10661066
1067−instance FromText DeprecationStatusState where
1068− fromText = \case
1069− "DELETED" -> Just Deleted
1070− "DEPRECATED" -> Just Deprecated
1071− "OBSOLETE" -> Just Obsolete
1072− _ -> Nothing
1067+instance FromHttpApiData DeprecationStatusState where
1068+ parseQueryParam = \case
1069+ "DELETED" -> Right Deleted
1070+ "DEPRECATED" -> Right Deprecated
1071+ "OBSOLETE" -> Right Obsolete
1072+ x -> Left ("Unable to parse DeprecationStatusState from: " <> x)
10731073
1074−instance ToText DeprecationStatusState where
1075− toText = \case
1074+instance ToHttpApiData DeprecationStatusState where
1075+ toQueryParam = \case
10761076 Deleted -> "DELETED"
10771077 Deprecated -> "DEPRECATED"
10781078 Obsolete -> "OBSOLETE"
@@ -1120,19 +1120,19 @@ data ManagedInstanceCurrentAction
11201120
11211121instance Hashable ManagedInstanceCurrentAction
11221122
1123−instance FromText ManagedInstanceCurrentAction where
1124− fromText = \case
1125− "ABANDONING" -> Just MICAAbandoning
1126− "CREATING" -> Just MICACreating
1127− "DELETING" -> Just MICADeleting
1128− "NONE" -> Just MICANone
1129− "RECREATING" -> Just MICARecreating
1130− "REFRESHING" -> Just MICARefreshing
1131− "RESTARTING" -> Just MICARestarting
1132− _ -> Nothing
1133−
1134−instance ToText ManagedInstanceCurrentAction where
1135− toText = \case
1123+instance FromHttpApiData ManagedInstanceCurrentAction where
1124+ parseQueryParam = \case
1125+ "ABANDONING" -> Right MICAAbandoning
1126+ "CREATING" -> Right MICACreating
1127+ "DELETING" -> Right MICADeleting
1128+ "NONE" -> Right MICANone
1129+ "RECREATING" -> Right MICARecreating
1130+ "REFRESHING" -> Right MICARefreshing
1131+ "RESTARTING" -> Right MICARestarting
1132+ x -> Left ("Unable to parse ManagedInstanceCurrentAction from: " <> x)
1133+
1134+instance ToHttpApiData ManagedInstanceCurrentAction where
1135+ toQueryParam = \case
11361136 MICAAbandoning -> "ABANDONING"
11371137 MICACreating -> "CREATING"
11381138 MICADeleting -> "DELETING"
@@ -1156,13 +1156,13 @@ data TargetInstanceNATPolicy
11561156
11571157instance Hashable TargetInstanceNATPolicy
11581158
1159−instance FromText TargetInstanceNATPolicy where
1160− fromText = \case
1161− "NO_NAT" -> Just NoNAT
1162− _ -> Nothing
1159+instance FromHttpApiData TargetInstanceNATPolicy where
1160+ parseQueryParam = \case
1161+ "NO_NAT" -> Right NoNAT
1162+ x -> Left ("Unable to parse TargetInstanceNATPolicy from: " <> x)
11631163
1164−instance ToText TargetInstanceNATPolicy where
1165− toText = \case
1164+instance ToHttpApiData TargetInstanceNATPolicy where
1165+ toQueryParam = \case
11661166 NoNAT -> "NO_NAT"
11671167
11681168instance FromJSON TargetInstanceNATPolicy where
@@ -1180,13 +1180,13 @@ data AccessConfigType
11801180
11811181instance Hashable AccessConfigType
11821182
1183−instance FromText AccessConfigType where
1184− fromText = \case
1185− "ONE_TO_ONE_NAT" -> Just OneToOneNAT
1186− _ -> Nothing
1183+instance FromHttpApiData AccessConfigType where
1184+ parseQueryParam = \case
1185+ "ONE_TO_ONE_NAT" -> Right OneToOneNAT
1186+ x -> Left ("Unable to parse AccessConfigType from: " <> x)
11871187
1188−instance ToText AccessConfigType where
1189− toText = \case
1188+instance ToHttpApiData AccessConfigType where
1189+ toQueryParam = \case
11901190 OneToOneNAT -> "ONE_TO_ONE_NAT"
11911191
11921192instance FromJSON AccessConfigType where
@@ -1208,15 +1208,15 @@ data OperationStatus
12081208
12091209instance Hashable OperationStatus
12101210
1211−instance FromText OperationStatus where
1212− fromText = \case
1213− "DONE" -> Just Done
1214− "PENDING" -> Just Pending
1215− "RUNNING" -> Just Running
1216− _ -> Nothing
1211+instance FromHttpApiData OperationStatus where
1212+ parseQueryParam = \case
1213+ "DONE" -> Right Done
1214+ "PENDING" -> Right Pending
1215+ "RUNNING" -> Right Running
1216+ x -> Left ("Unable to parse OperationStatus from: " <> x)
12171217
1218−instance ToText OperationStatus where
1219− toText = \case
1218+instance ToHttpApiData OperationStatus where
1219+ toQueryParam = \case
12201220 Done -> "DONE"
12211221 Pending -> "PENDING"
12221222 Running -> "RUNNING"
@@ -1264,27 +1264,27 @@ data TargetVPNGatewaysScopedListWarningCode
12641264
12651265instance Hashable TargetVPNGatewaysScopedListWarningCode
12661266
1267−instance FromText TargetVPNGatewaysScopedListWarningCode where
1268− fromText = \case
1269− "CLEANUP_FAILED" -> Just TVGSLWCCleanupFailed
1270− "DEPRECATED_RESOURCE_USED" -> Just TVGSLWCDeprecatedResourceUsed
1271− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just TVGSLWCDiskSizeLargerThanImageSize
1272− "INJECTED_KERNELS_DEPRECATED" -> Just TVGSLWCInjectedKernelsDeprecated
1273− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just TVGSLWCNextHopAddressNotAssigned
1274− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just TVGSLWCNextHopCannotIPForward
1275− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just TVGSLWCNextHopInstanceNotFound
1276− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just TVGSLWCNextHopInstanceNotOnNetwork
1277− "NEXT_HOP_NOT_RUNNING" -> Just TVGSLWCNextHopNotRunning
1278− "NOT_CRITICAL_ERROR" -> Just TVGSLWCNotCriticalError
1279− "NO_RESULTS_ON_PAGE" -> Just TVGSLWCNoResultsOnPage
1280− "REQUIRED_TOS_AGREEMENT" -> Just TVGSLWCRequiredTosAgreement
1281− "RESOURCE_NOT_DELETED" -> Just TVGSLWCResourceNotDeleted
1282− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just TVGSLWCSingleInstancePropertyTemplate
1283− "UNREACHABLE" -> Just TVGSLWCUnreachable
1284− _ -> Nothing
1285−
1286−instance ToText TargetVPNGatewaysScopedListWarningCode where
1287− toText = \case
1267+instance FromHttpApiData TargetVPNGatewaysScopedListWarningCode where
1268+ parseQueryParam = \case
1269+ "CLEANUP_FAILED" -> Right TVGSLWCCleanupFailed
1270+ "DEPRECATED_RESOURCE_USED" -> Right TVGSLWCDeprecatedResourceUsed
1271+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right TVGSLWCDiskSizeLargerThanImageSize
1272+ "INJECTED_KERNELS_DEPRECATED" -> Right TVGSLWCInjectedKernelsDeprecated
1273+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right TVGSLWCNextHopAddressNotAssigned
1274+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right TVGSLWCNextHopCannotIPForward
1275+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right TVGSLWCNextHopInstanceNotFound
1276+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right TVGSLWCNextHopInstanceNotOnNetwork
1277+ "NEXT_HOP_NOT_RUNNING" -> Right TVGSLWCNextHopNotRunning
1278+ "NOT_CRITICAL_ERROR" -> Right TVGSLWCNotCriticalError
1279+ "NO_RESULTS_ON_PAGE" -> Right TVGSLWCNoResultsOnPage
1280+ "REQUIRED_TOS_AGREEMENT" -> Right TVGSLWCRequiredTosAgreement
1281+ "RESOURCE_NOT_DELETED" -> Right TVGSLWCResourceNotDeleted
1282+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right TVGSLWCSingleInstancePropertyTemplate
1283+ "UNREACHABLE" -> Right TVGSLWCUnreachable
1284+ x -> Left ("Unable to parse TargetVPNGatewaysScopedListWarningCode from: " <> x)
1285+
1286+instance ToHttpApiData TargetVPNGatewaysScopedListWarningCode where
1287+ toQueryParam = \case
12881288 TVGSLWCCleanupFailed -> "CLEANUP_FAILED"
12891289 TVGSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
12901290 TVGSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -1322,16 +1322,16 @@ data DiskStatus
13221322
13231323instance Hashable DiskStatus
13241324
1325−instance FromText DiskStatus where
1326− fromText = \case
1327− "CREATING" -> Just DSCreating
1328− "FAILED" -> Just DSFailed
1329− "READY" -> Just DSReady
1330− "RESTORING" -> Just DSRestoring
1331− _ -> Nothing
1325+instance FromHttpApiData DiskStatus where
1326+ parseQueryParam = \case
1327+ "CREATING" -> Right DSCreating
1328+ "FAILED" -> Right DSFailed
1329+ "READY" -> Right DSReady
1330+ "RESTORING" -> Right DSRestoring
1331+ x -> Left ("Unable to parse DiskStatus from: " <> x)
13321332
1333−instance ToText DiskStatus where
1334− toText = \case
1333+instance ToHttpApiData DiskStatus where
1334+ toQueryParam = \case
13351335 DSCreating -> "CREATING"
13361336 DSFailed -> "FAILED"
13371337 DSReady -> "READY"
@@ -1366,20 +1366,20 @@ data ManagedInstanceInstanceStatus
13661366
13671367instance Hashable ManagedInstanceInstanceStatus
13681368
1369−instance FromText ManagedInstanceInstanceStatus where
1370− fromText = \case
1371− "PROVISIONING" -> Just MIISProvisioning
1372− "RUNNING" -> Just MIISRunning
1373− "STAGING" -> Just MIISStaging
1374− "STOPPED" -> Just MIISStopped
1375− "STOPPING" -> Just MIISStopping
1376− "SUSPENDED" -> Just MIISSuspended
1377− "SUSPENDING" -> Just MIISSuspending
1378− "TERMINATED" -> Just MIISTerminated
1379− _ -> Nothing
1380−
1381−instance ToText ManagedInstanceInstanceStatus where
1382− toText = \case
1369+instance FromHttpApiData ManagedInstanceInstanceStatus where
1370+ parseQueryParam = \case
1371+ "PROVISIONING" -> Right MIISProvisioning
1372+ "RUNNING" -> Right MIISRunning
1373+ "STAGING" -> Right MIISStaging
1374+ "STOPPED" -> Right MIISStopped
1375+ "STOPPING" -> Right MIISStopping
1376+ "SUSPENDED" -> Right MIISSuspended
1377+ "SUSPENDING" -> Right MIISSuspending
1378+ "TERMINATED" -> Right MIISTerminated
1379+ x -> Left ("Unable to parse ManagedInstanceInstanceStatus from: " <> x)
1380+
1381+instance ToHttpApiData ManagedInstanceInstanceStatus where
1382+ toQueryParam = \case
13831383 MIISProvisioning -> "PROVISIONING"
13841384 MIISRunning -> "RUNNING"
13851385 MIISStaging -> "STAGING"
@@ -1406,14 +1406,14 @@ data AttachedDiskMode
14061406
14071407instance Hashable AttachedDiskMode
14081408
1409−instance FromText AttachedDiskMode where
1410− fromText = \case
1411− "READ_ONLY" -> Just ReadOnly
1412− "READ_WRITE" -> Just ReadWrite
1413− _ -> Nothing
1409+instance FromHttpApiData AttachedDiskMode where
1410+ parseQueryParam = \case
1411+ "READ_ONLY" -> Right ReadOnly
1412+ "READ_WRITE" -> Right ReadWrite
1413+ x -> Left ("Unable to parse AttachedDiskMode from: " <> x)
14141414
1415−instance ToText AttachedDiskMode where
1416− toText = \case
1415+instance ToHttpApiData AttachedDiskMode where
1416+ toQueryParam = \case
14171417 ReadOnly -> "READ_ONLY"
14181418 ReadWrite -> "READ_WRITE"
14191419
@@ -1433,14 +1433,14 @@ data RegionStatus
14331433
14341434instance Hashable RegionStatus
14351435
1436−instance FromText RegionStatus where
1437− fromText = \case
1438− "DOWN" -> Just Down
1439− "UP" -> Just UP
1440− _ -> Nothing
1436+instance FromHttpApiData RegionStatus where
1437+ parseQueryParam = \case
1438+ "DOWN" -> Right Down
1439+ "UP" -> Right UP
1440+ x -> Left ("Unable to parse RegionStatus from: " <> x)
14411441
1442−instance ToText RegionStatus where
1443− toText = \case
1442+instance ToHttpApiData RegionStatus where
1443+ toQueryParam = \case
14441444 Down -> "DOWN"
14451445 UP -> "UP"
14461446
@@ -1480,24 +1480,24 @@ data VPNTunnelStatus
14801480
14811481instance Hashable VPNTunnelStatus
14821482
1483−instance FromText VPNTunnelStatus where
1484− fromText = \case
1485− "ALLOCATING_RESOURCES" -> Just VTSAllocatingResources
1486− "AUTHORIZATION_ERROR" -> Just VTSAuthorizationError
1487− "DEPROVISIONING" -> Just VTSDeprovisioning
1488− "ESTABLISHED" -> Just VTSEstablished
1489− "FAILED" -> Just VTSFailed
1490− "FIRST_HANDSHAKE" -> Just VTSFirstHandshake
1491− "NEGOTIATION_FAILURE" -> Just VTSNegotiationFailure
1492− "NETWORK_ERROR" -> Just VTSNetworkError
1493− "NO_INCOMING_PACKETS" -> Just VTSNoIncomingPackets
1494− "PROVISIONING" -> Just VTSProvisioning
1495− "REJECTED" -> Just VTSRejected
1496− "WAITING_FOR_FULL_CONFIG" -> Just VTSWaitingForFullConfig
1497− _ -> Nothing
1498−
1499−instance ToText VPNTunnelStatus where
1500− toText = \case
1483+instance FromHttpApiData VPNTunnelStatus where
1484+ parseQueryParam = \case
1485+ "ALLOCATING_RESOURCES" -> Right VTSAllocatingResources
1486+ "AUTHORIZATION_ERROR" -> Right VTSAuthorizationError
1487+ "DEPROVISIONING" -> Right VTSDeprovisioning
1488+ "ESTABLISHED" -> Right VTSEstablished
1489+ "FAILED" -> Right VTSFailed
1490+ "FIRST_HANDSHAKE" -> Right VTSFirstHandshake
1491+ "NEGOTIATION_FAILURE" -> Right VTSNegotiationFailure
1492+ "NETWORK_ERROR" -> Right VTSNetworkError
1493+ "NO_INCOMING_PACKETS" -> Right VTSNoIncomingPackets
1494+ "PROVISIONING" -> Right VTSProvisioning
1495+ "REJECTED" -> Right VTSRejected
1496+ "WAITING_FOR_FULL_CONFIG" -> Right VTSWaitingForFullConfig
1497+ x -> Left ("Unable to parse VPNTunnelStatus from: " <> x)
1498+
1499+instance ToHttpApiData VPNTunnelStatus where
1500+ toQueryParam = \case
15011501 VTSAllocatingResources -> "ALLOCATING_RESOURCES"
15021502 VTSAuthorizationError -> "AUTHORIZATION_ERROR"
15031503 VTSDeprovisioning -> "DEPROVISIONING"
@@ -1529,14 +1529,14 @@ data BackendBalancingMode
15291529
15301530instance Hashable BackendBalancingMode
15311531
1532−instance FromText BackendBalancingMode where
1533− fromText = \case
1534− "RATE" -> Just Rate
1535− "UTILIZATION" -> Just Utilization
1536− _ -> Nothing
1532+instance FromHttpApiData BackendBalancingMode where
1533+ parseQueryParam = \case
1534+ "RATE" -> Right Rate
1535+ "UTILIZATION" -> Right Utilization
1536+ x -> Left ("Unable to parse BackendBalancingMode from: " <> x)
15371537
1538−instance ToText BackendBalancingMode where
1539− toText = \case
1538+instance ToHttpApiData BackendBalancingMode where
1539+ toQueryParam = \case
15401540 Rate -> "RATE"
15411541 Utilization -> "UTILIZATION"
15421542
@@ -1563,17 +1563,17 @@ data ForwardingRuleIPProtocol
15631563
15641564instance Hashable ForwardingRuleIPProtocol
15651565
1566−instance FromText ForwardingRuleIPProtocol where
1567− fromText = \case
1568− "AH" -> Just AH
1569− "ESP" -> Just Esp
1570− "SCTP" -> Just Sctp
1571− "TCP" -> Just TCP
1572− "UDP" -> Just Udp
1573− _ -> Nothing
1574−
1575−instance ToText ForwardingRuleIPProtocol where
1576− toText = \case
1566+instance FromHttpApiData ForwardingRuleIPProtocol where
1567+ parseQueryParam = \case
1568+ "AH" -> Right AH
1569+ "ESP" -> Right Esp
1570+ "SCTP" -> Right Sctp
1571+ "TCP" -> Right TCP
1572+ "UDP" -> Right Udp
1573+ x -> Left ("Unable to parse ForwardingRuleIPProtocol from: " <> x)
1574+
1575+instance ToHttpApiData ForwardingRuleIPProtocol where
1576+ toQueryParam = \case
15771577 AH -> "AH"
15781578 Esp -> "ESP"
15791579 Sctp -> "SCTP"
@@ -1599,14 +1599,14 @@ data AddressStatus
15991599
16001600instance Hashable AddressStatus
16011601
1602−instance FromText AddressStatus where
1603− fromText = \case
1604− "IN_USE" -> Just InUse
1605− "RESERVED" -> Just Reserved
1606− _ -> Nothing
1602+instance FromHttpApiData AddressStatus where
1603+ parseQueryParam = \case
1604+ "IN_USE" -> Right InUse
1605+ "RESERVED" -> Right Reserved
1606+ x -> Left ("Unable to parse AddressStatus from: " <> x)
16071607
1608−instance ToText AddressStatus where
1609− toText = \case
1608+instance ToHttpApiData AddressStatus where
1609+ toQueryParam = \case
16101610 InUse -> "IN_USE"
16111611 Reserved -> "RESERVED"
16121612
@@ -1628,14 +1628,14 @@ data InstanceGroupsListInstancesRequestInstanceState
16281628
16291629instance Hashable InstanceGroupsListInstancesRequestInstanceState
16301630
1631−instance FromText InstanceGroupsListInstancesRequestInstanceState where
1632− fromText = \case
1633− "ALL" -> Just IGLIRISAll
1634− "RUNNING" -> Just IGLIRISRunning
1635− _ -> Nothing
1631+instance FromHttpApiData InstanceGroupsListInstancesRequestInstanceState where
1632+ parseQueryParam = \case
1633+ "ALL" -> Right IGLIRISAll
1634+ "RUNNING" -> Right IGLIRISRunning
1635+ x -> Left ("Unable to parse InstanceGroupsListInstancesRequestInstanceState from: " <> x)
16361636
1637−instance ToText InstanceGroupsListInstancesRequestInstanceState where
1638− toText = \case
1637+instance ToHttpApiData InstanceGroupsListInstancesRequestInstanceState where
1638+ toQueryParam = \case
16391639 IGLIRISAll -> "ALL"
16401640 IGLIRISRunning -> "RUNNING"
16411641
@@ -1660,14 +1660,14 @@ data AttachedDiskInterface
16601660
16611661instance Hashable AttachedDiskInterface
16621662
1663−instance FromText AttachedDiskInterface where
1664− fromText = \case
1665− "NVME" -> Just Nvme
1666− "SCSI" -> Just Scsi
1667− _ -> Nothing
1663+instance FromHttpApiData AttachedDiskInterface where
1664+ parseQueryParam = \case
1665+ "NVME" -> Right Nvme
1666+ "SCSI" -> Right Scsi
1667+ x -> Left ("Unable to parse AttachedDiskInterface from: " <> x)
16681668
1669−instance ToText AttachedDiskInterface where
1670− toText = \case
1669+instance ToHttpApiData AttachedDiskInterface where
1670+ toQueryParam = \case
16711671 Nvme -> "NVME"
16721672 Scsi -> "SCSI"
16731673
@@ -1687,14 +1687,14 @@ data ZoneStatus
16871687
16881688instance Hashable ZoneStatus
16891689
1690−instance FromText ZoneStatus where
1691− fromText = \case
1692− "DOWN" -> Just ZSDown
1693− "UP" -> Just ZSUP
1694− _ -> Nothing
1690+instance FromHttpApiData ZoneStatus where
1691+ parseQueryParam = \case
1692+ "DOWN" -> Right ZSDown
1693+ "UP" -> Right ZSUP
1694+ x -> Left ("Unable to parse ZoneStatus from: " <> x)
16951695
1696−instance ToText ZoneStatus where
1697− toText = \case
1696+instance ToHttpApiData ZoneStatus where
1697+ toQueryParam = \case
16981698 ZSDown -> "DOWN"
16991699 ZSUP -> "UP"
17001700
@@ -1741,27 +1741,27 @@ data SubnetworksScopedListWarningCode
17411741
17421742instance Hashable SubnetworksScopedListWarningCode
17431743
1744−instance FromText SubnetworksScopedListWarningCode where
1745− fromText = \case
1746− "CLEANUP_FAILED" -> Just SSLWCCleanupFailed
1747− "DEPRECATED_RESOURCE_USED" -> Just SSLWCDeprecatedResourceUsed
1748− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just SSLWCDiskSizeLargerThanImageSize
1749− "INJECTED_KERNELS_DEPRECATED" -> Just SSLWCInjectedKernelsDeprecated
1750− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just SSLWCNextHopAddressNotAssigned
1751− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just SSLWCNextHopCannotIPForward
1752− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just SSLWCNextHopInstanceNotFound
1753− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just SSLWCNextHopInstanceNotOnNetwork
1754− "NEXT_HOP_NOT_RUNNING" -> Just SSLWCNextHopNotRunning
1755− "NOT_CRITICAL_ERROR" -> Just SSLWCNotCriticalError
1756− "NO_RESULTS_ON_PAGE" -> Just SSLWCNoResultsOnPage
1757− "REQUIRED_TOS_AGREEMENT" -> Just SSLWCRequiredTosAgreement
1758− "RESOURCE_NOT_DELETED" -> Just SSLWCResourceNotDeleted
1759− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just SSLWCSingleInstancePropertyTemplate
1760− "UNREACHABLE" -> Just SSLWCUnreachable
1761− _ -> Nothing
1762−
1763−instance ToText SubnetworksScopedListWarningCode where
1764− toText = \case
1744+instance FromHttpApiData SubnetworksScopedListWarningCode where
1745+ parseQueryParam = \case
1746+ "CLEANUP_FAILED" -> Right SSLWCCleanupFailed
1747+ "DEPRECATED_RESOURCE_USED" -> Right SSLWCDeprecatedResourceUsed
1748+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right SSLWCDiskSizeLargerThanImageSize
1749+ "INJECTED_KERNELS_DEPRECATED" -> Right SSLWCInjectedKernelsDeprecated
1750+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right SSLWCNextHopAddressNotAssigned
1751+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right SSLWCNextHopCannotIPForward
1752+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right SSLWCNextHopInstanceNotFound
1753+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right SSLWCNextHopInstanceNotOnNetwork
1754+ "NEXT_HOP_NOT_RUNNING" -> Right SSLWCNextHopNotRunning
1755+ "NOT_CRITICAL_ERROR" -> Right SSLWCNotCriticalError
1756+ "NO_RESULTS_ON_PAGE" -> Right SSLWCNoResultsOnPage
1757+ "REQUIRED_TOS_AGREEMENT" -> Right SSLWCRequiredTosAgreement
1758+ "RESOURCE_NOT_DELETED" -> Right SSLWCResourceNotDeleted
1759+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right SSLWCSingleInstancePropertyTemplate
1760+ "UNREACHABLE" -> Right SSLWCUnreachable
1761+ x -> Left ("Unable to parse SubnetworksScopedListWarningCode from: " <> x)
1762+
1763+instance ToHttpApiData SubnetworksScopedListWarningCode where
1764+ toQueryParam = \case
17651765 SSLWCCleanupFailed -> "CLEANUP_FAILED"
17661766 SSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
17671767 SSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -1846,40 +1846,40 @@ data QuotaMetric
18461846
18471847instance Hashable QuotaMetric
18481848
1849−instance FromText QuotaMetric where
1850− fromText = \case
1851− "AUTOSCALERS" -> Just Autoscalers
1852− "BACKEND_SERVICES" -> Just BackendServices
1853− "CPUS" -> Just CPUs
1854− "DISKS_TOTAL_GB" -> Just DisksTotalGb
1855− "FIREWALLS" -> Just Firewalls
1856− "FORWARDING_RULES" -> Just ForwardingRules
1857− "HEALTH_CHECKS" -> Just HealthChecks
1858− "IMAGES" -> Just Images
1859− "INSTANCES" -> Just Instances
1860− "INSTANCE_GROUPS" -> Just InstanceGroups
1861− "INSTANCE_GROUP_MANAGERS" -> Just InstanceGroupManagers
1862− "INSTANCE_TEMPLATES" -> Just InstanceTemplates
1863− "IN_USE_ADDRESSES" -> Just InUseAddresses
1864− "LOCAL_SSD_TOTAL_GB" -> Just LocalSsdTotalGb
1865− "NETWORKS" -> Just Networks
1866− "ROUTES" -> Just Routes
1867− "SNAPSHOTS" -> Just Snapshots
1868− "SSD_TOTAL_GB" -> Just SsdTotalGb
1869− "SSL_CERTIFICATES" -> Just SSLCertificates
1870− "STATIC_ADDRESSES" -> Just StaticAddresses
1871− "SUBNETWORKS" -> Just Subnetworks
1872− "TARGET_HTTPS_PROXIES" -> Just TargetHTTPSProxies
1873− "TARGET_HTTP_PROXIES" -> Just TargetHTTPProxies
1874− "TARGET_INSTANCES" -> Just TargetInstances
1875− "TARGET_POOLS" -> Just TargetPools
1876− "TARGET_VPN_GATEWAYS" -> Just TargetVPNGateways
1877− "URL_MAPS" -> Just URLMaps
1878− "VPN_TUNNELS" -> Just VPNTunnels
1879− _ -> Nothing
1880−
1881−instance ToText QuotaMetric where
1882− toText = \case
1849+instance FromHttpApiData QuotaMetric where
1850+ parseQueryParam = \case
1851+ "AUTOSCALERS" -> Right Autoscalers
1852+ "BACKEND_SERVICES" -> Right BackendServices
1853+ "CPUS" -> Right CPUs
1854+ "DISKS_TOTAL_GB" -> Right DisksTotalGb
1855+ "FIREWALLS" -> Right Firewalls
1856+ "FORWARDING_RULES" -> Right ForwardingRules
1857+ "HEALTH_CHECKS" -> Right HealthChecks
1858+ "IMAGES" -> Right Images
1859+ "INSTANCES" -> Right Instances
1860+ "INSTANCE_GROUPS" -> Right InstanceGroups
1861+ "INSTANCE_GROUP_MANAGERS" -> Right InstanceGroupManagers
1862+ "INSTANCE_TEMPLATES" -> Right InstanceTemplates
1863+ "IN_USE_ADDRESSES" -> Right InUseAddresses
1864+ "LOCAL_SSD_TOTAL_GB" -> Right LocalSsdTotalGb
1865+ "NETWORKS" -> Right Networks
1866+ "ROUTES" -> Right Routes
1867+ "SNAPSHOTS" -> Right Snapshots
1868+ "SSD_TOTAL_GB" -> Right SsdTotalGb
1869+ "SSL_CERTIFICATES" -> Right SSLCertificates
1870+ "STATIC_ADDRESSES" -> Right StaticAddresses
1871+ "SUBNETWORKS" -> Right Subnetworks
1872+ "TARGET_HTTPS_PROXIES" -> Right TargetHTTPSProxies
1873+ "TARGET_HTTP_PROXIES" -> Right TargetHTTPProxies
1874+ "TARGET_INSTANCES" -> Right TargetInstances
1875+ "TARGET_POOLS" -> Right TargetPools
1876+ "TARGET_VPN_GATEWAYS" -> Right TargetVPNGateways
1877+ "URL_MAPS" -> Right URLMaps
1878+ "VPN_TUNNELS" -> Right VPNTunnels
1879+ x -> Left ("Unable to parse QuotaMetric from: " <> x)
1880+
1881+instance ToHttpApiData QuotaMetric where
1882+ toQueryParam = \case
18831883 Autoscalers -> "AUTOSCALERS"
18841884 BackendServices -> "BACKEND_SERVICES"
18851885 CPUs -> "CPUS"
@@ -1938,20 +1938,20 @@ data InstanceStatus
19381938
19391939instance Hashable InstanceStatus
19401940
1941−instance FromText InstanceStatus where
1942− fromText = \case
1943− "PROVISIONING" -> Just ISProvisioning
1944− "RUNNING" -> Just ISRunning
1945− "STAGING" -> Just ISStaging
1946− "STOPPED" -> Just ISStopped
1947− "STOPPING" -> Just ISStopping
1948− "SUSPENDED" -> Just ISSuspended
1949− "SUSPENDING" -> Just ISSuspending
1950− "TERMINATED" -> Just ISTerminated
1951− _ -> Nothing
1952−
1953−instance ToText InstanceStatus where
1954− toText = \case
1941+instance FromHttpApiData InstanceStatus where
1942+ parseQueryParam = \case
1943+ "PROVISIONING" -> Right ISProvisioning
1944+ "RUNNING" -> Right ISRunning
1945+ "STAGING" -> Right ISStaging
1946+ "STOPPED" -> Right ISStopped
1947+ "STOPPING" -> Right ISStopping
1948+ "SUSPENDED" -> Right ISSuspended
1949+ "SUSPENDING" -> Right ISSuspending
1950+ "TERMINATED" -> Right ISTerminated
1951+ x -> Left ("Unable to parse InstanceStatus from: " <> x)
1952+
1953+instance ToHttpApiData InstanceStatus where
1954+ toQueryParam = \case
19551955 ISProvisioning -> "PROVISIONING"
19561956 ISRunning -> "RUNNING"
19571957 ISStaging -> "STAGING"
@@ -2004,27 +2004,27 @@ data MachineTypesScopedListWarningCode
20042004
20052005instance Hashable MachineTypesScopedListWarningCode
20062006
2007−instance FromText MachineTypesScopedListWarningCode where
2008− fromText = \case
2009− "CLEANUP_FAILED" -> Just MTSLWCCleanupFailed
2010− "DEPRECATED_RESOURCE_USED" -> Just MTSLWCDeprecatedResourceUsed
2011− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just MTSLWCDiskSizeLargerThanImageSize
2012− "INJECTED_KERNELS_DEPRECATED" -> Just MTSLWCInjectedKernelsDeprecated
2013− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just MTSLWCNextHopAddressNotAssigned
2014− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just MTSLWCNextHopCannotIPForward
2015− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just MTSLWCNextHopInstanceNotFound
2016− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just MTSLWCNextHopInstanceNotOnNetwork
2017− "NEXT_HOP_NOT_RUNNING" -> Just MTSLWCNextHopNotRunning
2018− "NOT_CRITICAL_ERROR" -> Just MTSLWCNotCriticalError
2019− "NO_RESULTS_ON_PAGE" -> Just MTSLWCNoResultsOnPage
2020− "REQUIRED_TOS_AGREEMENT" -> Just MTSLWCRequiredTosAgreement
2021− "RESOURCE_NOT_DELETED" -> Just MTSLWCResourceNotDeleted
2022− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just MTSLWCSingleInstancePropertyTemplate
2023− "UNREACHABLE" -> Just MTSLWCUnreachable
2024− _ -> Nothing
2025−
2026−instance ToText MachineTypesScopedListWarningCode where
2027− toText = \case
2007+instance FromHttpApiData MachineTypesScopedListWarningCode where
2008+ parseQueryParam = \case
2009+ "CLEANUP_FAILED" -> Right MTSLWCCleanupFailed
2010+ "DEPRECATED_RESOURCE_USED" -> Right MTSLWCDeprecatedResourceUsed
2011+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right MTSLWCDiskSizeLargerThanImageSize
2012+ "INJECTED_KERNELS_DEPRECATED" -> Right MTSLWCInjectedKernelsDeprecated
2013+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right MTSLWCNextHopAddressNotAssigned
2014+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right MTSLWCNextHopCannotIPForward
2015+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right MTSLWCNextHopInstanceNotFound
2016+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right MTSLWCNextHopInstanceNotOnNetwork
2017+ "NEXT_HOP_NOT_RUNNING" -> Right MTSLWCNextHopNotRunning
2018+ "NOT_CRITICAL_ERROR" -> Right MTSLWCNotCriticalError
2019+ "NO_RESULTS_ON_PAGE" -> Right MTSLWCNoResultsOnPage
2020+ "REQUIRED_TOS_AGREEMENT" -> Right MTSLWCRequiredTosAgreement
2021+ "RESOURCE_NOT_DELETED" -> Right MTSLWCResourceNotDeleted
2022+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right MTSLWCSingleInstancePropertyTemplate
2023+ "UNREACHABLE" -> Right MTSLWCUnreachable
2024+ x -> Left ("Unable to parse MachineTypesScopedListWarningCode from: " <> x)
2025+
2026+instance ToHttpApiData MachineTypesScopedListWarningCode where
2027+ toQueryParam = \case
20282028 MTSLWCCleanupFailed -> "CLEANUP_FAILED"
20292029 MTSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
20302030 MTSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -2084,27 +2084,27 @@ data DiskTypesScopedListWarningCode
20842084
20852085instance Hashable DiskTypesScopedListWarningCode
20862086
2087−instance FromText DiskTypesScopedListWarningCode where
2088− fromText = \case
2089− "CLEANUP_FAILED" -> Just DTSLWCCleanupFailed
2090− "DEPRECATED_RESOURCE_USED" -> Just DTSLWCDeprecatedResourceUsed
2091− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just DTSLWCDiskSizeLargerThanImageSize
2092− "INJECTED_KERNELS_DEPRECATED" -> Just DTSLWCInjectedKernelsDeprecated
2093− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just DTSLWCNextHopAddressNotAssigned
2094− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just DTSLWCNextHopCannotIPForward
2095− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just DTSLWCNextHopInstanceNotFound
2096− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just DTSLWCNextHopInstanceNotOnNetwork
2097− "NEXT_HOP_NOT_RUNNING" -> Just DTSLWCNextHopNotRunning
2098− "NOT_CRITICAL_ERROR" -> Just DTSLWCNotCriticalError
2099− "NO_RESULTS_ON_PAGE" -> Just DTSLWCNoResultsOnPage
2100− "REQUIRED_TOS_AGREEMENT" -> Just DTSLWCRequiredTosAgreement
2101− "RESOURCE_NOT_DELETED" -> Just DTSLWCResourceNotDeleted
2102− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just DTSLWCSingleInstancePropertyTemplate
2103− "UNREACHABLE" -> Just DTSLWCUnreachable
2104− _ -> Nothing
2105−
2106−instance ToText DiskTypesScopedListWarningCode where
2107− toText = \case
2087+instance FromHttpApiData DiskTypesScopedListWarningCode where
2088+ parseQueryParam = \case
2089+ "CLEANUP_FAILED" -> Right DTSLWCCleanupFailed
2090+ "DEPRECATED_RESOURCE_USED" -> Right DTSLWCDeprecatedResourceUsed
2091+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right DTSLWCDiskSizeLargerThanImageSize
2092+ "INJECTED_KERNELS_DEPRECATED" -> Right DTSLWCInjectedKernelsDeprecated
2093+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right DTSLWCNextHopAddressNotAssigned
2094+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right DTSLWCNextHopCannotIPForward
2095+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right DTSLWCNextHopInstanceNotFound
2096+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right DTSLWCNextHopInstanceNotOnNetwork
2097+ "NEXT_HOP_NOT_RUNNING" -> Right DTSLWCNextHopNotRunning
2098+ "NOT_CRITICAL_ERROR" -> Right DTSLWCNotCriticalError
2099+ "NO_RESULTS_ON_PAGE" -> Right DTSLWCNoResultsOnPage
2100+ "REQUIRED_TOS_AGREEMENT" -> Right DTSLWCRequiredTosAgreement
2101+ "RESOURCE_NOT_DELETED" -> Right DTSLWCResourceNotDeleted
2102+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right DTSLWCSingleInstancePropertyTemplate
2103+ "UNREACHABLE" -> Right DTSLWCUnreachable
2104+ x -> Left ("Unable to parse DiskTypesScopedListWarningCode from: " <> x)
2105+
2106+instance ToHttpApiData DiskTypesScopedListWarningCode where
2107+ toQueryParam = \case
21082108 DTSLWCCleanupFailed -> "CLEANUP_FAILED"
21092109 DTSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
21102110 DTSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -2164,27 +2164,27 @@ data AutoscalersScopedListWarningCode
21642164
21652165instance Hashable AutoscalersScopedListWarningCode
21662166
2167−instance FromText AutoscalersScopedListWarningCode where
2168− fromText = \case
2169− "CLEANUP_FAILED" -> Just ACleanupFailed
2170− "DEPRECATED_RESOURCE_USED" -> Just ADeprecatedResourceUsed
2171− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just ADiskSizeLargerThanImageSize
2172− "INJECTED_KERNELS_DEPRECATED" -> Just AInjectedKernelsDeprecated
2173− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just ANextHopAddressNotAssigned
2174− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just ANextHopCannotIPForward
2175− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just ANextHopInstanceNotFound
2176− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just ANextHopInstanceNotOnNetwork
2177− "NEXT_HOP_NOT_RUNNING" -> Just ANextHopNotRunning
2178− "NOT_CRITICAL_ERROR" -> Just ANotCriticalError
2179− "NO_RESULTS_ON_PAGE" -> Just ANoResultsOnPage
2180− "REQUIRED_TOS_AGREEMENT" -> Just ARequiredTosAgreement
2181− "RESOURCE_NOT_DELETED" -> Just AResourceNotDeleted
2182− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just ASingleInstancePropertyTemplate
2183− "UNREACHABLE" -> Just AUnreachable
2184− _ -> Nothing
2185−
2186−instance ToText AutoscalersScopedListWarningCode where
2187− toText = \case
2167+instance FromHttpApiData AutoscalersScopedListWarningCode where
2168+ parseQueryParam = \case
2169+ "CLEANUP_FAILED" -> Right ACleanupFailed
2170+ "DEPRECATED_RESOURCE_USED" -> Right ADeprecatedResourceUsed
2171+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right ADiskSizeLargerThanImageSize
2172+ "INJECTED_KERNELS_DEPRECATED" -> Right AInjectedKernelsDeprecated
2173+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right ANextHopAddressNotAssigned
2174+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right ANextHopCannotIPForward
2175+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right ANextHopInstanceNotFound
2176+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right ANextHopInstanceNotOnNetwork
2177+ "NEXT_HOP_NOT_RUNNING" -> Right ANextHopNotRunning
2178+ "NOT_CRITICAL_ERROR" -> Right ANotCriticalError
2179+ "NO_RESULTS_ON_PAGE" -> Right ANoResultsOnPage
2180+ "REQUIRED_TOS_AGREEMENT" -> Right ARequiredTosAgreement
2181+ "RESOURCE_NOT_DELETED" -> Right AResourceNotDeleted
2182+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right ASingleInstancePropertyTemplate
2183+ "UNREACHABLE" -> Right AUnreachable
2184+ x -> Left ("Unable to parse AutoscalersScopedListWarningCode from: " <> x)
2185+
2186+instance ToHttpApiData AutoscalersScopedListWarningCode where
2187+ toQueryParam = \case
21882188 ACleanupFailed -> "CLEANUP_FAILED"
21892189 ADeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
21902190 ADiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -2244,27 +2244,27 @@ data VPNTunnelsScopedListWarningCode
22442244
22452245instance Hashable VPNTunnelsScopedListWarningCode
22462246
2247−instance FromText VPNTunnelsScopedListWarningCode where
2248− fromText = \case
2249− "CLEANUP_FAILED" -> Just VTSLWCCleanupFailed
2250− "DEPRECATED_RESOURCE_USED" -> Just VTSLWCDeprecatedResourceUsed
2251− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just VTSLWCDiskSizeLargerThanImageSize
2252− "INJECTED_KERNELS_DEPRECATED" -> Just VTSLWCInjectedKernelsDeprecated
2253− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just VTSLWCNextHopAddressNotAssigned
2254− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just VTSLWCNextHopCannotIPForward
2255− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just VTSLWCNextHopInstanceNotFound
2256− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just VTSLWCNextHopInstanceNotOnNetwork
2257− "NEXT_HOP_NOT_RUNNING" -> Just VTSLWCNextHopNotRunning
2258− "NOT_CRITICAL_ERROR" -> Just VTSLWCNotCriticalError
2259− "NO_RESULTS_ON_PAGE" -> Just VTSLWCNoResultsOnPage
2260− "REQUIRED_TOS_AGREEMENT" -> Just VTSLWCRequiredTosAgreement
2261− "RESOURCE_NOT_DELETED" -> Just VTSLWCResourceNotDeleted
2262− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just VTSLWCSingleInstancePropertyTemplate
2263− "UNREACHABLE" -> Just VTSLWCUnreachable
2264− _ -> Nothing
2265−
2266−instance ToText VPNTunnelsScopedListWarningCode where
2267− toText = \case
2247+instance FromHttpApiData VPNTunnelsScopedListWarningCode where
2248+ parseQueryParam = \case
2249+ "CLEANUP_FAILED" -> Right VTSLWCCleanupFailed
2250+ "DEPRECATED_RESOURCE_USED" -> Right VTSLWCDeprecatedResourceUsed
2251+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right VTSLWCDiskSizeLargerThanImageSize
2252+ "INJECTED_KERNELS_DEPRECATED" -> Right VTSLWCInjectedKernelsDeprecated
2253+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right VTSLWCNextHopAddressNotAssigned
2254+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right VTSLWCNextHopCannotIPForward
2255+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right VTSLWCNextHopInstanceNotFound
2256+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right VTSLWCNextHopInstanceNotOnNetwork
2257+ "NEXT_HOP_NOT_RUNNING" -> Right VTSLWCNextHopNotRunning
2258+ "NOT_CRITICAL_ERROR" -> Right VTSLWCNotCriticalError
2259+ "NO_RESULTS_ON_PAGE" -> Right VTSLWCNoResultsOnPage
2260+ "REQUIRED_TOS_AGREEMENT" -> Right VTSLWCRequiredTosAgreement
2261+ "RESOURCE_NOT_DELETED" -> Right VTSLWCResourceNotDeleted
2262+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right VTSLWCSingleInstancePropertyTemplate
2263+ "UNREACHABLE" -> Right VTSLWCUnreachable
2264+ x -> Left ("Unable to parse VPNTunnelsScopedListWarningCode from: " <> x)
2265+
2266+instance ToHttpApiData VPNTunnelsScopedListWarningCode where
2267+ toQueryParam = \case
22682268 VTSLWCCleanupFailed -> "CLEANUP_FAILED"
22692269 VTSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
22702270 VTSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -2324,27 +2324,27 @@ data InstanceGroupsScopedListWarningCode
23242324
23252325instance Hashable InstanceGroupsScopedListWarningCode
23262326
2327−instance FromText InstanceGroupsScopedListWarningCode where
2328− fromText = \case
2329− "CLEANUP_FAILED" -> Just IGSLWCCleanupFailed
2330− "DEPRECATED_RESOURCE_USED" -> Just IGSLWCDeprecatedResourceUsed
2331− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just IGSLWCDiskSizeLargerThanImageSize
2332− "INJECTED_KERNELS_DEPRECATED" -> Just IGSLWCInjectedKernelsDeprecated
2333− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just IGSLWCNextHopAddressNotAssigned
2334− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just IGSLWCNextHopCannotIPForward
2335− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just IGSLWCNextHopInstanceNotFound
2336− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just IGSLWCNextHopInstanceNotOnNetwork
2337− "NEXT_HOP_NOT_RUNNING" -> Just IGSLWCNextHopNotRunning
2338− "NOT_CRITICAL_ERROR" -> Just IGSLWCNotCriticalError
2339− "NO_RESULTS_ON_PAGE" -> Just IGSLWCNoResultsOnPage
2340− "REQUIRED_TOS_AGREEMENT" -> Just IGSLWCRequiredTosAgreement
2341− "RESOURCE_NOT_DELETED" -> Just IGSLWCResourceNotDeleted
2342− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just IGSLWCSingleInstancePropertyTemplate
2343− "UNREACHABLE" -> Just IGSLWCUnreachable
2344− _ -> Nothing
2345−
2346−instance ToText InstanceGroupsScopedListWarningCode where
2347− toText = \case
2327+instance FromHttpApiData InstanceGroupsScopedListWarningCode where
2328+ parseQueryParam = \case
2329+ "CLEANUP_FAILED" -> Right IGSLWCCleanupFailed
2330+ "DEPRECATED_RESOURCE_USED" -> Right IGSLWCDeprecatedResourceUsed
2331+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right IGSLWCDiskSizeLargerThanImageSize
2332+ "INJECTED_KERNELS_DEPRECATED" -> Right IGSLWCInjectedKernelsDeprecated
2333+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right IGSLWCNextHopAddressNotAssigned
2334+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right IGSLWCNextHopCannotIPForward
2335+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right IGSLWCNextHopInstanceNotFound
2336+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right IGSLWCNextHopInstanceNotOnNetwork
2337+ "NEXT_HOP_NOT_RUNNING" -> Right IGSLWCNextHopNotRunning
2338+ "NOT_CRITICAL_ERROR" -> Right IGSLWCNotCriticalError
2339+ "NO_RESULTS_ON_PAGE" -> Right IGSLWCNoResultsOnPage
2340+ "REQUIRED_TOS_AGREEMENT" -> Right IGSLWCRequiredTosAgreement
2341+ "RESOURCE_NOT_DELETED" -> Right IGSLWCResourceNotDeleted
2342+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right IGSLWCSingleInstancePropertyTemplate
2343+ "UNREACHABLE" -> Right IGSLWCUnreachable
2344+ x -> Left ("Unable to parse InstanceGroupsScopedListWarningCode from: " <> x)
2345+
2346+instance ToHttpApiData InstanceGroupsScopedListWarningCode where
2347+ toQueryParam = \case
23482348 IGSLWCCleanupFailed -> "CLEANUP_FAILED"
23492349 IGSLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
23502350 IGSLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -2389,20 +2389,20 @@ data InstanceWithNamedPortsStatus
23892389
23902390instance Hashable InstanceWithNamedPortsStatus
23912391
2392−instance FromText InstanceWithNamedPortsStatus where
2393− fromText = \case
2394− "PROVISIONING" -> Just IWNPSProvisioning
2395− "RUNNING" -> Just IWNPSRunning
2396− "STAGING" -> Just IWNPSStaging
2397− "STOPPED" -> Just IWNPSStopped
2398− "STOPPING" -> Just IWNPSStopping
2399− "SUSPENDED" -> Just IWNPSSuspended
2400− "SUSPENDING" -> Just IWNPSSuspending
2401− "TERMINATED" -> Just IWNPSTerminated
2402− _ -> Nothing
2403−
2404−instance ToText InstanceWithNamedPortsStatus where
2405− toText = \case
2392+instance FromHttpApiData InstanceWithNamedPortsStatus where
2393+ parseQueryParam = \case
2394+ "PROVISIONING" -> Right IWNPSProvisioning
2395+ "RUNNING" -> Right IWNPSRunning
2396+ "STAGING" -> Right IWNPSStaging
2397+ "STOPPED" -> Right IWNPSStopped
2398+ "STOPPING" -> Right IWNPSStopping
2399+ "SUSPENDED" -> Right IWNPSSuspended
2400+ "SUSPENDING" -> Right IWNPSSuspending
2401+ "TERMINATED" -> Right IWNPSTerminated
2402+ x -> Left ("Unable to parse InstanceWithNamedPortsStatus from: " <> x)
2403+
2404+instance ToHttpApiData InstanceWithNamedPortsStatus where
2405+ toQueryParam = \case
24062406 IWNPSProvisioning -> "PROVISIONING"
24072407 IWNPSRunning -> "RUNNING"
24082408 IWNPSStaging -> "STAGING"
@@ -2455,27 +2455,27 @@ data InstancesScopedListWarningCode
24552455
24562456instance Hashable InstancesScopedListWarningCode
24572457
2458−instance FromText InstancesScopedListWarningCode where
2459− fromText = \case
2460− "CLEANUP_FAILED" -> Just ISLWCCleanupFailed
2461− "DEPRECATED_RESOURCE_USED" -> Just ISLWCDeprecatedResourceUsed
2462− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just ISLWCDiskSizeLargerThanImageSize
2463− "INJECTED_KERNELS_DEPRECATED" -> Just ISLWCInjectedKernelsDeprecated
2464− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just ISLWCNextHopAddressNotAssigned
2465− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just ISLWCNextHopCannotIPForward
2466− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just ISLWCNextHopInstanceNotFound
2467− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just ISLWCNextHopInstanceNotOnNetwork
2468− "NEXT_HOP_NOT_RUNNING" -> Just ISLWCNextHopNotRunning
2469− "NOT_CRITICAL_ERROR" -> Just ISLWCNotCriticalError
2470− "NO_RESULTS_ON_PAGE" -> Just ISLWCNoResultsOnPage
2471− "REQUIRED_TOS_AGREEMENT" -> Just ISLWCRequiredTosAgreement
2472− "RESOURCE_NOT_DELETED" -> Just ISLWCResourceNotDeleted
2473− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just ISLWCSingleInstancePropertyTemplate
2474− "UNREACHABLE" -> Just ISLWCUnreachable
2475− _ -> Nothing
2476−
2477−instance ToText InstancesScopedListWarningCode where
2478− toText = \case
2458+instance FromHttpApiData InstancesScopedListWarningCode where
2459+ parseQueryParam = \case
2460+ "CLEANUP_FAILED" -> Right ISLWCCleanupFailed
2461+ "DEPRECATED_RESOURCE_USED" -> Right ISLWCDeprecatedResourceUsed
2462+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right ISLWCDiskSizeLargerThanImageSize
2463+ "INJECTED_KERNELS_DEPRECATED" -> Right ISLWCInjectedKernelsDeprecated
2464+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right ISLWCNextHopAddressNotAssigned
2465+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right ISLWCNextHopCannotIPForward
2466+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right ISLWCNextHopInstanceNotFound
2467+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right ISLWCNextHopInstanceNotOnNetwork
2468+ "NEXT_HOP_NOT_RUNNING" -> Right ISLWCNextHopNotRunning
2469+ "NOT_CRITICAL_ERROR" -> Right ISLWCNotCriticalError
2470+ "NO_RESULTS_ON_PAGE" -> Right ISLWCNoResultsOnPage
2471+ "REQUIRED_TOS_AGREEMENT" -> Right ISLWCRequiredTosAgreement
2472+ "RESOURCE_NOT_DELETED" -> Right ISLWCResourceNotDeleted
2473+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right ISLWCSingleInstancePropertyTemplate
2474+ "UNREACHABLE" -> Right ISLWCUnreachable
2475+ x -> Left ("Unable to parse InstancesScopedListWarningCode from: " <> x)
2476+
2477+instance ToHttpApiData InstancesScopedListWarningCode where
2478+ toQueryParam = \case
24792479 ISLWCCleanupFailed -> "CLEANUP_FAILED"
24802480 ISLWCDeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
24812481 ISLWCDiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -2516,15 +2516,15 @@ data TargetPoolSessionAffinity
25162516
25172517instance Hashable TargetPoolSessionAffinity
25182518
2519−instance FromText TargetPoolSessionAffinity where
2520− fromText = \case
2521− "CLIENT_IP" -> Just ClientIP
2522− "CLIENT_IP_PROTO" -> Just ClientIPProto
2523− "NONE" -> Just None
2524− _ -> Nothing
2519+instance FromHttpApiData TargetPoolSessionAffinity where
2520+ parseQueryParam = \case
2521+ "CLIENT_IP" -> Right ClientIP
2522+ "CLIENT_IP_PROTO" -> Right ClientIPProto
2523+ "NONE" -> Right None
2524+ x -> Left ("Unable to parse TargetPoolSessionAffinity from: " <> x)
25252525
2526−instance ToText TargetPoolSessionAffinity where
2527− toText = \case
2526+instance ToHttpApiData TargetPoolSessionAffinity where
2527+ toQueryParam = \case
25282528 ClientIP -> "CLIENT_IP"
25292529 ClientIPProto -> "CLIENT_IP_PROTO"
25302530 None -> "NONE"
@@ -2545,13 +2545,13 @@ data ImageRawDiskContainerType
25452545
25462546instance Hashable ImageRawDiskContainerType
25472547
2548−instance FromText ImageRawDiskContainerType where
2549− fromText = \case
2550− "TAR" -> Just TAR
2551− _ -> Nothing
2548+instance FromHttpApiData ImageRawDiskContainerType where
2549+ parseQueryParam = \case
2550+ "TAR" -> Right TAR
2551+ x -> Left ("Unable to parse ImageRawDiskContainerType from: " <> x)
25522552
2553−instance ToText ImageRawDiskContainerType where
2554− toText = \case
2553+instance ToHttpApiData ImageRawDiskContainerType where
2554+ toQueryParam = \case
25552555 TAR -> "TAR"
25562556
25572557instance FromJSON ImageRawDiskContainerType where
gogol-customsearch/gen/Network/Google/CustomSearch/Types/Sum.hs+117−117
@@ -40,17 +40,17 @@ data CSEListImgType
4040
4141instance Hashable CSEListImgType
4242
43−instance FromText CSEListImgType where
44− fromText = \case
45− "clipart" -> Just CliPart
46− "face" -> Just Face
47− "lineart" -> Just Lineart
48− "news" -> Just News
49− "photo" -> Just Photo
50− _ -> Nothing
51−
52−instance ToText CSEListImgType where
53− toText = \case
43+instance FromHttpApiData CSEListImgType where
44+ parseQueryParam = \case
45+ "clipart" -> Right CliPart
46+ "face" -> Right Face
47+ "lineart" -> Right Lineart
48+ "news" -> Right News
49+ "photo" -> Right Photo
50+ x -> Left ("Unable to parse CSEListImgType from: " <> x)
51+
52+instance ToHttpApiData CSEListImgType where
53+ toQueryParam = \case
5454 CliPart -> "clipart"
5555 Face -> "face"
5656 Lineart -> "lineart"
@@ -76,14 +76,14 @@ data CSEListSiteSearchFilter
7676
7777instance Hashable CSEListSiteSearchFilter
7878
79−instance FromText CSEListSiteSearchFilter where
80− fromText = \case
81− "e" -> Just E
82− "i" -> Just I
83− _ -> Nothing
79+instance FromHttpApiData CSEListSiteSearchFilter where
80+ parseQueryParam = \case
81+ "e" -> Right E
82+ "i" -> Right I
83+ x -> Left ("Unable to parse CSEListSiteSearchFilter from: " <> x)
8484
85−instance ToText CSEListSiteSearchFilter where
86− toText = \case
85+instance ToHttpApiData CSEListSiteSearchFilter where
86+ toQueryParam = \case
8787 E -> "e"
8888 I -> "i"
8989
@@ -130,22 +130,22 @@ data CSEListImgDominantColor
130130
131131instance Hashable CSEListImgDominantColor
132132
133−instance FromText CSEListImgDominantColor where
134− fromText = \case
135− "black" -> Just Black
136− "blue" -> Just Blue
137− "brown" -> Just Brown
138− "gray" -> Just Gray
139− "green" -> Just Green
140− "pink" -> Just Pink
141− "purple" -> Just Purple
142− "teal" -> Just Teal
143− "white" -> Just White
144− "yellow" -> Just Yellow
145− _ -> Nothing
146−
147−instance ToText CSEListImgDominantColor where
148− toText = \case
133+instance FromHttpApiData CSEListImgDominantColor where
134+ parseQueryParam = \case
135+ "black" -> Right Black
136+ "blue" -> Right Blue
137+ "brown" -> Right Brown
138+ "gray" -> Right Gray
139+ "green" -> Right Green
140+ "pink" -> Right Pink
141+ "purple" -> Right Purple
142+ "teal" -> Right Teal
143+ "white" -> Right White
144+ "yellow" -> Right Yellow
145+ x -> Left ("Unable to parse CSEListImgDominantColor from: " <> x)
146+
147+instance ToHttpApiData CSEListImgDominantColor where
148+ toQueryParam = \case
149149 Black -> "black"
150150 Blue -> "blue"
151151 Brown -> "brown"
@@ -178,15 +178,15 @@ data CSEListSafe
178178
179179instance Hashable CSEListSafe
180180
181−instance FromText CSEListSafe where
182− fromText = \case
183− "high" -> Just High
184− "medium" -> Just Medium
185− "off" -> Just Off
186− _ -> Nothing
181+instance FromHttpApiData CSEListSafe where
182+ parseQueryParam = \case
183+ "high" -> Right High
184+ "medium" -> Right Medium
185+ "off" -> Right Off
186+ x -> Left ("Unable to parse CSEListSafe from: " <> x)
187187
188−instance ToText CSEListSafe where
189− toText = \case
188+instance ToHttpApiData CSEListSafe where
189+ toQueryParam = \case
190190 High -> "high"
191191 Medium -> "medium"
192192 Off -> "off"
@@ -213,15 +213,15 @@ data CSEListImgColorType
213213
214214instance Hashable CSEListImgColorType
215215
216−instance FromText CSEListImgColorType where
217− fromText = \case
218− "color" -> Just CSELICTColor
219− "gray" -> Just CSELICTGray
220− "mono" -> Just CSELICTMono
221− _ -> Nothing
216+instance FromHttpApiData CSEListImgColorType where
217+ parseQueryParam = \case
218+ "color" -> Right CSELICTColor
219+ "gray" -> Right CSELICTGray
220+ "mono" -> Right CSELICTMono
221+ x -> Left ("Unable to parse CSEListImgColorType from: " <> x)
222222
223−instance ToText CSEListImgColorType where
224− toText = \case
223+instance ToHttpApiData CSEListImgColorType where
224+ toQueryParam = \case
225225 CSELICTColor -> "color"
226226 CSELICTGray -> "gray"
227227 CSELICTMono -> "mono"
@@ -244,14 +244,14 @@ data CSEListFilter
244244
245245instance Hashable CSEListFilter
246246
247−instance FromText CSEListFilter where
248− fromText = \case
249− "0" -> Just CSELF0
250− "1" -> Just CSELF1
251− _ -> Nothing
247+instance FromHttpApiData CSEListFilter where
248+ parseQueryParam = \case
249+ "0" -> Right CSELF0
250+ "1" -> Right CSELF1
251+ x -> Left ("Unable to parse CSEListFilter from: " <> x)
252252
253−instance ToText CSEListFilter where
254− toText = \case
253+instance ToHttpApiData CSEListFilter where
254+ toQueryParam = \case
255255 CSELF0 -> "0"
256256 CSELF1 -> "1"
257257
@@ -372,47 +372,47 @@ data CSEListLr
372372
373373instance Hashable CSEListLr
374374
375−instance FromText CSEListLr where
376− fromText = \case
377− "lang_ar" -> Just LangAr
378− "lang_bg" -> Just LangBg
379− "lang_ca" -> Just LangCa
380− "lang_cs" -> Just LangCs
381− "lang_da" -> Just LangDa
382− "lang_de" -> Just LangDe
383− "lang_el" -> Just LangEl
384− "lang_en" -> Just LangEn
385− "lang_es" -> Just LangEs
386− "lang_et" -> Just LangEt
387− "lang_fi" -> Just LangFi
388− "lang_fr" -> Just LangFr
389− "lang_hr" -> Just LangHr
390− "lang_hu" -> Just LangHu
391− "lang_id" -> Just LangId
392− "lang_is" -> Just LangIs
393− "lang_it" -> Just LangIt
394− "lang_iw" -> Just LangIw
395− "lang_ja" -> Just LangJa
396− "lang_ko" -> Just LangKo
397− "lang_lt" -> Just LangLT
398− "lang_lv" -> Just LangLv
399− "lang_nl" -> Just LangNl
400− "lang_no" -> Just LangNo
401− "lang_pl" -> Just LangPl
402− "lang_pt" -> Just LangPt
403− "lang_ro" -> Just LangRo
404− "lang_ru" -> Just LangRu
405− "lang_sk" -> Just LangSk
406− "lang_sl" -> Just LangSl
407− "lang_sr" -> Just LangSr
408− "lang_sv" -> Just LangSv
409− "lang_tr" -> Just LangTr
410− "lang_zh-CN" -> Just LangZhCn
411− "lang_zh-TW" -> Just LangZhTw
412− _ -> Nothing
413−
414−instance ToText CSEListLr where
415− toText = \case
375+instance FromHttpApiData CSEListLr where
376+ parseQueryParam = \case
377+ "lang_ar" -> Right LangAr
378+ "lang_bg" -> Right LangBg
379+ "lang_ca" -> Right LangCa
380+ "lang_cs" -> Right LangCs
381+ "lang_da" -> Right LangDa
382+ "lang_de" -> Right LangDe
383+ "lang_el" -> Right LangEl
384+ "lang_en" -> Right LangEn
385+ "lang_es" -> Right LangEs
386+ "lang_et" -> Right LangEt
387+ "lang_fi" -> Right LangFi
388+ "lang_fr" -> Right LangFr
389+ "lang_hr" -> Right LangHr
390+ "lang_hu" -> Right LangHu
391+ "lang_id" -> Right LangId
392+ "lang_is" -> Right LangIs
393+ "lang_it" -> Right LangIt
394+ "lang_iw" -> Right LangIw
395+ "lang_ja" -> Right LangJa
396+ "lang_ko" -> Right LangKo
397+ "lang_lt" -> Right LangLT
398+ "lang_lv" -> Right LangLv
399+ "lang_nl" -> Right LangNl
400+ "lang_no" -> Right LangNo
401+ "lang_pl" -> Right LangPl
402+ "lang_pt" -> Right LangPt
403+ "lang_ro" -> Right LangRo
404+ "lang_ru" -> Right LangRu
405+ "lang_sk" -> Right LangSk
406+ "lang_sl" -> Right LangSl
407+ "lang_sr" -> Right LangSr
408+ "lang_sv" -> Right LangSv
409+ "lang_tr" -> Right LangTr
410+ "lang_zh-CN" -> Right LangZhCn
411+ "lang_zh-TW" -> Right LangZhTw
412+ x -> Left ("Unable to parse CSEListLr from: " <> x)
413+
414+instance ToHttpApiData CSEListLr where
415+ toQueryParam = \case
416416 LangAr -> "lang_ar"
417417 LangBg -> "lang_bg"
418418 LangCa -> "lang_ca"
@@ -464,13 +464,13 @@ data CSEListSearchType
464464
465465instance Hashable CSEListSearchType
466466
467−instance FromText CSEListSearchType where
468− fromText = \case
469− "image" -> Just Image
470− _ -> Nothing
467+instance FromHttpApiData CSEListSearchType where
468+ parseQueryParam = \case
469+ "image" -> Right Image
470+ x -> Left ("Unable to parse CSEListSearchType from: " <> x)
471471
472−instance ToText CSEListSearchType where
473− toText = \case
472+instance ToHttpApiData CSEListSearchType where
473+ toQueryParam = \case
474474 Image -> "image"
475475
476476instance FromJSON CSEListSearchType where
@@ -507,19 +507,19 @@ data CSEListImgSize
507507
508508instance Hashable CSEListImgSize
509509
510−instance FromText CSEListImgSize where
511− fromText = \case
512− "huge" -> Just CSELISHuge
513− "icon" -> Just CSELISIcon
514− "large" -> Just CSELISLarge
515− "medium" -> Just CSELISMedium
516− "small" -> Just CSELISSmall
517− "xlarge" -> Just CSELISXlarge
518− "xxlarge" -> Just CSELISXxlarge
519− _ -> Nothing
520−
521−instance ToText CSEListImgSize where
522− toText = \case
510+instance FromHttpApiData CSEListImgSize where
511+ parseQueryParam = \case
512+ "huge" -> Right CSELISHuge
513+ "icon" -> Right CSELISIcon
514+ "large" -> Right CSELISLarge
515+ "medium" -> Right CSELISMedium
516+ "small" -> Right CSELISSmall
517+ "xlarge" -> Right CSELISXlarge
518+ "xxlarge" -> Right CSELISXxlarge
519+ x -> Left ("Unable to parse CSEListImgSize from: " <> x)
520+
521+instance ToHttpApiData CSEListImgSize where
522+ toQueryParam = \case
523523 CSELISHuge -> "huge"
524524 CSELISIcon -> "icon"
525525 CSELISLarge -> "large"
gogol-datastore/gen/Network/Google/Datastore/Types/Sum.hs+70−70
@@ -29,14 +29,14 @@ data PropertyOrderDirection
2929
3030instance Hashable PropertyOrderDirection
3131
32−instance FromText PropertyOrderDirection where
33− fromText = \case
34− "ASCENDING" -> Just Ascending
35− "DESCENDING" -> Just Descending
36− _ -> Nothing
37−
38−instance ToText PropertyOrderDirection where
39− toText = \case
32+instance FromHttpApiData PropertyOrderDirection where
33+ parseQueryParam = \case
34+ "ASCENDING" -> Right Ascending
35+ "DESCENDING" -> Right Descending
36+ x -> Left ("Unable to parse PropertyOrderDirection from: " <> x)
37+
38+instance ToHttpApiData PropertyOrderDirection where
39+ toQueryParam = \case
4040 Ascending -> "ASCENDING"
4141 Descending -> "DESCENDING"
4242
@@ -60,15 +60,15 @@ data QueryResultBatchEntityResultType
6060
6161instance Hashable QueryResultBatchEntityResultType
6262
63−instance FromText QueryResultBatchEntityResultType where
64− fromText = \case
65− "FULL" -> Just Full
66− "KEY_ONLY" -> Just KeyOnly
67− "PROJECTION" -> Just Projection
68− _ -> Nothing
63+instance FromHttpApiData QueryResultBatchEntityResultType where
64+ parseQueryParam = \case
65+ "FULL" -> Right Full
66+ "KEY_ONLY" -> Right KeyOnly
67+ "PROJECTION" -> Right Projection
68+ x -> Left ("Unable to parse QueryResultBatchEntityResultType from: " <> x)
6969
70−instance ToText QueryResultBatchEntityResultType where
71− toText = \case
70+instance ToHttpApiData QueryResultBatchEntityResultType where
71+ toQueryParam = \case
7272 Full -> "FULL"
7373 KeyOnly -> "KEY_ONLY"
7474 Projection -> "PROJECTION"
@@ -88,13 +88,13 @@ data CompositeFilterOperator
8888
8989instance Hashable CompositeFilterOperator
9090
91−instance FromText CompositeFilterOperator where
92− fromText = \case
93− "AND" -> Just And
94− _ -> Nothing
91+instance FromHttpApiData CompositeFilterOperator where
92+ parseQueryParam = \case
93+ "AND" -> Right And
94+ x -> Left ("Unable to parse CompositeFilterOperator from: " <> x)
9595
96−instance ToText CompositeFilterOperator where
97− toText = \case
96+instance ToHttpApiData CompositeFilterOperator where
97+ toQueryParam = \case
9898 And -> "AND"
9999
100100instance FromJSON CompositeFilterOperator where
@@ -116,15 +116,15 @@ data QueryResultBatchMoreResults
116116
117117instance Hashable QueryResultBatchMoreResults
118118
119−instance FromText QueryResultBatchMoreResults where
120− fromText = \case
121− "MORE_RESULTS_AFTER_LIMIT" -> Just MoreResultsAfterLimit
122− "NOT_FINISHED" -> Just NotFinished
123− "NO_MORE_RESULTS" -> Just NoMoreResults
124− _ -> Nothing
119+instance FromHttpApiData QueryResultBatchMoreResults where
120+ parseQueryParam = \case
121+ "MORE_RESULTS_AFTER_LIMIT" -> Right MoreResultsAfterLimit
122+ "NOT_FINISHED" -> Right NotFinished
123+ "NO_MORE_RESULTS" -> Right NoMoreResults
124+ x -> Left ("Unable to parse QueryResultBatchMoreResults from: " <> x)
125125
126−instance ToText QueryResultBatchMoreResults where
127− toText = \case
126+instance ToHttpApiData QueryResultBatchMoreResults where
127+ toQueryParam = \case
128128 MoreResultsAfterLimit -> "MORE_RESULTS_AFTER_LIMIT"
129129 NotFinished -> "NOT_FINISHED"
130130 NoMoreResults -> "NO_MORE_RESULTS"
@@ -150,15 +150,15 @@ data ReadOptionsReadConsistency
150150
151151instance Hashable ReadOptionsReadConsistency
152152
153−instance FromText ReadOptionsReadConsistency where
154− fromText = \case
155− "DEFAULT" -> Just Default
156− "EVENTUAL" -> Just Eventual
157− "STRONG" -> Just Strong
158− _ -> Nothing
153+instance FromHttpApiData ReadOptionsReadConsistency where
154+ parseQueryParam = \case
155+ "DEFAULT" -> Right Default
156+ "EVENTUAL" -> Right Eventual
157+ "STRONG" -> Right Strong
158+ x -> Left ("Unable to parse ReadOptionsReadConsistency from: " <> x)
159159
160−instance ToText ReadOptionsReadConsistency where
161− toText = \case
160+instance ToHttpApiData ReadOptionsReadConsistency where
161+ toQueryParam = \case
162162 Default -> "DEFAULT"
163163 Eventual -> "EVENTUAL"
164164 Strong -> "STRONG"
@@ -188,18 +188,18 @@ data PropertyFilterOperator
188188
189189instance Hashable PropertyFilterOperator
190190
191−instance FromText PropertyFilterOperator where
192− fromText = \case
193− "EQUAL" -> Just Equal
194− "GREATER_THAN" -> Just GreaterThan
195− "GREATER_THAN_OR_EQUAL" -> Just GreaterThanOrEqual
196− "HAS_ANCESTOR" -> Just HasAncestor
197− "LESS_THAN" -> Just LessThan
198− "LESS_THAN_OR_EQUAL" -> Just LessThanOrEqual
199− _ -> Nothing
200−
201−instance ToText PropertyFilterOperator where
202− toText = \case
191+instance FromHttpApiData PropertyFilterOperator where
192+ parseQueryParam = \case
193+ "EQUAL" -> Right Equal
194+ "GREATER_THAN" -> Right GreaterThan
195+ "GREATER_THAN_OR_EQUAL" -> Right GreaterThanOrEqual
196+ "HAS_ANCESTOR" -> Right HasAncestor
197+ "LESS_THAN" -> Right LessThan
198+ "LESS_THAN_OR_EQUAL" -> Right LessThanOrEqual
199+ x -> Left ("Unable to parse PropertyFilterOperator from: " <> x)
200+
201+instance ToHttpApiData PropertyFilterOperator where
202+ toQueryParam = \case
203203 Equal -> "EQUAL"
204204 GreaterThan -> "GREATER_THAN"
205205 GreaterThanOrEqual -> "GREATER_THAN_OR_EQUAL"
@@ -228,14 +228,14 @@ data BeginTransactionRequestIsolationLevel
228228
229229instance Hashable BeginTransactionRequestIsolationLevel
230230
231−instance FromText BeginTransactionRequestIsolationLevel where
232− fromText = \case
233− "SERIALIZABLE" -> Just Serializable
234− "SNAPSHOT" -> Just Snapshot
235− _ -> Nothing
231+instance FromHttpApiData BeginTransactionRequestIsolationLevel where
232+ parseQueryParam = \case
233+ "SERIALIZABLE" -> Right Serializable
234+ "SNAPSHOT" -> Right Snapshot
235+ x -> Left ("Unable to parse BeginTransactionRequestIsolationLevel from: " <> x)
236236
237−instance ToText BeginTransactionRequestIsolationLevel where
238− toText = \case
237+instance ToHttpApiData BeginTransactionRequestIsolationLevel where
238+ toQueryParam = \case
239239 Serializable -> "SERIALIZABLE"
240240 Snapshot -> "SNAPSHOT"
241241
@@ -256,14 +256,14 @@ data CommitRequestMode
256256
257257instance Hashable CommitRequestMode
258258
259−instance FromText CommitRequestMode where
260− fromText = \case
261− "NON_TRANSACTIONAL" -> Just NonTransactional
262− "TRANSACTIONAL" -> Just Transactional
263− _ -> Nothing
259+instance FromHttpApiData CommitRequestMode where
260+ parseQueryParam = \case
261+ "NON_TRANSACTIONAL" -> Right NonTransactional
262+ "TRANSACTIONAL" -> Right Transactional
263+ x -> Left ("Unable to parse CommitRequestMode from: " <> x)
264264
265−instance ToText CommitRequestMode where
266− toText = \case
265+instance ToHttpApiData CommitRequestMode where
266+ toQueryParam = \case
267267 NonTransactional -> "NON_TRANSACTIONAL"
268268 Transactional -> "TRANSACTIONAL"
269269
@@ -285,13 +285,13 @@ data PropertyExpressionAggregationFunction
285285
286286instance Hashable PropertyExpressionAggregationFunction
287287
288−instance FromText PropertyExpressionAggregationFunction where
289− fromText = \case
290− "FIRST" -> Just First
291− _ -> Nothing
288+instance FromHttpApiData PropertyExpressionAggregationFunction where
289+ parseQueryParam = \case
290+ "FIRST" -> Right First
291+ x -> Left ("Unable to parse PropertyExpressionAggregationFunction from: " <> x)
292292
293−instance ToText PropertyExpressionAggregationFunction where
294− toText = \case
293+instance ToHttpApiData PropertyExpressionAggregationFunction where
294+ toQueryParam = \case
295295 First -> "FIRST"
296296
297297instance FromJSON PropertyExpressionAggregationFunction where
gogol-deploymentmanager/gen/Network/Google/DeploymentManager/Types/Sum.hs+29−29
@@ -28,14 +28,14 @@ data DeploymentsUpdateCreatePolicy
2828
2929instance Hashable DeploymentsUpdateCreatePolicy
3030
31−instance FromText DeploymentsUpdateCreatePolicy where
32− fromText = \case
33− "ACQUIRE" -> Just Acquire
34− "CREATE_OR_ACQUIRE" -> Just CreateOrAcquire
35− _ -> Nothing
36−
37−instance ToText DeploymentsUpdateCreatePolicy where
38− toText = \case
31+instance FromHttpApiData DeploymentsUpdateCreatePolicy where
32+ parseQueryParam = \case
33+ "ACQUIRE" -> Right Acquire
34+ "CREATE_OR_ACQUIRE" -> Right CreateOrAcquire
35+ x -> Left ("Unable to parse DeploymentsUpdateCreatePolicy from: " <> x)
36+
37+instance ToHttpApiData DeploymentsUpdateCreatePolicy where
38+ toQueryParam = \case
3939 Acquire -> "ACQUIRE"
4040 CreateOrAcquire -> "CREATE_OR_ACQUIRE"
4141
@@ -55,14 +55,14 @@ data DeploymentsUpdateDeletePolicy
5555
5656instance Hashable DeploymentsUpdateDeletePolicy
5757
58−instance FromText DeploymentsUpdateDeletePolicy where
59− fromText = \case
60− "ABANDON" -> Just Abandon
61− "DELETE" -> Just Delete'
62− _ -> Nothing
58+instance FromHttpApiData DeploymentsUpdateDeletePolicy where
59+ parseQueryParam = \case
60+ "ABANDON" -> Right Abandon
61+ "DELETE" -> Right Delete'
62+ x -> Left ("Unable to parse DeploymentsUpdateDeletePolicy from: " <> x)
6363
64−instance ToText DeploymentsUpdateDeletePolicy where
65− toText = \case
64+instance ToHttpApiData DeploymentsUpdateDeletePolicy where
65+ toQueryParam = \case
6666 Abandon -> "ABANDON"
6767 Delete' -> "DELETE"
6868
@@ -82,14 +82,14 @@ data DeploymentsPatchDeletePolicy
8282
8383instance Hashable DeploymentsPatchDeletePolicy
8484
85−instance FromText DeploymentsPatchDeletePolicy where
86− fromText = \case
87− "ABANDON" -> Just DPDPAbandon
88− "DELETE" -> Just DPDPDelete'
89− _ -> Nothing
85+instance FromHttpApiData DeploymentsPatchDeletePolicy where
86+ parseQueryParam = \case
87+ "ABANDON" -> Right DPDPAbandon
88+ "DELETE" -> Right DPDPDelete'
89+ x -> Left ("Unable to parse DeploymentsPatchDeletePolicy from: " <> x)
9090
91−instance ToText DeploymentsPatchDeletePolicy where
92− toText = \case
91+instance ToHttpApiData DeploymentsPatchDeletePolicy where
92+ toQueryParam = \case
9393 DPDPAbandon -> "ABANDON"
9494 DPDPDelete' -> "DELETE"
9595
@@ -109,14 +109,14 @@ data DeploymentsPatchCreatePolicy
109109
110110instance Hashable DeploymentsPatchCreatePolicy
111111
112−instance FromText DeploymentsPatchCreatePolicy where
113− fromText = \case
114− "ACQUIRE" -> Just DPCPAcquire
115− "CREATE_OR_ACQUIRE" -> Just DPCPCreateOrAcquire
116− _ -> Nothing
112+instance FromHttpApiData DeploymentsPatchCreatePolicy where
113+ parseQueryParam = \case
114+ "ACQUIRE" -> Right DPCPAcquire
115+ "CREATE_OR_ACQUIRE" -> Right DPCPCreateOrAcquire
116+ x -> Left ("Unable to parse DeploymentsPatchCreatePolicy from: " <> x)
117117
118−instance ToText DeploymentsPatchCreatePolicy where
119− toText = \case
118+instance ToHttpApiData DeploymentsPatchCreatePolicy where
119+ toQueryParam = \case
120120 DPCPAcquire -> "ACQUIRE"
121121 DPCPCreateOrAcquire -> "CREATE_OR_ACQUIRE"
122122
gogol-dfareporting/gen/Network/Google/DFAReporting/Types/Sum.hs+1941−1941
@@ -28,14 +28,14 @@ data PlacementsListSortOrder
2828
2929instance Hashable PlacementsListSortOrder
3030
31−instance FromText PlacementsListSortOrder where
32− fromText = \case
33− "ASCENDING" -> Just Ascending
34− "DESCENDING" -> Just Descending
35− _ -> Nothing
36−
37−instance ToText PlacementsListSortOrder where
38− toText = \case
31+instance FromHttpApiData PlacementsListSortOrder where
32+ parseQueryParam = \case
33+ "ASCENDING" -> Right Ascending
34+ "DESCENDING" -> Right Descending
35+ x -> Left ("Unable to parse PlacementsListSortOrder from: " <> x)
36+
37+instance ToHttpApiData PlacementsListSortOrder where
38+ toQueryParam = \case
3939 Ascending -> "ASCENDING"
4040 Descending -> "DESCENDING"
4141
@@ -81,27 +81,27 @@ data DateRangeRelativeDateRange
8181
8282instance Hashable DateRangeRelativeDateRange
8383
84−instance FromText DateRangeRelativeDateRange where
85− fromText = \case
86− "LAST_24_MONTHS" -> Just Last24Months
87− "LAST_30_DAYS" -> Just Last30Days
88− "LAST_365_DAYS" -> Just Last365Days
89− "LAST_7_DAYS" -> Just Last7Days
90− "LAST_90_DAYS" -> Just Last90Days
91− "MONTH_TO_DATE" -> Just MonthToDate
92− "PREVIOUS_MONTH" -> Just PreviousMonth
93− "PREVIOUS_QUARTER" -> Just PreviousQuarter
94− "PREVIOUS_WEEK" -> Just PreviousWeek
95− "PREVIOUS_YEAR" -> Just PreviousYear
96− "QUARTER_TO_DATE" -> Just QuarterToDate
97− "TODAY" -> Just Today
98− "WEEK_TO_DATE" -> Just WeekToDate
99− "YEAR_TO_DATE" -> Just YearToDate
100− "YESTERDAY" -> Just Yesterday
101− _ -> Nothing
102−
103−instance ToText DateRangeRelativeDateRange where
104− toText = \case
84+instance FromHttpApiData DateRangeRelativeDateRange where
85+ parseQueryParam = \case
86+ "LAST_24_MONTHS" -> Right Last24Months
87+ "LAST_30_DAYS" -> Right Last30Days
88+ "LAST_365_DAYS" -> Right Last365Days
89+ "LAST_7_DAYS" -> Right Last7Days
90+ "LAST_90_DAYS" -> Right Last90Days
91+ "MONTH_TO_DATE" -> Right MonthToDate
92+ "PREVIOUS_MONTH" -> Right PreviousMonth
93+ "PREVIOUS_QUARTER" -> Right PreviousQuarter
94+ "PREVIOUS_WEEK" -> Right PreviousWeek
95+ "PREVIOUS_YEAR" -> Right PreviousYear
96+ "QUARTER_TO_DATE" -> Right QuarterToDate
97+ "TODAY" -> Right Today
98+ "WEEK_TO_DATE" -> Right WeekToDate
99+ "YEAR_TO_DATE" -> Right YearToDate
100+ "YESTERDAY" -> Right Yesterday
101+ x -> Left ("Unable to parse DateRangeRelativeDateRange from: " <> x)
102+
103+instance ToHttpApiData DateRangeRelativeDateRange where
104+ toQueryParam = \case
105105 Last24Months -> "LAST_24_MONTHS"
106106 Last30Days -> "LAST_30_DAYS"
107107 Last365Days -> "LAST_365_DAYS"
@@ -134,14 +134,14 @@ data AdvertisersListSortField
134134
135135instance Hashable AdvertisersListSortField
136136
137−instance FromText AdvertisersListSortField where
138− fromText = \case
139− "ID" -> Just ID
140− "NAME" -> Just Name
141− _ -> Nothing
137+instance FromHttpApiData AdvertisersListSortField where
138+ parseQueryParam = \case
139+ "ID" -> Right ID
140+ "NAME" -> Right Name
141+ x -> Left ("Unable to parse AdvertisersListSortField from: " <> x)
142142
143−instance ToText AdvertisersListSortField where
144− toText = \case
143+instance ToHttpApiData AdvertisersListSortField where
144+ toQueryParam = \case
145145 ID -> "ID"
146146 Name -> "NAME"
147147
@@ -161,14 +161,14 @@ data CreativeFieldsListSortOrder
161161
162162instance Hashable CreativeFieldsListSortOrder
163163
164−instance FromText CreativeFieldsListSortOrder where
165− fromText = \case
166− "ASCENDING" -> Just CFLSOAscending
167− "DESCENDING" -> Just CFLSODescending
168− _ -> Nothing
164+instance FromHttpApiData CreativeFieldsListSortOrder where
165+ parseQueryParam = \case
166+ "ASCENDING" -> Right CFLSOAscending
167+ "DESCENDING" -> Right CFLSODescending
168+ x -> Left ("Unable to parse CreativeFieldsListSortOrder from: " <> x)
169169
170−instance ToText CreativeFieldsListSortOrder where
171− toText = \case
170+instance ToHttpApiData CreativeFieldsListSortOrder where
171+ toQueryParam = \case
172172 CFLSOAscending -> "ASCENDING"
173173 CFLSODescending -> "DESCENDING"
174174
@@ -188,14 +188,14 @@ data UserRolesListSortField
188188
189189instance Hashable UserRolesListSortField
190190
191−instance FromText UserRolesListSortField where
192− fromText = \case
193− "ID" -> Just URLSFID
194− "NAME" -> Just URLSFName
195− _ -> Nothing
191+instance FromHttpApiData UserRolesListSortField where
192+ parseQueryParam = \case
193+ "ID" -> Right URLSFID
194+ "NAME" -> Right URLSFName
195+ x -> Left ("Unable to parse UserRolesListSortField from: " <> x)
196196
197−instance ToText UserRolesListSortField where
198− toText = \case
197+instance ToHttpApiData UserRolesListSortField where
198+ toQueryParam = \case
199199 URLSFID -> "ID"
200200 URLSFName -> "NAME"
201201
@@ -216,14 +216,14 @@ data FloodlightActivityTagFormat
216216
217217instance Hashable FloodlightActivityTagFormat
218218
219−instance FromText FloodlightActivityTagFormat where
220− fromText = \case
221− "HTML" -> Just HTML
222− "XHTML" -> Just Xhtml
223− _ -> Nothing
219+instance FromHttpApiData FloodlightActivityTagFormat where
220+ parseQueryParam = \case
221+ "HTML" -> Right HTML
222+ "XHTML" -> Right Xhtml
223+ x -> Left ("Unable to parse FloodlightActivityTagFormat from: " <> x)
224224
225−instance ToText FloodlightActivityTagFormat where
226− toText = \case
225+instance ToHttpApiData FloodlightActivityTagFormat where
226+ toQueryParam = \case
227227 HTML -> "HTML"
228228 Xhtml -> "XHTML"
229229
@@ -243,14 +243,14 @@ data OrderDocumentsListSortOrder
243243
244244instance Hashable OrderDocumentsListSortOrder
245245
246−instance FromText OrderDocumentsListSortOrder where
247− fromText = \case
248− "ASCENDING" -> Just ODLSOAscending
249− "DESCENDING" -> Just ODLSODescending
250− _ -> Nothing
246+instance FromHttpApiData OrderDocumentsListSortOrder where
247+ parseQueryParam = \case
248+ "ASCENDING" -> Right ODLSOAscending
249+ "DESCENDING" -> Right ODLSODescending
250+ x -> Left ("Unable to parse OrderDocumentsListSortOrder from: " <> x)
251251
252−instance ToText OrderDocumentsListSortOrder where
253− toText = \case
252+instance ToHttpApiData OrderDocumentsListSortOrder where
253+ toQueryParam = \case
254254 ODLSOAscending -> "ASCENDING"
255255 ODLSODescending -> "DESCENDING"
256256
@@ -301,20 +301,20 @@ data CreativeAssetRole
301301
302302instance Hashable CreativeAssetRole
303303
304−instance FromText CreativeAssetRole where
305− fromText = \case
306− "ADDITIONAL_FLASH" -> Just AdditionalFlash
307− "ADDITIONAL_IMAGE" -> Just AdditionalImage
308− "ALTERNATE_VIDEO" -> Just AlternateVideo
309− "BACKUP_IMAGE" -> Just BackupImage
310− "OTHER" -> Just Other
311− "PARENT_VIDEO" -> Just ParentVideo
312− "PRIMARY" -> Just Primary
313− "TRANSCODED_VIDEO" -> Just TranscodedVideo
314− _ -> Nothing
315−
316−instance ToText CreativeAssetRole where
317− toText = \case
304+instance FromHttpApiData CreativeAssetRole where
305+ parseQueryParam = \case
306+ "ADDITIONAL_FLASH" -> Right AdditionalFlash
307+ "ADDITIONAL_IMAGE" -> Right AdditionalImage
308+ "ALTERNATE_VIDEO" -> Right AlternateVideo
309+ "BACKUP_IMAGE" -> Right BackupImage
310+ "OTHER" -> Right Other
311+ "PARENT_VIDEO" -> Right ParentVideo
312+ "PRIMARY" -> Right Primary
313+ "TRANSCODED_VIDEO" -> Right TranscodedVideo
314+ x -> Left ("Unable to parse CreativeAssetRole from: " <> x)
315+
316+instance ToHttpApiData CreativeAssetRole where
317+ toQueryParam = \case
318318 AdditionalFlash -> "ADDITIONAL_FLASH"
319319 AdditionalImage -> "ADDITIONAL_IMAGE"
320320 AlternateVideo -> "ALTERNATE_VIDEO"
@@ -340,14 +340,14 @@ data RecipientDeliveryType
340340
341341instance Hashable RecipientDeliveryType
342342
343−instance FromText RecipientDeliveryType where
344− fromText = \case
345− "ATTACHMENT" -> Just Attachment
346− "LINK" -> Just Link
347− _ -> Nothing
343+instance FromHttpApiData RecipientDeliveryType where
344+ parseQueryParam = \case
345+ "ATTACHMENT" -> Right Attachment
346+ "LINK" -> Right Link
347+ x -> Left ("Unable to parse RecipientDeliveryType from: " <> x)
348348
349−instance ToText RecipientDeliveryType where
350− toText = \case
349+instance ToHttpApiData RecipientDeliveryType where
350+ toQueryParam = \case
351351 Attachment -> "ATTACHMENT"
352352 Link -> "LINK"
353353
@@ -401,31 +401,31 @@ data ThirdPartyTrackingURLThirdPartyURLType
401401
402402instance Hashable ThirdPartyTrackingURLThirdPartyURLType
403403
404−instance FromText ThirdPartyTrackingURLThirdPartyURLType where
405− fromText = \case
406− "CLICK_TRACKING" -> Just ClickTracking
407− "IMPRESSION" -> Just Impression
408− "RICH_MEDIA_BACKUP_IMPRESSION" -> Just RichMediaBackupImpression
409− "RICH_MEDIA_IMPRESSION" -> Just RichMediaImpression
410− "RICH_MEDIA_RM_IMPRESSION" -> Just RichMediaRmImpression
411− "SURVEY" -> Just Survey
412− "VIDEO_COMPLETE" -> Just VideoComplete
413− "VIDEO_CUSTOM" -> Just VideoCustom
414− "VIDEO_FIRST_QUARTILE" -> Just VideoFirstQuartile
415− "VIDEO_FULLSCREEN" -> Just VideoFullscreen
416− "VIDEO_MIDPOINT" -> Just VideoMidpoint
417− "VIDEO_MUTE" -> Just VideoMute
418− "VIDEO_PAUSE" -> Just VideoPause
419− "VIDEO_PROGRESS" -> Just VideoProgress
420− "VIDEO_REWIND" -> Just VideoRewind
421− "VIDEO_SKIP" -> Just VideoSkip
422− "VIDEO_START" -> Just VideoStart
423− "VIDEO_STOP" -> Just VideoStop
424− "VIDEO_THIRD_QUARTILE" -> Just VideoThirdQuartile
425− _ -> Nothing
426−
427−instance ToText ThirdPartyTrackingURLThirdPartyURLType where
428− toText = \case
404+instance FromHttpApiData ThirdPartyTrackingURLThirdPartyURLType where
405+ parseQueryParam = \case
406+ "CLICK_TRACKING" -> Right ClickTracking
407+ "IMPRESSION" -> Right Impression
408+ "RICH_MEDIA_BACKUP_IMPRESSION" -> Right RichMediaBackupImpression
409+ "RICH_MEDIA_IMPRESSION" -> Right RichMediaImpression
410+ "RICH_MEDIA_RM_IMPRESSION" -> Right RichMediaRmImpression
411+ "SURVEY" -> Right Survey
412+ "VIDEO_COMPLETE" -> Right VideoComplete
413+ "VIDEO_CUSTOM" -> Right VideoCustom
414+ "VIDEO_FIRST_QUARTILE" -> Right VideoFirstQuartile
415+ "VIDEO_FULLSCREEN" -> Right VideoFullscreen
416+ "VIDEO_MIDPOINT" -> Right VideoMidpoint
417+ "VIDEO_MUTE" -> Right VideoMute
418+ "VIDEO_PAUSE" -> Right VideoPause
419+ "VIDEO_PROGRESS" -> Right VideoProgress
420+ "VIDEO_REWIND" -> Right VideoRewind
421+ "VIDEO_SKIP" -> Right VideoSkip
422+ "VIDEO_START" -> Right VideoStart
423+ "VIDEO_STOP" -> Right VideoStop
424+ "VIDEO_THIRD_QUARTILE" -> Right VideoThirdQuartile
425+ x -> Left ("Unable to parse ThirdPartyTrackingURLThirdPartyURLType from: " <> x)
426+
427+instance ToHttpApiData ThirdPartyTrackingURLThirdPartyURLType where
428+ toQueryParam = \case
429429 ClickTracking -> "CLICK_TRACKING"
430430 Impression -> "IMPRESSION"
431431 RichMediaBackupImpression -> "RICH_MEDIA_BACKUP_IMPRESSION"
@@ -462,14 +462,14 @@ data TargetableRemarketingListsListSortOrder
462462
463463instance Hashable TargetableRemarketingListsListSortOrder
464464
465−instance FromText TargetableRemarketingListsListSortOrder where
466− fromText = \case
467− "ASCENDING" -> Just TRLLSOAscending
468− "DESCENDING" -> Just TRLLSODescending
469− _ -> Nothing
465+instance FromHttpApiData TargetableRemarketingListsListSortOrder where
466+ parseQueryParam = \case
467+ "ASCENDING" -> Right TRLLSOAscending
468+ "DESCENDING" -> Right TRLLSODescending
469+ x -> Left ("Unable to parse TargetableRemarketingListsListSortOrder from: " <> x)
470470
471−instance ToText TargetableRemarketingListsListSortOrder where
472− toText = \case
471+instance ToHttpApiData TargetableRemarketingListsListSortOrder where
472+ toQueryParam = \case
473473 TRLLSOAscending -> "ASCENDING"
474474 TRLLSODescending -> "DESCENDING"
475475
@@ -492,15 +492,15 @@ data CreativeAssetPositionLeftUnit
492492
493493instance Hashable CreativeAssetPositionLeftUnit
494494
495−instance FromText CreativeAssetPositionLeftUnit where
496− fromText = \case
497− "OFFSET_UNIT_PERCENT" -> Just OffSetUnitPercent
498− "OFFSET_UNIT_PIXEL" -> Just OffSetUnitPixel
499− "OFFSET_UNIT_PIXEL_FROM_CENTER" -> Just OffSetUnitPixelFromCenter
500− _ -> Nothing
495+instance FromHttpApiData CreativeAssetPositionLeftUnit where
496+ parseQueryParam = \case
497+ "OFFSET_UNIT_PERCENT" -> Right OffSetUnitPercent
498+ "OFFSET_UNIT_PIXEL" -> Right OffSetUnitPixel
499+ "OFFSET_UNIT_PIXEL_FROM_CENTER" -> Right OffSetUnitPixelFromCenter
500+ x -> Left ("Unable to parse CreativeAssetPositionLeftUnit from: " <> x)
501501
502−instance ToText CreativeAssetPositionLeftUnit where
503− toText = \case
502+instance ToHttpApiData CreativeAssetPositionLeftUnit where
503+ toQueryParam = \case
504504 OffSetUnitPercent -> "OFFSET_UNIT_PERCENT"
505505 OffSetUnitPixel -> "OFFSET_UNIT_PIXEL"
506506 OffSetUnitPixelFromCenter -> "OFFSET_UNIT_PIXEL_FROM_CENTER"
@@ -523,15 +523,15 @@ data PricingScheduleCapCostOption
523523
524524instance Hashable PricingScheduleCapCostOption
525525
526−instance FromText PricingScheduleCapCostOption where
527− fromText = \case
528− "CAP_COST_CUMULATIVE" -> Just CapCostCumulative
529− "CAP_COST_MONTHLY" -> Just CapCostMonthly
530− "CAP_COST_NONE" -> Just CapCostNone
531− _ -> Nothing
526+instance FromHttpApiData PricingScheduleCapCostOption where
527+ parseQueryParam = \case
528+ "CAP_COST_CUMULATIVE" -> Right CapCostCumulative
529+ "CAP_COST_MONTHLY" -> Right CapCostMonthly
530+ "CAP_COST_NONE" -> Right CapCostNone
531+ x -> Left ("Unable to parse PricingScheduleCapCostOption from: " <> x)
532532
533−instance ToText PricingScheduleCapCostOption where
534− toText = \case
533+instance ToHttpApiData PricingScheduleCapCostOption where
534+ toQueryParam = \case
535535 CapCostCumulative -> "CAP_COST_CUMULATIVE"
536536 CapCostMonthly -> "CAP_COST_MONTHLY"
537537 CapCostNone -> "CAP_COST_NONE"
@@ -558,17 +558,17 @@ data UserRolePermissionAvailability
558558
559559instance Hashable UserRolePermissionAvailability
560560
561−instance FromText UserRolePermissionAvailability where
562− fromText = \case
563− "ACCOUNT_ALWAYS" -> Just AccountAlways
564− "ACCOUNT_BY_DEFAULT" -> Just AccountByDefault
565− "NOT_AVAILABLE_BY_DEFAULT" -> Just NotAvailableByDefault
566− "SUBACCOUNT_AND_ACCOUNT_ALWAYS" -> Just SubAccountAndAccountAlways
567− "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" -> Just SubAccountAndAccountByDefault
568− _ -> Nothing
569−
570−instance ToText UserRolePermissionAvailability where
571− toText = \case
561+instance FromHttpApiData UserRolePermissionAvailability where
562+ parseQueryParam = \case
563+ "ACCOUNT_ALWAYS" -> Right AccountAlways
564+ "ACCOUNT_BY_DEFAULT" -> Right AccountByDefault
565+ "NOT_AVAILABLE_BY_DEFAULT" -> Right NotAvailableByDefault
566+ "SUBACCOUNT_AND_ACCOUNT_ALWAYS" -> Right SubAccountAndAccountAlways
567+ "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" -> Right SubAccountAndAccountByDefault
568+ x -> Left ("Unable to parse UserRolePermissionAvailability from: " <> x)
569+
570+instance ToHttpApiData UserRolePermissionAvailability where
571+ toQueryParam = \case
572572 AccountAlways -> "ACCOUNT_ALWAYS"
573573 AccountByDefault -> "ACCOUNT_BY_DEFAULT"
574574 NotAvailableByDefault -> "NOT_AVAILABLE_BY_DEFAULT"
@@ -593,14 +593,14 @@ data DirectorySiteContactAssignmentVisibility
593593
594594instance Hashable DirectorySiteContactAssignmentVisibility
595595
596−instance FromText DirectorySiteContactAssignmentVisibility where
597− fromText = \case
598− "PRIVATE" -> Just Private
599− "PUBLIC" -> Just Public
600− _ -> Nothing
596+instance FromHttpApiData DirectorySiteContactAssignmentVisibility where
597+ parseQueryParam = \case
598+ "PRIVATE" -> Right Private
599+ "PUBLIC" -> Right Public
600+ x -> Left ("Unable to parse DirectorySiteContactAssignmentVisibility from: " <> x)
601601
602−instance ToText DirectorySiteContactAssignmentVisibility where
603− toText = \case
602+instance ToHttpApiData DirectorySiteContactAssignmentVisibility where
603+ toQueryParam = \case
604604 Private -> "PRIVATE"
605605 Public -> "PUBLIC"
606606
@@ -632,17 +632,17 @@ data PlacementCompatibility
632632
633633instance Hashable PlacementCompatibility
634634
635−instance FromText PlacementCompatibility where
636− fromText = \case
637− "APP" -> Just App
638− "APP_INTERSTITIAL" -> Just AppInterstitial
639− "DISPLAY" -> Just Display
640− "DISPLAY_INTERSTITIAL" -> Just DisplayInterstitial
641− "IN_STREAM_VIDEO" -> Just InStreamVideo
642− _ -> Nothing
643−
644−instance ToText PlacementCompatibility where
645− toText = \case
635+instance FromHttpApiData PlacementCompatibility where
636+ parseQueryParam = \case
637+ "APP" -> Right App
638+ "APP_INTERSTITIAL" -> Right AppInterstitial
639+ "DISPLAY" -> Right Display
640+ "DISPLAY_INTERSTITIAL" -> Right DisplayInterstitial
641+ "IN_STREAM_VIDEO" -> Right InStreamVideo
642+ x -> Left ("Unable to parse PlacementCompatibility from: " <> x)
643+
644+instance ToHttpApiData PlacementCompatibility where
645+ toQueryParam = \case
646646 App -> "APP"
647647 AppInterstitial -> "APP_INTERSTITIAL"
648648 Display -> "DISPLAY"
@@ -676,19 +676,19 @@ data ListPopulationTermOperator
676676
677677instance Hashable ListPopulationTermOperator
678678
679−instance FromText ListPopulationTermOperator where
680− fromText = \case
681− "NUM_EQUALS" -> Just NumEquals
682− "NUM_GREATER_THAN" -> Just NumGreaterThan
683− "NUM_GREATER_THAN_EQUAL" -> Just NumGreaterThanEqual
684− "NUM_LESS_THAN" -> Just NumLessThan
685− "NUM_LESS_THAN_EQUAL" -> Just NumLessThanEqual
686− "STRING_CONTAINS" -> Just StringContains
687− "STRING_EQUALS" -> Just StringEquals
688− _ -> Nothing
689−
690−instance ToText ListPopulationTermOperator where
691− toText = \case
679+instance FromHttpApiData ListPopulationTermOperator where
680+ parseQueryParam = \case
681+ "NUM_EQUALS" -> Right NumEquals
682+ "NUM_GREATER_THAN" -> Right NumGreaterThan
683+ "NUM_GREATER_THAN_EQUAL" -> Right NumGreaterThanEqual
684+ "NUM_LESS_THAN" -> Right NumLessThan
685+ "NUM_LESS_THAN_EQUAL" -> Right NumLessThanEqual
686+ "STRING_CONTAINS" -> Right StringContains
687+ "STRING_EQUALS" -> Right StringEquals
688+ x -> Left ("Unable to parse ListPopulationTermOperator from: " <> x)
689+
690+instance ToHttpApiData ListPopulationTermOperator where
691+ toQueryParam = \case
692692 NumEquals -> "NUM_EQUALS"
693693 NumGreaterThan -> "NUM_GREATER_THAN"
694694 NumGreaterThanEqual -> "NUM_GREATER_THAN_EQUAL"
@@ -713,14 +713,14 @@ data PlacementsListPaymentSource
713713
714714instance Hashable PlacementsListPaymentSource
715715
716−instance FromText PlacementsListPaymentSource where
717− fromText = \case
718− "PLACEMENT_AGENCY_PAID" -> Just PlacementAgencyPaid
719− "PLACEMENT_PUBLISHER_PAID" -> Just PlacementPublisherPaid
720− _ -> Nothing
716+instance FromHttpApiData PlacementsListPaymentSource where
717+ parseQueryParam = \case
718+ "PLACEMENT_AGENCY_PAID" -> Right PlacementAgencyPaid
719+ "PLACEMENT_PUBLISHER_PAID" -> Right PlacementPublisherPaid
720+ x -> Left ("Unable to parse PlacementsListPaymentSource from: " <> x)
721721
722−instance ToText PlacementsListPaymentSource where
723− toText = \case
722+instance ToHttpApiData PlacementsListPaymentSource where
723+ toQueryParam = \case
724724 PlacementAgencyPaid -> "PLACEMENT_AGENCY_PAID"
725725 PlacementPublisherPaid -> "PLACEMENT_PUBLISHER_PAID"
726726
@@ -745,15 +745,15 @@ data ReportsListSortField
745745
746746instance Hashable ReportsListSortField
747747
748−instance FromText ReportsListSortField where
749− fromText = \case
750− "ID" -> Just RLSFID
751− "LAST_MODIFIED_TIME" -> Just RLSFLastModifiedTime
752− "NAME" -> Just RLSFName
753− _ -> Nothing
748+instance FromHttpApiData ReportsListSortField where
749+ parseQueryParam = \case
750+ "ID" -> Right RLSFID
751+ "LAST_MODIFIED_TIME" -> Right RLSFLastModifiedTime
752+ "NAME" -> Right RLSFName
753+ x -> Left ("Unable to parse ReportsListSortField from: " <> x)
754754
755−instance ToText ReportsListSortField where
756− toText = \case
755+instance ToHttpApiData ReportsListSortField where
756+ toQueryParam = \case
757757 RLSFID -> "ID"
758758 RLSFLastModifiedTime -> "LAST_MODIFIED_TIME"
759759 RLSFName -> "NAME"
@@ -784,17 +784,17 @@ data AdSlotCompatibility
784784
785785instance Hashable AdSlotCompatibility
786786
787−instance FromText AdSlotCompatibility where
788− fromText = \case
789− "APP" -> Just ASCApp
790− "APP_INTERSTITIAL" -> Just ASCAppInterstitial
791− "DISPLAY" -> Just ASCDisplay
792− "DISPLAY_INTERSTITIAL" -> Just ASCDisplayInterstitial
793− "IN_STREAM_VIDEO" -> Just ASCInStreamVideo
794− _ -> Nothing
795−
796−instance ToText AdSlotCompatibility where
797− toText = \case
787+instance FromHttpApiData AdSlotCompatibility where
788+ parseQueryParam = \case
789+ "APP" -> Right ASCApp
790+ "APP_INTERSTITIAL" -> Right ASCAppInterstitial
791+ "DISPLAY" -> Right ASCDisplay
792+ "DISPLAY_INTERSTITIAL" -> Right ASCDisplayInterstitial
793+ "IN_STREAM_VIDEO" -> Right ASCInStreamVideo
794+ x -> Left ("Unable to parse AdSlotCompatibility from: " <> x)
795+
796+instance ToHttpApiData AdSlotCompatibility where
797+ toQueryParam = \case
798798 ASCApp -> "APP"
799799 ASCAppInterstitial -> "APP_INTERSTITIAL"
800800 ASCDisplay -> "DISPLAY"
@@ -817,14 +817,14 @@ data CampaignsListSortField
817817
818818instance Hashable CampaignsListSortField
819819
820−instance FromText CampaignsListSortField where
821− fromText = \case
822− "ID" -> Just CLSFID
823− "NAME" -> Just CLSFName
824− _ -> Nothing
820+instance FromHttpApiData CampaignsListSortField where
821+ parseQueryParam = \case
822+ "ID" -> Right CLSFID
823+ "NAME" -> Right CLSFName
824+ x -> Left ("Unable to parse CampaignsListSortField from: " <> x)
825825
826−instance ToText CampaignsListSortField where
827− toText = \case
826+instance ToHttpApiData CampaignsListSortField where
827+ toQueryParam = \case
828828 CLSFID -> "ID"
829829 CLSFName -> "NAME"
830830
@@ -846,15 +846,15 @@ data AccountUserProFileTraffickerType
846846
847847instance Hashable AccountUserProFileTraffickerType
848848
849−instance FromText AccountUserProFileTraffickerType where
850− fromText = \case
851− "EXTERNAL_TRAFFICKER" -> Just ExternalTrafficker
852− "INTERNAL_NON_TRAFFICKER" -> Just InternalNonTrafficker
853− "INTERNAL_TRAFFICKER" -> Just InternalTrafficker
854− _ -> Nothing
849+instance FromHttpApiData AccountUserProFileTraffickerType where
850+ parseQueryParam = \case
851+ "EXTERNAL_TRAFFICKER" -> Right ExternalTrafficker
852+ "INTERNAL_NON_TRAFFICKER" -> Right InternalNonTrafficker
853+ "INTERNAL_TRAFFICKER" -> Right InternalTrafficker
854+ x -> Left ("Unable to parse AccountUserProFileTraffickerType from: " <> x)
855855
856−instance ToText AccountUserProFileTraffickerType where
857− toText = \case
856+instance ToHttpApiData AccountUserProFileTraffickerType where
857+ toQueryParam = \case
858858 ExternalTrafficker -> "EXTERNAL_TRAFFICKER"
859859 InternalNonTrafficker -> "INTERNAL_NON_TRAFFICKER"
860860 InternalTrafficker -> "INTERNAL_TRAFFICKER"
@@ -1002,78 +1002,78 @@ data CreativeAssetMetadataDetectedFeaturesItem
10021002
10031003instance Hashable CreativeAssetMetadataDetectedFeaturesItem
10041004
1005−instance FromText CreativeAssetMetadataDetectedFeaturesItem where
1006− fromText = \case
1007− "APPLICATION_CACHE" -> Just ApplicationCache
1008− "AUDIO" -> Just Audio
1009− "CANVAS" -> Just Canvas
1010− "CANVAS_TEXT" -> Just CanvasText
1011− "CSS_ANIMATIONS" -> Just CssAnimations
1012− "CSS_BACKGROUND_SIZE" -> Just CssBackgRoundSize
1013− "CSS_BORDER_IMAGE" -> Just CssBOrderImage
1014− "CSS_BORDER_RADIUS" -> Just CssBOrderRadius
1015− "CSS_BOX_SHADOW" -> Just CssBoxShadow
1016− "CSS_COLUMNS" -> Just CssColumns
1017− "CSS_FLEX_BOX" -> Just CssFlexBox
1018− "CSS_FONT_FACE" -> Just CssFontFace
1019− "CSS_GENERATED_CONTENT" -> Just CssGeneratedContent
1020− "CSS_GRADIENTS" -> Just CssGradients
1021− "CSS_HSLA" -> Just CssHsla
1022− "CSS_MULTIPLE_BGS" -> Just CssMultipleBgs
1023− "CSS_OPACITY" -> Just CssOpacity
1024− "CSS_REFLECTIONS" -> Just CssReflections
1025− "CSS_RGBA" -> Just CssRgba
1026− "CSS_TEXT_SHADOW" -> Just CssTextShadow
1027− "CSS_TRANSFORMS" -> Just CssTransforms
1028− "CSS_TRANSFORMS3D" -> Just CssTRANSFORMS3D
1029− "CSS_TRANSITIONS" -> Just CssTransitions
1030− "DRAG_AND_DROP" -> Just DragAndDrop
1031− "GEO_LOCATION" -> Just GeoLocation
1032− "HASH_CHANGE" -> Just HashChange
1033− "HISTORY" -> Just History
1034− "INDEXED_DB" -> Just IndexedDB
1035− "INLINE_SVG" -> Just InlineSvg
1036− "INPUT_ATTR_AUTOCOMPLETE" -> Just InputAttrAutocomplete
1037− "INPUT_ATTR_AUTOFOCUS" -> Just InputAttrAutofocus
1038− "INPUT_ATTR_LIST" -> Just InputAttrList
1039− "INPUT_ATTR_MAX" -> Just InputAttrMax
1040− "INPUT_ATTR_MIN" -> Just InputAttrMin
1041− "INPUT_ATTR_MULTIPLE" -> Just InputAttrMultiple
1042− "INPUT_ATTR_PATTERN" -> Just InputAttrPattern
1043− "INPUT_ATTR_PLACEHOLDER" -> Just InputAttrPlaceholder
1044− "INPUT_ATTR_REQUIRED" -> Just InputAttrRequired
1045− "INPUT_ATTR_STEP" -> Just InputAttrStep
1046− "INPUT_TYPE_COLOR" -> Just InputTypeColor
1047− "INPUT_TYPE_DATE" -> Just InputTypeDate
1048− "INPUT_TYPE_DATETIME" -> Just InputTypeDatetime
1049− "INPUT_TYPE_DATETIME_LOCAL" -> Just InputTypeDatetimeLocal
1050− "INPUT_TYPE_EMAIL" -> Just InputTypeEmail
1051− "INPUT_TYPE_MONTH" -> Just InputTypeMonth
1052− "INPUT_TYPE_NUMBER" -> Just InputTypeNumber
1053− "INPUT_TYPE_RANGE" -> Just InputTypeRange
1054− "INPUT_TYPE_SEARCH" -> Just InputTypeSearch
1055− "INPUT_TYPE_TEL" -> Just InputTypeTel
1056− "INPUT_TYPE_TIME" -> Just InputTypeTime
1057− "INPUT_TYPE_URL" -> Just InputTypeURL
1058− "INPUT_TYPE_WEEK" -> Just InputTypeWeek
1059− "LOCAL_STORAGE" -> Just LocalStorage
1060− "POST_MESSAGE" -> Just PostMessage
1061− "SESSION_STORAGE" -> Just SessionStorage
1062− "SMIL" -> Just Smil
1063− "SVG_CLIP_PATHS" -> Just SvgClipPaths
1064− "SVG_FE_IMAGE" -> Just SvgFeImage
1065− "SVG_FILTERS" -> Just SvgFilters
1066− "SVG_HREF" -> Just SvgHref
1067− "TOUCH" -> Just Touch
1068− "VIDEO" -> Just Video
1069− "WEBGL" -> Just Webgl
1070− "WEB_SOCKETS" -> Just WebSockets
1071− "WEB_SQL_DATABASE" -> Just WebSQLDatabase
1072− "WEB_WORKERS" -> Just WebWorkers
1073− _ -> Nothing
1074−
1075−instance ToText CreativeAssetMetadataDetectedFeaturesItem where
1076− toText = \case
1005+instance FromHttpApiData CreativeAssetMetadataDetectedFeaturesItem where
1006+ parseQueryParam = \case
1007+ "APPLICATION_CACHE" -> Right ApplicationCache
1008+ "AUDIO" -> Right Audio
1009+ "CANVAS" -> Right Canvas
1010+ "CANVAS_TEXT" -> Right CanvasText
1011+ "CSS_ANIMATIONS" -> Right CssAnimations
1012+ "CSS_BACKGROUND_SIZE" -> Right CssBackgRoundSize
1013+ "CSS_BORDER_IMAGE" -> Right CssBOrderImage
1014+ "CSS_BORDER_RADIUS" -> Right CssBOrderRadius
1015+ "CSS_BOX_SHADOW" -> Right CssBoxShadow
1016+ "CSS_COLUMNS" -> Right CssColumns
1017+ "CSS_FLEX_BOX" -> Right CssFlexBox
1018+ "CSS_FONT_FACE" -> Right CssFontFace
1019+ "CSS_GENERATED_CONTENT" -> Right CssGeneratedContent
1020+ "CSS_GRADIENTS" -> Right CssGradients
1021+ "CSS_HSLA" -> Right CssHsla
1022+ "CSS_MULTIPLE_BGS" -> Right CssMultipleBgs
1023+ "CSS_OPACITY" -> Right CssOpacity
1024+ "CSS_REFLECTIONS" -> Right CssReflections
1025+ "CSS_RGBA" -> Right CssRgba
1026+ "CSS_TEXT_SHADOW" -> Right CssTextShadow
1027+ "CSS_TRANSFORMS" -> Right CssTransforms
1028+ "CSS_TRANSFORMS3D" -> Right CssTRANSFORMS3D
1029+ "CSS_TRANSITIONS" -> Right CssTransitions
1030+ "DRAG_AND_DROP" -> Right DragAndDrop
1031+ "GEO_LOCATION" -> Right GeoLocation
1032+ "HASH_CHANGE" -> Right HashChange
1033+ "HISTORY" -> Right History
1034+ "INDEXED_DB" -> Right IndexedDB
1035+ "INLINE_SVG" -> Right InlineSvg
1036+ "INPUT_ATTR_AUTOCOMPLETE" -> Right InputAttrAutocomplete
1037+ "INPUT_ATTR_AUTOFOCUS" -> Right InputAttrAutofocus
1038+ "INPUT_ATTR_LIST" -> Right InputAttrList
1039+ "INPUT_ATTR_MAX" -> Right InputAttrMax
1040+ "INPUT_ATTR_MIN" -> Right InputAttrMin
1041+ "INPUT_ATTR_MULTIPLE" -> Right InputAttrMultiple
1042+ "INPUT_ATTR_PATTERN" -> Right InputAttrPattern
1043+ "INPUT_ATTR_PLACEHOLDER" -> Right InputAttrPlaceholder
1044+ "INPUT_ATTR_REQUIRED" -> Right InputAttrRequired
1045+ "INPUT_ATTR_STEP" -> Right InputAttrStep
1046+ "INPUT_TYPE_COLOR" -> Right InputTypeColor
1047+ "INPUT_TYPE_DATE" -> Right InputTypeDate
1048+ "INPUT_TYPE_DATETIME" -> Right InputTypeDatetime
1049+ "INPUT_TYPE_DATETIME_LOCAL" -> Right InputTypeDatetimeLocal
1050+ "INPUT_TYPE_EMAIL" -> Right InputTypeEmail
1051+ "INPUT_TYPE_MONTH" -> Right InputTypeMonth
1052+ "INPUT_TYPE_NUMBER" -> Right InputTypeNumber
1053+ "INPUT_TYPE_RANGE" -> Right InputTypeRange
1054+ "INPUT_TYPE_SEARCH" -> Right InputTypeSearch
1055+ "INPUT_TYPE_TEL" -> Right InputTypeTel
1056+ "INPUT_TYPE_TIME" -> Right InputTypeTime
1057+ "INPUT_TYPE_URL" -> Right InputTypeURL
1058+ "INPUT_TYPE_WEEK" -> Right InputTypeWeek
1059+ "LOCAL_STORAGE" -> Right LocalStorage
1060+ "POST_MESSAGE" -> Right PostMessage
1061+ "SESSION_STORAGE" -> Right SessionStorage
1062+ "SMIL" -> Right Smil
1063+ "SVG_CLIP_PATHS" -> Right SvgClipPaths
1064+ "SVG_FE_IMAGE" -> Right SvgFeImage
1065+ "SVG_FILTERS" -> Right SvgFilters
1066+ "SVG_HREF" -> Right SvgHref
1067+ "TOUCH" -> Right Touch
1068+ "VIDEO" -> Right Video
1069+ "WEBGL" -> Right Webgl
1070+ "WEB_SOCKETS" -> Right WebSockets
1071+ "WEB_SQL_DATABASE" -> Right WebSQLDatabase
1072+ "WEB_WORKERS" -> Right WebWorkers
1073+ x -> Left ("Unable to parse CreativeAssetMetadataDetectedFeaturesItem from: " <> x)
1074+
1075+instance ToHttpApiData CreativeAssetMetadataDetectedFeaturesItem where
1076+ toQueryParam = \case
10771077 ApplicationCache -> "APPLICATION_CACHE"
10781078 Audio -> "AUDIO"
10791079 Canvas -> "CANVAS"
@@ -1168,17 +1168,17 @@ data AdsListCompatibility
11681168
11691169instance Hashable AdsListCompatibility
11701170
1171−instance FromText AdsListCompatibility where
1172− fromText = \case
1173− "APP" -> Just ALCApp
1174− "APP_INTERSTITIAL" -> Just ALCAppInterstitial
1175− "DISPLAY" -> Just ALCDisplay
1176− "DISPLAY_INTERSTITIAL" -> Just ALCDisplayInterstitial
1177− "IN_STREAM_VIDEO" -> Just ALCInStreamVideo
1178− _ -> Nothing
1179−
1180−instance ToText AdsListCompatibility where
1181− toText = \case
1171+instance FromHttpApiData AdsListCompatibility where
1172+ parseQueryParam = \case
1173+ "APP" -> Right ALCApp
1174+ "APP_INTERSTITIAL" -> Right ALCAppInterstitial
1175+ "DISPLAY" -> Right ALCDisplay
1176+ "DISPLAY_INTERSTITIAL" -> Right ALCDisplayInterstitial
1177+ "IN_STREAM_VIDEO" -> Right ALCInStreamVideo
1178+ x -> Left ("Unable to parse AdsListCompatibility from: " <> x)
1179+
1180+instance ToHttpApiData AdsListCompatibility where
1181+ toQueryParam = \case
11821182 ALCApp -> "APP"
11831183 ALCAppInterstitial -> "APP_INTERSTITIAL"
11841184 ALCDisplay -> "DISPLAY"
@@ -1202,14 +1202,14 @@ data EventTagStatus
12021202
12031203instance Hashable EventTagStatus
12041204
1205−instance FromText EventTagStatus where
1206− fromText = \case
1207− "DISABLED" -> Just Disabled
1208− "ENABLED" -> Just Enabled
1209− _ -> Nothing
1205+instance FromHttpApiData EventTagStatus where
1206+ parseQueryParam = \case
1207+ "DISABLED" -> Right Disabled
1208+ "ENABLED" -> Right Enabled
1209+ x -> Left ("Unable to parse EventTagStatus from: " <> x)
12101210
1211−instance ToText EventTagStatus where
1212− toText = \case
1211+instance ToHttpApiData EventTagStatus where
1212+ toQueryParam = \case
12131213 Disabled -> "DISABLED"
12141214 Enabled -> "ENABLED"
12151215
@@ -1229,14 +1229,14 @@ data SitesListSortField
12291229
12301230instance Hashable SitesListSortField
12311231
1232−instance FromText SitesListSortField where
1233− fromText = \case
1234− "ID" -> Just SLSFID
1235− "NAME" -> Just SLSFName
1236− _ -> Nothing
1232+instance FromHttpApiData SitesListSortField where
1233+ parseQueryParam = \case
1234+ "ID" -> Right SLSFID
1235+ "NAME" -> Right SLSFName
1236+ x -> Left ("Unable to parse SitesListSortField from: " <> x)
12371237
1238−instance ToText SitesListSortField where
1239− toText = \case
1238+instance ToHttpApiData SitesListSortField where
1239+ toQueryParam = \case
12401240 SLSFID -> "ID"
12411241 SLSFName -> "NAME"
12421242
@@ -1261,15 +1261,15 @@ data EventTagsListEventTagTypes
12611261
12621262instance Hashable EventTagsListEventTagTypes
12631263
1264−instance FromText EventTagsListEventTagTypes where
1265− fromText = \case
1266− "CLICK_THROUGH_EVENT_TAG" -> Just ClickThroughEventTag
1267− "IMPRESSION_IMAGE_EVENT_TAG" -> Just ImpressionImageEventTag
1268− "IMPRESSION_JAVASCRIPT_EVENT_TAG" -> Just ImpressionJavascriptEventTag
1269− _ -> Nothing
1264+instance FromHttpApiData EventTagsListEventTagTypes where
1265+ parseQueryParam = \case
1266+ "CLICK_THROUGH_EVENT_TAG" -> Right ClickThroughEventTag
1267+ "IMPRESSION_IMAGE_EVENT_TAG" -> Right ImpressionImageEventTag
1268+ "IMPRESSION_JAVASCRIPT_EVENT_TAG" -> Right ImpressionJavascriptEventTag
1269+ x -> Left ("Unable to parse EventTagsListEventTagTypes from: " <> x)
12701270
1271−instance ToText EventTagsListEventTagTypes where
1272− toText = \case
1271+instance ToHttpApiData EventTagsListEventTagTypes where
1272+ toQueryParam = \case
12731273 ClickThroughEventTag -> "CLICK_THROUGH_EVENT_TAG"
12741274 ImpressionImageEventTag -> "IMPRESSION_IMAGE_EVENT_TAG"
12751275 ImpressionJavascriptEventTag -> "IMPRESSION_JAVASCRIPT_EVENT_TAG"
@@ -1294,16 +1294,16 @@ data FileStatus
12941294
12951295instance Hashable FileStatus
12961296
1297−instance FromText FileStatus where
1298− fromText = \case
1299− "CANCELLED" -> Just Cancelled
1300− "FAILED" -> Just Failed
1301− "PROCESSING" -> Just Processing
1302− "REPORT_AVAILABLE" -> Just ReportAvailable
1303− _ -> Nothing
1297+instance FromHttpApiData FileStatus where
1298+ parseQueryParam = \case
1299+ "CANCELLED" -> Right Cancelled
1300+ "FAILED" -> Right Failed
1301+ "PROCESSING" -> Right Processing
1302+ "REPORT_AVAILABLE" -> Right ReportAvailable
1303+ x -> Left ("Unable to parse FileStatus from: " <> x)
13041304
1305−instance ToText FileStatus where
1306− toText = \case
1305+instance ToHttpApiData FileStatus where
1306+ toQueryParam = \case
13071307 Cancelled -> "CANCELLED"
13081308 Failed -> "FAILED"
13091309 Processing -> "PROCESSING"
@@ -1329,16 +1329,16 @@ data CreativeCustomEventArtworkType
13291329
13301330instance Hashable CreativeCustomEventArtworkType
13311331
1332−instance FromText CreativeCustomEventArtworkType where
1333− fromText = \case
1334− "ARTWORK_TYPE_FLASH" -> Just ArtworkTypeFlash
1335− "ARTWORK_TYPE_HTML5" -> Just ArtworkTypeHTML5
1336− "ARTWORK_TYPE_IMAGE" -> Just ArtworkTypeImage
1337− "ARTWORK_TYPE_MIXED" -> Just ArtworkTypeMixed
1338− _ -> Nothing
1332+instance FromHttpApiData CreativeCustomEventArtworkType where
1333+ parseQueryParam = \case
1334+ "ARTWORK_TYPE_FLASH" -> Right ArtworkTypeFlash
1335+ "ARTWORK_TYPE_HTML5" -> Right ArtworkTypeHTML5
1336+ "ARTWORK_TYPE_IMAGE" -> Right ArtworkTypeImage
1337+ "ARTWORK_TYPE_MIXED" -> Right ArtworkTypeMixed
1338+ x -> Left ("Unable to parse CreativeCustomEventArtworkType from: " <> x)
13391339
1340−instance ToText CreativeCustomEventArtworkType where
1341− toText = \case
1340+instance ToHttpApiData CreativeCustomEventArtworkType where
1341+ toQueryParam = \case
13421342 ArtworkTypeFlash -> "ARTWORK_TYPE_FLASH"
13431343 ArtworkTypeHTML5 -> "ARTWORK_TYPE_HTML5"
13441344 ArtworkTypeImage -> "ARTWORK_TYPE_IMAGE"
@@ -1362,15 +1362,15 @@ data FloodlightConfigurationNATuralSearchConversionAttributionOption
13621362
13631363instance Hashable FloodlightConfigurationNATuralSearchConversionAttributionOption
13641364
1365−instance FromText FloodlightConfigurationNATuralSearchConversionAttributionOption where
1366− fromText = \case
1367− "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION" -> Just ExcludeNATuralSearchConversionAttribution
1368− "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION" -> Just IncludeNATuralSearchConversionAttribution
1369− "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" -> Just IncludeNATuralSearchTieredConversionAttribution
1370− _ -> Nothing
1365+instance FromHttpApiData FloodlightConfigurationNATuralSearchConversionAttributionOption where
1366+ parseQueryParam = \case
1367+ "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION" -> Right ExcludeNATuralSearchConversionAttribution
1368+ "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION" -> Right IncludeNATuralSearchConversionAttribution
1369+ "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" -> Right IncludeNATuralSearchTieredConversionAttribution
1370+ x -> Left ("Unable to parse FloodlightConfigurationNATuralSearchConversionAttributionOption from: " <> x)
13711371
1372−instance ToText FloodlightConfigurationNATuralSearchConversionAttributionOption where
1373− toText = \case
1372+instance ToHttpApiData FloodlightConfigurationNATuralSearchConversionAttributionOption where
1373+ toQueryParam = \case
13741374 ExcludeNATuralSearchConversionAttribution -> "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
13751375 IncludeNATuralSearchConversionAttribution -> "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
13761376 IncludeNATuralSearchTieredConversionAttribution -> "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION"
@@ -1396,16 +1396,16 @@ data CreativeAssetArtworkType
13961396
13971397instance Hashable CreativeAssetArtworkType
13981398
1399−instance FromText CreativeAssetArtworkType where
1400− fromText = \case
1401− "ARTWORK_TYPE_FLASH" -> Just CAATArtworkTypeFlash
1402− "ARTWORK_TYPE_HTML5" -> Just CAATArtworkTypeHTML5
1403− "ARTWORK_TYPE_IMAGE" -> Just CAATArtworkTypeImage
1404− "ARTWORK_TYPE_MIXED" -> Just CAATArtworkTypeMixed
1405− _ -> Nothing
1399+instance FromHttpApiData CreativeAssetArtworkType where
1400+ parseQueryParam = \case
1401+ "ARTWORK_TYPE_FLASH" -> Right CAATArtworkTypeFlash
1402+ "ARTWORK_TYPE_HTML5" -> Right CAATArtworkTypeHTML5
1403+ "ARTWORK_TYPE_IMAGE" -> Right CAATArtworkTypeImage
1404+ "ARTWORK_TYPE_MIXED" -> Right CAATArtworkTypeMixed
1405+ x -> Left ("Unable to parse CreativeAssetArtworkType from: " <> x)
14061406
1407−instance ToText CreativeAssetArtworkType where
1408− toText = \case
1407+instance ToHttpApiData CreativeAssetArtworkType where
1408+ toQueryParam = \case
14091409 CAATArtworkTypeFlash -> "ARTWORK_TYPE_FLASH"
14101410 CAATArtworkTypeHTML5 -> "ARTWORK_TYPE_HTML5"
14111411 CAATArtworkTypeImage -> "ARTWORK_TYPE_IMAGE"
@@ -1427,14 +1427,14 @@ data FloodlightActivitiesListSortOrder
14271427
14281428instance Hashable FloodlightActivitiesListSortOrder
14291429
1430−instance FromText FloodlightActivitiesListSortOrder where
1431− fromText = \case
1432− "ASCENDING" -> Just FALSOAscending
1433− "DESCENDING" -> Just FALSODescending
1434− _ -> Nothing
1430+instance FromHttpApiData FloodlightActivitiesListSortOrder where
1431+ parseQueryParam = \case
1432+ "ASCENDING" -> Right FALSOAscending
1433+ "DESCENDING" -> Right FALSODescending
1434+ x -> Left ("Unable to parse FloodlightActivitiesListSortOrder from: " <> x)
14351435
1436−instance ToText FloodlightActivitiesListSortOrder where
1437− toText = \case
1436+instance ToHttpApiData FloodlightActivitiesListSortOrder where
1437+ toQueryParam = \case
14381438 FALSOAscending -> "ASCENDING"
14391439 FALSODescending -> "DESCENDING"
14401440
@@ -1455,14 +1455,14 @@ data FileFormat
14551455
14561456instance Hashable FileFormat
14571457
1458−instance FromText FileFormat where
1459− fromText = \case
1460− "CSV" -> Just CSV
1461− "EXCEL" -> Just Excel
1462− _ -> Nothing
1458+instance FromHttpApiData FileFormat where
1459+ parseQueryParam = \case
1460+ "CSV" -> Right CSV
1461+ "EXCEL" -> Right Excel
1462+ x -> Left ("Unable to parse FileFormat from: " <> x)
14631463
1464−instance ToText FileFormat where
1465− toText = \case
1464+instance ToHttpApiData FileFormat where
1465+ toQueryParam = \case
14661466 CSV -> "CSV"
14671467 Excel -> "EXCEL"
14681468
@@ -1488,17 +1488,17 @@ data PricingSchedulePricingType
14881488
14891489instance Hashable PricingSchedulePricingType
14901490
1491−instance FromText PricingSchedulePricingType where
1492− fromText = \case
1493− "PRICING_TYPE_CPA" -> Just PricingTypeCpa
1494− "PRICING_TYPE_CPC" -> Just PricingTypeCpc
1495− "PRICING_TYPE_CPM" -> Just PricingTypeCpm
1496− "PRICING_TYPE_FLAT_RATE_CLICKS" -> Just PricingTypeFlatRateClicks
1497− "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Just PricingTypeFlatRateImpressions
1498− _ -> Nothing
1499−
1500−instance ToText PricingSchedulePricingType where
1501− toText = \case
1491+instance FromHttpApiData PricingSchedulePricingType where
1492+ parseQueryParam = \case
1493+ "PRICING_TYPE_CPA" -> Right PricingTypeCpa
1494+ "PRICING_TYPE_CPC" -> Right PricingTypeCpc
1495+ "PRICING_TYPE_CPM" -> Right PricingTypeCpm
1496+ "PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PricingTypeFlatRateClicks
1497+ "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PricingTypeFlatRateImpressions
1498+ x -> Left ("Unable to parse PricingSchedulePricingType from: " <> x)
1499+
1500+instance ToHttpApiData PricingSchedulePricingType where
1501+ toQueryParam = \case
15021502 PricingTypeCpa -> "PRICING_TYPE_CPA"
15031503 PricingTypeCpc -> "PRICING_TYPE_CPC"
15041504 PricingTypeCpm -> "PRICING_TYPE_CPM"
@@ -1527,17 +1527,17 @@ data CreativeCustomEventTargetType
15271527
15281528instance Hashable CreativeCustomEventTargetType
15291529
1530−instance FromText CreativeCustomEventTargetType where
1531− fromText = \case
1532− "TARGET_BLANK" -> Just TargetBlank
1533− "TARGET_PARENT" -> Just TargetParent
1534− "TARGET_POPUP" -> Just TargetPopup
1535− "TARGET_SELF" -> Just TargetSelf
1536− "TARGET_TOP" -> Just TargetTop
1537− _ -> Nothing
1538−
1539−instance ToText CreativeCustomEventTargetType where
1540− toText = \case
1530+instance FromHttpApiData CreativeCustomEventTargetType where
1531+ parseQueryParam = \case
1532+ "TARGET_BLANK" -> Right TargetBlank
1533+ "TARGET_PARENT" -> Right TargetParent
1534+ "TARGET_POPUP" -> Right TargetPopup
1535+ "TARGET_SELF" -> Right TargetSelf
1536+ "TARGET_TOP" -> Right TargetTop
1537+ x -> Left ("Unable to parse CreativeCustomEventTargetType from: " <> x)
1538+
1539+instance ToHttpApiData CreativeCustomEventTargetType where
1540+ toQueryParam = \case
15411541 TargetBlank -> "TARGET_BLANK"
15421542 TargetParent -> "TARGET_PARENT"
15431543 TargetPopup -> "TARGET_POPUP"
@@ -1562,14 +1562,14 @@ data ReportsListScope
15621562
15631563instance Hashable ReportsListScope
15641564
1565−instance FromText ReportsListScope where
1566− fromText = \case
1567− "ALL" -> Just All
1568− "MINE" -> Just Mine
1569− _ -> Nothing
1565+instance FromHttpApiData ReportsListScope where
1566+ parseQueryParam = \case
1567+ "ALL" -> Right All
1568+ "MINE" -> Right Mine
1569+ x -> Left ("Unable to parse ReportsListScope from: " <> x)
15701570
1571−instance ToText ReportsListScope where
1572− toText = \case
1571+instance ToHttpApiData ReportsListScope where
1572+ toQueryParam = \case
15731573 All -> "ALL"
15741574 Mine -> "MINE"
15751575
@@ -1592,15 +1592,15 @@ data CreativeAssetDurationType
15921592
15931593instance Hashable CreativeAssetDurationType
15941594
1595−instance FromText CreativeAssetDurationType where
1596− fromText = \case
1597− "ASSET_DURATION_TYPE_AUTO" -> Just AssetDurationTypeAuto
1598− "ASSET_DURATION_TYPE_CUSTOM" -> Just AssetDurationTypeCustom
1599− "ASSET_DURATION_TYPE_NONE" -> Just AssetDurationTypeNone
1600− _ -> Nothing
1595+instance FromHttpApiData CreativeAssetDurationType where
1596+ parseQueryParam = \case
1597+ "ASSET_DURATION_TYPE_AUTO" -> Right AssetDurationTypeAuto
1598+ "ASSET_DURATION_TYPE_CUSTOM" -> Right AssetDurationTypeCustom
1599+ "ASSET_DURATION_TYPE_NONE" -> Right AssetDurationTypeNone
1600+ x -> Left ("Unable to parse CreativeAssetDurationType from: " <> x)
16011601
1602−instance ToText CreativeAssetDurationType where
1603− toText = \case
1602+instance ToHttpApiData CreativeAssetDurationType where
1603+ toQueryParam = \case
16041604 AssetDurationTypeAuto -> "ASSET_DURATION_TYPE_AUTO"
16051605 AssetDurationTypeCustom -> "ASSET_DURATION_TYPE_CUSTOM"
16061606 AssetDurationTypeNone -> "ASSET_DURATION_TYPE_NONE"
@@ -1639,23 +1639,23 @@ data TargetableRemarketingListListSource
16391639
16401640instance Hashable TargetableRemarketingListListSource
16411641
1642−instance FromText TargetableRemarketingListListSource where
1643− fromText = \case
1644− "REMARKETING_LIST_SOURCE_ADX" -> Just RemarketingListSourceAdx
1645− "REMARKETING_LIST_SOURCE_DBM" -> Just RemarketingListSourceDBm
1646− "REMARKETING_LIST_SOURCE_DFA" -> Just RemarketingListSourceDfa
1647− "REMARKETING_LIST_SOURCE_DFP" -> Just RemarketingListSourceDfp
1648− "REMARKETING_LIST_SOURCE_DMP" -> Just RemarketingListSourceDmp
1649− "REMARKETING_LIST_SOURCE_GA" -> Just RemarketingListSourceGa
1650− "REMARKETING_LIST_SOURCE_GPLUS" -> Just RemarketingListSourceGplus
1651− "REMARKETING_LIST_SOURCE_OTHER" -> Just RemarketingListSourceOther
1652− "REMARKETING_LIST_SOURCE_PLAY_STORE" -> Just RemarketingListSourcePlayStore
1653− "REMARKETING_LIST_SOURCE_XFP" -> Just RemarketingListSourceXfp
1654− "REMARKETING_LIST_SOURCE_YOUTUBE" -> Just RemarketingListSourceYouTube
1655− _ -> Nothing
1656−
1657−instance ToText TargetableRemarketingListListSource where
1658− toText = \case
1642+instance FromHttpApiData TargetableRemarketingListListSource where
1643+ parseQueryParam = \case
1644+ "REMARKETING_LIST_SOURCE_ADX" -> Right RemarketingListSourceAdx
1645+ "REMARKETING_LIST_SOURCE_DBM" -> Right RemarketingListSourceDBm
1646+ "REMARKETING_LIST_SOURCE_DFA" -> Right RemarketingListSourceDfa
1647+ "REMARKETING_LIST_SOURCE_DFP" -> Right RemarketingListSourceDfp
1648+ "REMARKETING_LIST_SOURCE_DMP" -> Right RemarketingListSourceDmp
1649+ "REMARKETING_LIST_SOURCE_GA" -> Right RemarketingListSourceGa
1650+ "REMARKETING_LIST_SOURCE_GPLUS" -> Right RemarketingListSourceGplus
1651+ "REMARKETING_LIST_SOURCE_OTHER" -> Right RemarketingListSourceOther
1652+ "REMARKETING_LIST_SOURCE_PLAY_STORE" -> Right RemarketingListSourcePlayStore
1653+ "REMARKETING_LIST_SOURCE_XFP" -> Right RemarketingListSourceXfp
1654+ "REMARKETING_LIST_SOURCE_YOUTUBE" -> Right RemarketingListSourceYouTube
1655+ x -> Left ("Unable to parse TargetableRemarketingListListSource from: " <> x)
1656+
1657+instance ToHttpApiData TargetableRemarketingListListSource where
1658+ toQueryParam = \case
16591659 RemarketingListSourceAdx -> "REMARKETING_LIST_SOURCE_ADX"
16601660 RemarketingListSourceDBm -> "REMARKETING_LIST_SOURCE_DBM"
16611661 RemarketingListSourceDfa -> "REMARKETING_LIST_SOURCE_DFA"
@@ -1684,14 +1684,14 @@ data CreativeGroupsListSortField
16841684
16851685instance Hashable CreativeGroupsListSortField
16861686
1687−instance FromText CreativeGroupsListSortField where
1688− fromText = \case
1689− "ID" -> Just CGLSFID
1690− "NAME" -> Just CGLSFName
1691− _ -> Nothing
1687+instance FromHttpApiData CreativeGroupsListSortField where
1688+ parseQueryParam = \case
1689+ "ID" -> Right CGLSFID
1690+ "NAME" -> Right CGLSFName
1691+ x -> Left ("Unable to parse CreativeGroupsListSortField from: " <> x)
16921692
1693−instance ToText CreativeGroupsListSortField where
1694− toText = \case
1693+instance ToHttpApiData CreativeGroupsListSortField where
1694+ toQueryParam = \case
16951695 CGLSFID -> "ID"
16961696 CGLSFName -> "NAME"
16971697
@@ -1711,14 +1711,14 @@ data PlacementsListSortField
17111711
17121712instance Hashable PlacementsListSortField
17131713
1714−instance FromText PlacementsListSortField where
1715− fromText = \case
1716− "ID" -> Just PLSFID
1717− "NAME" -> Just PLSFName
1718− _ -> Nothing
1714+instance FromHttpApiData PlacementsListSortField where
1715+ parseQueryParam = \case
1716+ "ID" -> Right PLSFID
1717+ "NAME" -> Right PLSFName
1718+ x -> Left ("Unable to parse PlacementsListSortField from: " <> x)
17191719
1720−instance ToText PlacementsListSortField where
1721− toText = \case
1720+instance ToHttpApiData PlacementsListSortField where
1721+ toQueryParam = \case
17221722 PLSFID -> "ID"
17231723 PLSFName -> "NAME"
17241724
@@ -1865,78 +1865,78 @@ data CreativeBackupImageFeaturesItem
18651865
18661866instance Hashable CreativeBackupImageFeaturesItem
18671867
1868−instance FromText CreativeBackupImageFeaturesItem where
1869− fromText = \case
1870− "APPLICATION_CACHE" -> Just CBIFIApplicationCache
1871− "AUDIO" -> Just CBIFIAudio
1872− "CANVAS" -> Just CBIFICanvas
1873− "CANVAS_TEXT" -> Just CBIFICanvasText
1874− "CSS_ANIMATIONS" -> Just CBIFICssAnimations
1875− "CSS_BACKGROUND_SIZE" -> Just CBIFICssBackgRoundSize
1876− "CSS_BORDER_IMAGE" -> Just CBIFICssBOrderImage
1877− "CSS_BORDER_RADIUS" -> Just CBIFICssBOrderRadius
1878− "CSS_BOX_SHADOW" -> Just CBIFICssBoxShadow
1879− "CSS_COLUMNS" -> Just CBIFICssColumns
1880− "CSS_FLEX_BOX" -> Just CBIFICssFlexBox
1881− "CSS_FONT_FACE" -> Just CBIFICssFontFace
1882− "CSS_GENERATED_CONTENT" -> Just CBIFICssGeneratedContent
1883− "CSS_GRADIENTS" -> Just CBIFICssGradients
1884− "CSS_HSLA" -> Just CBIFICssHsla
1885− "CSS_MULTIPLE_BGS" -> Just CBIFICssMultipleBgs
1886− "CSS_OPACITY" -> Just CBIFICssOpacity
1887− "CSS_REFLECTIONS" -> Just CBIFICssReflections
1888− "CSS_RGBA" -> Just CBIFICssRgba
1889− "CSS_TEXT_SHADOW" -> Just CBIFICssTextShadow
1890− "CSS_TRANSFORMS" -> Just CBIFICssTransforms
1891− "CSS_TRANSFORMS3D" -> Just CBIFICssTRANSFORMS3D
1892− "CSS_TRANSITIONS" -> Just CBIFICssTransitions
1893− "DRAG_AND_DROP" -> Just CBIFIDragAndDrop
1894− "GEO_LOCATION" -> Just CBIFIGeoLocation
1895− "HASH_CHANGE" -> Just CBIFIHashChange
1896− "HISTORY" -> Just CBIFIHistory
1897− "INDEXED_DB" -> Just CBIFIIndexedDB
1898− "INLINE_SVG" -> Just CBIFIInlineSvg
1899− "INPUT_ATTR_AUTOCOMPLETE" -> Just CBIFIInputAttrAutocomplete
1900− "INPUT_ATTR_AUTOFOCUS" -> Just CBIFIInputAttrAutofocus
1901− "INPUT_ATTR_LIST" -> Just CBIFIInputAttrList
1902− "INPUT_ATTR_MAX" -> Just CBIFIInputAttrMax
1903− "INPUT_ATTR_MIN" -> Just CBIFIInputAttrMin
1904− "INPUT_ATTR_MULTIPLE" -> Just CBIFIInputAttrMultiple
1905− "INPUT_ATTR_PATTERN" -> Just CBIFIInputAttrPattern
1906− "INPUT_ATTR_PLACEHOLDER" -> Just CBIFIInputAttrPlaceholder
1907− "INPUT_ATTR_REQUIRED" -> Just CBIFIInputAttrRequired
1908− "INPUT_ATTR_STEP" -> Just CBIFIInputAttrStep
1909− "INPUT_TYPE_COLOR" -> Just CBIFIInputTypeColor
1910− "INPUT_TYPE_DATE" -> Just CBIFIInputTypeDate
1911− "INPUT_TYPE_DATETIME" -> Just CBIFIInputTypeDatetime
1912− "INPUT_TYPE_DATETIME_LOCAL" -> Just CBIFIInputTypeDatetimeLocal
1913− "INPUT_TYPE_EMAIL" -> Just CBIFIInputTypeEmail
1914− "INPUT_TYPE_MONTH" -> Just CBIFIInputTypeMonth
1915− "INPUT_TYPE_NUMBER" -> Just CBIFIInputTypeNumber
1916− "INPUT_TYPE_RANGE" -> Just CBIFIInputTypeRange
1917− "INPUT_TYPE_SEARCH" -> Just CBIFIInputTypeSearch
1918− "INPUT_TYPE_TEL" -> Just CBIFIInputTypeTel
1919− "INPUT_TYPE_TIME" -> Just CBIFIInputTypeTime
1920− "INPUT_TYPE_URL" -> Just CBIFIInputTypeURL
1921− "INPUT_TYPE_WEEK" -> Just CBIFIInputTypeWeek
1922− "LOCAL_STORAGE" -> Just CBIFILocalStorage
1923− "POST_MESSAGE" -> Just CBIFIPostMessage
1924− "SESSION_STORAGE" -> Just CBIFISessionStorage
1925− "SMIL" -> Just CBIFISmil
1926− "SVG_CLIP_PATHS" -> Just CBIFISvgClipPaths
1927− "SVG_FE_IMAGE" -> Just CBIFISvgFeImage
1928− "SVG_FILTERS" -> Just CBIFISvgFilters
1929− "SVG_HREF" -> Just CBIFISvgHref
1930− "TOUCH" -> Just CBIFITouch
1931− "VIDEO" -> Just CBIFIVideo
1932− "WEBGL" -> Just CBIFIWebgl
1933− "WEB_SOCKETS" -> Just CBIFIWebSockets
1934− "WEB_SQL_DATABASE" -> Just CBIFIWebSQLDatabase
1935− "WEB_WORKERS" -> Just CBIFIWebWorkers
1936− _ -> Nothing
1937−
1938−instance ToText CreativeBackupImageFeaturesItem where
1939− toText = \case
1868+instance FromHttpApiData CreativeBackupImageFeaturesItem where
1869+ parseQueryParam = \case
1870+ "APPLICATION_CACHE" -> Right CBIFIApplicationCache
1871+ "AUDIO" -> Right CBIFIAudio
1872+ "CANVAS" -> Right CBIFICanvas
1873+ "CANVAS_TEXT" -> Right CBIFICanvasText
1874+ "CSS_ANIMATIONS" -> Right CBIFICssAnimations
1875+ "CSS_BACKGROUND_SIZE" -> Right CBIFICssBackgRoundSize
1876+ "CSS_BORDER_IMAGE" -> Right CBIFICssBOrderImage
1877+ "CSS_BORDER_RADIUS" -> Right CBIFICssBOrderRadius
1878+ "CSS_BOX_SHADOW" -> Right CBIFICssBoxShadow
1879+ "CSS_COLUMNS" -> Right CBIFICssColumns
1880+ "CSS_FLEX_BOX" -> Right CBIFICssFlexBox
1881+ "CSS_FONT_FACE" -> Right CBIFICssFontFace
1882+ "CSS_GENERATED_CONTENT" -> Right CBIFICssGeneratedContent
1883+ "CSS_GRADIENTS" -> Right CBIFICssGradients
1884+ "CSS_HSLA" -> Right CBIFICssHsla
1885+ "CSS_MULTIPLE_BGS" -> Right CBIFICssMultipleBgs
1886+ "CSS_OPACITY" -> Right CBIFICssOpacity
1887+ "CSS_REFLECTIONS" -> Right CBIFICssReflections
1888+ "CSS_RGBA" -> Right CBIFICssRgba
1889+ "CSS_TEXT_SHADOW" -> Right CBIFICssTextShadow
1890+ "CSS_TRANSFORMS" -> Right CBIFICssTransforms
1891+ "CSS_TRANSFORMS3D" -> Right CBIFICssTRANSFORMS3D
1892+ "CSS_TRANSITIONS" -> Right CBIFICssTransitions
1893+ "DRAG_AND_DROP" -> Right CBIFIDragAndDrop
1894+ "GEO_LOCATION" -> Right CBIFIGeoLocation
1895+ "HASH_CHANGE" -> Right CBIFIHashChange
1896+ "HISTORY" -> Right CBIFIHistory
1897+ "INDEXED_DB" -> Right CBIFIIndexedDB
1898+ "INLINE_SVG" -> Right CBIFIInlineSvg
1899+ "INPUT_ATTR_AUTOCOMPLETE" -> Right CBIFIInputAttrAutocomplete
1900+ "INPUT_ATTR_AUTOFOCUS" -> Right CBIFIInputAttrAutofocus
1901+ "INPUT_ATTR_LIST" -> Right CBIFIInputAttrList
1902+ "INPUT_ATTR_MAX" -> Right CBIFIInputAttrMax
1903+ "INPUT_ATTR_MIN" -> Right CBIFIInputAttrMin
1904+ "INPUT_ATTR_MULTIPLE" -> Right CBIFIInputAttrMultiple
1905+ "INPUT_ATTR_PATTERN" -> Right CBIFIInputAttrPattern
1906+ "INPUT_ATTR_PLACEHOLDER" -> Right CBIFIInputAttrPlaceholder
1907+ "INPUT_ATTR_REQUIRED" -> Right CBIFIInputAttrRequired
1908+ "INPUT_ATTR_STEP" -> Right CBIFIInputAttrStep
1909+ "INPUT_TYPE_COLOR" -> Right CBIFIInputTypeColor
1910+ "INPUT_TYPE_DATE" -> Right CBIFIInputTypeDate
1911+ "INPUT_TYPE_DATETIME" -> Right CBIFIInputTypeDatetime
1912+ "INPUT_TYPE_DATETIME_LOCAL" -> Right CBIFIInputTypeDatetimeLocal
1913+ "INPUT_TYPE_EMAIL" -> Right CBIFIInputTypeEmail
1914+ "INPUT_TYPE_MONTH" -> Right CBIFIInputTypeMonth
1915+ "INPUT_TYPE_NUMBER" -> Right CBIFIInputTypeNumber
1916+ "INPUT_TYPE_RANGE" -> Right CBIFIInputTypeRange
1917+ "INPUT_TYPE_SEARCH" -> Right CBIFIInputTypeSearch
1918+ "INPUT_TYPE_TEL" -> Right CBIFIInputTypeTel
1919+ "INPUT_TYPE_TIME" -> Right CBIFIInputTypeTime
1920+ "INPUT_TYPE_URL" -> Right CBIFIInputTypeURL
1921+ "INPUT_TYPE_WEEK" -> Right CBIFIInputTypeWeek
1922+ "LOCAL_STORAGE" -> Right CBIFILocalStorage
1923+ "POST_MESSAGE" -> Right CBIFIPostMessage
1924+ "SESSION_STORAGE" -> Right CBIFISessionStorage
1925+ "SMIL" -> Right CBIFISmil
1926+ "SVG_CLIP_PATHS" -> Right CBIFISvgClipPaths
1927+ "SVG_FE_IMAGE" -> Right CBIFISvgFeImage
1928+ "SVG_FILTERS" -> Right CBIFISvgFilters
1929+ "SVG_HREF" -> Right CBIFISvgHref
1930+ "TOUCH" -> Right CBIFITouch
1931+ "VIDEO" -> Right CBIFIVideo
1932+ "WEBGL" -> Right CBIFIWebgl
1933+ "WEB_SOCKETS" -> Right CBIFIWebSockets
1934+ "WEB_SQL_DATABASE" -> Right CBIFIWebSQLDatabase
1935+ "WEB_WORKERS" -> Right CBIFIWebWorkers
1936+ x -> Left ("Unable to parse CreativeBackupImageFeaturesItem from: " <> x)
1937+
1938+instance ToHttpApiData CreativeBackupImageFeaturesItem where
1939+ toQueryParam = \case
19401940 CBIFIApplicationCache -> "APPLICATION_CACHE"
19411941 CBIFIAudio -> "AUDIO"
19421942 CBIFICanvas -> "CANVAS"
@@ -2020,14 +2020,14 @@ data AdvertisersListSortOrder
20202020
20212021instance Hashable AdvertisersListSortOrder
20222022
2023−instance FromText AdvertisersListSortOrder where
2024− fromText = \case
2025− "ASCENDING" -> Just ALSOAscending
2026− "DESCENDING" -> Just ALSODescending
2027− _ -> Nothing
2023+instance FromHttpApiData AdvertisersListSortOrder where
2024+ parseQueryParam = \case
2025+ "ASCENDING" -> Right ALSOAscending
2026+ "DESCENDING" -> Right ALSODescending
2027+ x -> Left ("Unable to parse AdvertisersListSortOrder from: " <> x)
20282028
2029−instance ToText AdvertisersListSortOrder where
2030− toText = \case
2029+instance ToHttpApiData AdvertisersListSortOrder where
2030+ toQueryParam = \case
20312031 ALSOAscending -> "ASCENDING"
20322032 ALSODescending -> "DESCENDING"
20332033
@@ -2047,14 +2047,14 @@ data CreativeFieldsListSortField
20472047
20482048instance Hashable CreativeFieldsListSortField
20492049
2050−instance FromText CreativeFieldsListSortField where
2051− fromText = \case
2052− "ID" -> Just CFLSFID
2053− "NAME" -> Just CFLSFName
2054− _ -> Nothing
2050+instance FromHttpApiData CreativeFieldsListSortField where
2051+ parseQueryParam = \case
2052+ "ID" -> Right CFLSFID
2053+ "NAME" -> Right CFLSFName
2054+ x -> Left ("Unable to parse CreativeFieldsListSortField from: " <> x)
20552055
2056−instance ToText CreativeFieldsListSortField where
2057− toText = \case
2056+instance ToHttpApiData CreativeFieldsListSortField where
2057+ toQueryParam = \case
20582058 CFLSFID -> "ID"
20592059 CFLSFName -> "NAME"
20602060
@@ -2110,32 +2110,32 @@ data UserDefinedVariableConfigurationVariableType
21102110
21112111instance Hashable UserDefinedVariableConfigurationVariableType
21122112
2113−instance FromText UserDefinedVariableConfigurationVariableType where
2114− fromText = \case
2115− "U1" -> Just U1
2116− "U10" -> Just U10
2117− "U11" -> Just U11
2118− "U12" -> Just U12
2119− "U13" -> Just U13
2120− "U14" -> Just U14
2121− "U15" -> Just U15
2122− "U16" -> Just U16
2123− "U17" -> Just U17
2124− "U18" -> Just U18
2125− "U19" -> Just U19
2126− "U2" -> Just U2
2127− "U20" -> Just U20
2128− "U3" -> Just U3
2129− "U4" -> Just U4
2130− "U5" -> Just U5
2131− "U6" -> Just U6
2132− "U7" -> Just U7
2133− "U8" -> Just U8
2134− "U9" -> Just U9
2135− _ -> Nothing
2136−
2137−instance ToText UserDefinedVariableConfigurationVariableType where
2138− toText = \case
2113+instance FromHttpApiData UserDefinedVariableConfigurationVariableType where
2114+ parseQueryParam = \case
2115+ "U1" -> Right U1
2116+ "U10" -> Right U10
2117+ "U11" -> Right U11
2118+ "U12" -> Right U12
2119+ "U13" -> Right U13
2120+ "U14" -> Right U14
2121+ "U15" -> Right U15
2122+ "U16" -> Right U16
2123+ "U17" -> Right U17
2124+ "U18" -> Right U18
2125+ "U19" -> Right U19
2126+ "U2" -> Right U2
2127+ "U20" -> Right U20
2128+ "U3" -> Right U3
2129+ "U4" -> Right U4
2130+ "U5" -> Right U5
2131+ "U6" -> Right U6
2132+ "U7" -> Right U7
2133+ "U8" -> Right U8
2134+ "U9" -> Right U9
2135+ x -> Left ("Unable to parse UserDefinedVariableConfigurationVariableType from: " <> x)
2136+
2137+instance ToHttpApiData UserDefinedVariableConfigurationVariableType where
2138+ toQueryParam = \case
21392139 U1 -> "U1"
21402140 U10 -> "U10"
21412141 U11 -> "U11"
@@ -2173,14 +2173,14 @@ data FsCommandPositionOption
21732173
21742174instance Hashable FsCommandPositionOption
21752175
2176−instance FromText FsCommandPositionOption where
2177− fromText = \case
2178− "CENTERED" -> Just Centered
2179− "DISTANCE_FROM_TOP_LEFT_CORNER" -> Just DistanceFromTopLeftCorner
2180− _ -> Nothing
2176+instance FromHttpApiData FsCommandPositionOption where
2177+ parseQueryParam = \case
2178+ "CENTERED" -> Right Centered
2179+ "DISTANCE_FROM_TOP_LEFT_CORNER" -> Right DistanceFromTopLeftCorner
2180+ x -> Left ("Unable to parse FsCommandPositionOption from: " <> x)
21812181
2182−instance ToText FsCommandPositionOption where
2183− toText = \case
2182+instance ToHttpApiData FsCommandPositionOption where
2183+ toQueryParam = \case
21842184 Centered -> "CENTERED"
21852185 DistanceFromTopLeftCorner -> "DISTANCE_FROM_TOP_LEFT_CORNER"
21862186
@@ -2200,14 +2200,14 @@ data UserRolesListSortOrder
22002200
22012201instance Hashable UserRolesListSortOrder
22022202
2203−instance FromText UserRolesListSortOrder where
2204− fromText = \case
2205− "ASCENDING" -> Just URLSOAscending
2206− "DESCENDING" -> Just URLSODescending
2207− _ -> Nothing
2203+instance FromHttpApiData UserRolesListSortOrder where
2204+ parseQueryParam = \case
2205+ "ASCENDING" -> Right URLSOAscending
2206+ "DESCENDING" -> Right URLSODescending
2207+ x -> Left ("Unable to parse UserRolesListSortOrder from: " <> x)
22082208
2209−instance ToText UserRolesListSortOrder where
2210− toText = \case
2209+instance ToHttpApiData UserRolesListSortOrder where
2210+ toQueryParam = \case
22112211 URLSOAscending -> "ASCENDING"
22122212 URLSODescending -> "DESCENDING"
22132213
@@ -2237,17 +2237,17 @@ data PlacementsListCompatibilities
22372237
22382238instance Hashable PlacementsListCompatibilities
22392239
2240−instance FromText PlacementsListCompatibilities where
2241− fromText = \case
2242− "APP" -> Just PLCApp
2243− "APP_INTERSTITIAL" -> Just PLCAppInterstitial
2244− "DISPLAY" -> Just PLCDisplay
2245− "DISPLAY_INTERSTITIAL" -> Just PLCDisplayInterstitial
2246− "IN_STREAM_VIDEO" -> Just PLCInStreamVideo
2247− _ -> Nothing
2248−
2249−instance ToText PlacementsListCompatibilities where
2250− toText = \case
2240+instance FromHttpApiData PlacementsListCompatibilities where
2241+ parseQueryParam = \case
2242+ "APP" -> Right PLCApp
2243+ "APP_INTERSTITIAL" -> Right PLCAppInterstitial
2244+ "DISPLAY" -> Right PLCDisplay
2245+ "DISPLAY_INTERSTITIAL" -> Right PLCDisplayInterstitial
2246+ "IN_STREAM_VIDEO" -> Right PLCInStreamVideo
2247+ x -> Left ("Unable to parse PlacementsListCompatibilities from: " <> x)
2248+
2249+instance ToHttpApiData PlacementsListCompatibilities where
2250+ toQueryParam = \case
22512251 PLCApp -> "APP"
22522252 PLCAppInterstitial -> "APP_INTERSTITIAL"
22532253 PLCDisplay -> "DISPLAY"
@@ -2270,14 +2270,14 @@ data OrderDocumentsListSortField
22702270
22712271instance Hashable OrderDocumentsListSortField
22722272
2273−instance FromText OrderDocumentsListSortField where
2274− fromText = \case
2275− "ID" -> Just ODLSFID
2276− "NAME" -> Just ODLSFName
2277− _ -> Nothing
2273+instance FromHttpApiData OrderDocumentsListSortField where
2274+ parseQueryParam = \case
2275+ "ID" -> Right ODLSFID
2276+ "NAME" -> Right ODLSFName
2277+ x -> Left ("Unable to parse OrderDocumentsListSortField from: " <> x)
22782278
2279−instance ToText OrderDocumentsListSortField where
2280− toText = \case
2279+instance ToHttpApiData OrderDocumentsListSortField where
2280+ toQueryParam = \case
22812281 ODLSFID -> "ID"
22822282 ODLSFName -> "NAME"
22832283
@@ -2302,17 +2302,17 @@ data CreativeCompatibilityItem
23022302
23032303instance Hashable CreativeCompatibilityItem
23042304
2305−instance FromText CreativeCompatibilityItem where
2306− fromText = \case
2307− "APP" -> Just CCIApp
2308− "APP_INTERSTITIAL" -> Just CCIAppInterstitial
2309− "DISPLAY" -> Just CCIDisplay
2310− "DISPLAY_INTERSTITIAL" -> Just CCIDisplayInterstitial
2311− "IN_STREAM_VIDEO" -> Just CCIInStreamVideo
2312− _ -> Nothing
2313−
2314−instance ToText CreativeCompatibilityItem where
2315− toText = \case
2305+instance FromHttpApiData CreativeCompatibilityItem where
2306+ parseQueryParam = \case
2307+ "APP" -> Right CCIApp
2308+ "APP_INTERSTITIAL" -> Right CCIAppInterstitial
2309+ "DISPLAY" -> Right CCIDisplay
2310+ "DISPLAY_INTERSTITIAL" -> Right CCIDisplayInterstitial
2311+ "IN_STREAM_VIDEO" -> Right CCIInStreamVideo
2312+ x -> Left ("Unable to parse CreativeCompatibilityItem from: " <> x)
2313+
2314+instance ToHttpApiData CreativeCompatibilityItem where
2315+ toQueryParam = \case
23162316 CCIApp -> "APP"
23172317 CCIAppInterstitial -> "APP_INTERSTITIAL"
23182318 CCIDisplay -> "DISPLAY"
@@ -2335,14 +2335,14 @@ data ReportDeliveryEmailOwnerDeliveryType
23352335
23362336instance Hashable ReportDeliveryEmailOwnerDeliveryType
23372337
2338−instance FromText ReportDeliveryEmailOwnerDeliveryType where
2339− fromText = \case
2340− "ATTACHMENT" -> Just RDEODTAttachment
2341− "LINK" -> Just RDEODTLink
2342− _ -> Nothing
2338+instance FromHttpApiData ReportDeliveryEmailOwnerDeliveryType where
2339+ parseQueryParam = \case
2340+ "ATTACHMENT" -> Right RDEODTAttachment
2341+ "LINK" -> Right RDEODTLink
2342+ x -> Left ("Unable to parse ReportDeliveryEmailOwnerDeliveryType from: " <> x)
23432343
2344−instance ToText ReportDeliveryEmailOwnerDeliveryType where
2345− toText = \case
2344+instance ToHttpApiData ReportDeliveryEmailOwnerDeliveryType where
2345+ toQueryParam = \case
23462346 RDEODTAttachment -> "ATTACHMENT"
23472347 RDEODTLink -> "LINK"
23482348
@@ -2362,14 +2362,14 @@ data SiteContactContactType
23622362
23632363instance Hashable SiteContactContactType
23642364
2365−instance FromText SiteContactContactType where
2366− fromText = \case
2367− "SALES_PERSON" -> Just SalesPerson
2368− "TRAFFICKER" -> Just Trafficker
2369− _ -> Nothing
2365+instance FromHttpApiData SiteContactContactType where
2366+ parseQueryParam = \case
2367+ "SALES_PERSON" -> Right SalesPerson
2368+ "TRAFFICKER" -> Right Trafficker
2369+ x -> Left ("Unable to parse SiteContactContactType from: " <> x)
23702370
2371−instance ToText SiteContactContactType where
2372− toText = \case
2371+instance ToHttpApiData SiteContactContactType where
2372+ toQueryParam = \case
23732373 SalesPerson -> "SALES_PERSON"
23742374 Trafficker -> "TRAFFICKER"
23752375
@@ -2391,14 +2391,14 @@ data ReportsListSortOrder
23912391
23922392instance Hashable ReportsListSortOrder
23932393
2394−instance FromText ReportsListSortOrder where
2395− fromText = \case
2396− "ASCENDING" -> Just RLSOAscending
2397− "DESCENDING" -> Just RLSODescending
2398− _ -> Nothing
2394+instance FromHttpApiData ReportsListSortOrder where
2395+ parseQueryParam = \case
2396+ "ASCENDING" -> Right RLSOAscending
2397+ "DESCENDING" -> Right RLSODescending
2398+ x -> Left ("Unable to parse ReportsListSortOrder from: " <> x)
23992399
2400−instance ToText ReportsListSortOrder where
2401− toText = \case
2400+instance ToHttpApiData ReportsListSortOrder where
2401+ toQueryParam = \case
24022402 RLSOAscending -> "ASCENDING"
24032403 RLSODescending -> "DESCENDING"
24042404
@@ -2418,14 +2418,14 @@ data TargetableRemarketingListsListSortField
24182418
24192419instance Hashable TargetableRemarketingListsListSortField
24202420
2421−instance FromText TargetableRemarketingListsListSortField where
2422− fromText = \case
2423− "ID" -> Just TRLLSFID
2424− "NAME" -> Just TRLLSFName
2425− _ -> Nothing
2421+instance FromHttpApiData TargetableRemarketingListsListSortField where
2422+ parseQueryParam = \case
2423+ "ID" -> Right TRLLSFID
2424+ "NAME" -> Right TRLLSFName
2425+ x -> Left ("Unable to parse TargetableRemarketingListsListSortField from: " <> x)
24262426
2427−instance ToText TargetableRemarketingListsListSortField where
2428− toText = \case
2427+instance ToHttpApiData TargetableRemarketingListsListSortField where
2428+ toQueryParam = \case
24292429 TRLLSFID -> "ID"
24302430 TRLLSFName -> "NAME"
24312431
@@ -2445,14 +2445,14 @@ data CampaignsListSortOrder
24452445
24462446instance Hashable CampaignsListSortOrder
24472447
2448−instance FromText CampaignsListSortOrder where
2449− fromText = \case
2450− "ASCENDING" -> Just CLSOAscending
2451− "DESCENDING" -> Just CLSODescending
2452− _ -> Nothing
2448+instance FromHttpApiData CampaignsListSortOrder where
2449+ parseQueryParam = \case
2450+ "ASCENDING" -> Right CLSOAscending
2451+ "DESCENDING" -> Right CLSODescending
2452+ x -> Left ("Unable to parse CampaignsListSortOrder from: " <> x)
24532453
2454−instance ToText CampaignsListSortOrder where
2455− toText = \case
2454+instance ToHttpApiData CampaignsListSortOrder where
2455+ toQueryParam = \case
24562456 CLSOAscending -> "ASCENDING"
24572457 CLSODescending -> "DESCENDING"
24582458
@@ -2473,14 +2473,14 @@ data FloodlightActivityGroupsListType
24732473
24742474instance Hashable FloodlightActivityGroupsListType
24752475
2476−instance FromText FloodlightActivityGroupsListType where
2477− fromText = \case
2478− "COUNTER" -> Just Counter
2479− "SALE" -> Just Sale
2480− _ -> Nothing
2476+instance FromHttpApiData FloodlightActivityGroupsListType where
2477+ parseQueryParam = \case
2478+ "COUNTER" -> Right Counter
2479+ "SALE" -> Right Sale
2480+ x -> Left ("Unable to parse FloodlightActivityGroupsListType from: " <> x)
24812481
2482−instance ToText FloodlightActivityGroupsListType where
2483− toText = \case
2482+instance ToHttpApiData FloodlightActivityGroupsListType where
2483+ toQueryParam = \case
24842484 Counter -> "COUNTER"
24852485 Sale -> "SALE"
24862486
@@ -2501,14 +2501,14 @@ data FloodlightConfigurationFirstDayOfWeek
25012501
25022502instance Hashable FloodlightConfigurationFirstDayOfWeek
25032503
2504−instance FromText FloodlightConfigurationFirstDayOfWeek where
2505− fromText = \case
2506− "MONDAY" -> Just Monday
2507− "SUNDAY" -> Just Sunday
2508− _ -> Nothing
2504+instance FromHttpApiData FloodlightConfigurationFirstDayOfWeek where
2505+ parseQueryParam = \case
2506+ "MONDAY" -> Right Monday
2507+ "SUNDAY" -> Right Sunday
2508+ x -> Left ("Unable to parse FloodlightConfigurationFirstDayOfWeek from: " <> x)
25092509
2510−instance ToText FloodlightConfigurationFirstDayOfWeek where
2511− toText = \case
2510+instance ToHttpApiData FloodlightConfigurationFirstDayOfWeek where
2511+ toQueryParam = \case
25122512 Monday -> "MONDAY"
25132513 Sunday -> "SUNDAY"
25142514
@@ -2557,28 +2557,28 @@ data DeliverySchedulePriority
25572557
25582558instance Hashable DeliverySchedulePriority
25592559
2560−instance FromText DeliverySchedulePriority where
2561− fromText = \case
2562− "AD_PRIORITY_01" -> Just AdPriority01
2563− "AD_PRIORITY_02" -> Just AdPriority02
2564− "AD_PRIORITY_03" -> Just AdPriority03
2565− "AD_PRIORITY_04" -> Just AdPriority04
2566− "AD_PRIORITY_05" -> Just AdPriority05
2567− "AD_PRIORITY_06" -> Just AdPriority06
2568− "AD_PRIORITY_07" -> Just AdPriority07
2569− "AD_PRIORITY_08" -> Just AdPriority08
2570− "AD_PRIORITY_09" -> Just AdPriority09
2571− "AD_PRIORITY_10" -> Just AdPriority10
2572− "AD_PRIORITY_11" -> Just AdPriority11
2573− "AD_PRIORITY_12" -> Just AdPriority12
2574− "AD_PRIORITY_13" -> Just AdPriority13
2575− "AD_PRIORITY_14" -> Just AdPriority14
2576− "AD_PRIORITY_15" -> Just AdPriority15
2577− "AD_PRIORITY_16" -> Just AdPriority16
2578− _ -> Nothing
2579−
2580−instance ToText DeliverySchedulePriority where
2581− toText = \case
2560+instance FromHttpApiData DeliverySchedulePriority where
2561+ parseQueryParam = \case
2562+ "AD_PRIORITY_01" -> Right AdPriority01
2563+ "AD_PRIORITY_02" -> Right AdPriority02
2564+ "AD_PRIORITY_03" -> Right AdPriority03
2565+ "AD_PRIORITY_04" -> Right AdPriority04
2566+ "AD_PRIORITY_05" -> Right AdPriority05
2567+ "AD_PRIORITY_06" -> Right AdPriority06
2568+ "AD_PRIORITY_07" -> Right AdPriority07
2569+ "AD_PRIORITY_08" -> Right AdPriority08
2570+ "AD_PRIORITY_09" -> Right AdPriority09
2571+ "AD_PRIORITY_10" -> Right AdPriority10
2572+ "AD_PRIORITY_11" -> Right AdPriority11
2573+ "AD_PRIORITY_12" -> Right AdPriority12
2574+ "AD_PRIORITY_13" -> Right AdPriority13
2575+ "AD_PRIORITY_14" -> Right AdPriority14
2576+ "AD_PRIORITY_15" -> Right AdPriority15
2577+ "AD_PRIORITY_16" -> Right AdPriority16
2578+ x -> Left ("Unable to parse DeliverySchedulePriority from: " <> x)
2579+
2580+instance ToHttpApiData DeliverySchedulePriority where
2581+ toQueryParam = \case
25822582 AdPriority01 -> "AD_PRIORITY_01"
25832583 AdPriority02 -> "AD_PRIORITY_02"
25842584 AdPriority03 -> "AD_PRIORITY_03"
@@ -2613,14 +2613,14 @@ data FloodlightActivitiesListFloodlightActivityGroupType
26132613
26142614instance Hashable FloodlightActivitiesListFloodlightActivityGroupType
26152615
2616−instance FromText FloodlightActivitiesListFloodlightActivityGroupType where
2617− fromText = \case
2618− "COUNTER" -> Just FALFAGTCounter
2619− "SALE" -> Just FALFAGTSale
2620− _ -> Nothing
2616+instance FromHttpApiData FloodlightActivitiesListFloodlightActivityGroupType where
2617+ parseQueryParam = \case
2618+ "COUNTER" -> Right FALFAGTCounter
2619+ "SALE" -> Right FALFAGTSale
2620+ x -> Left ("Unable to parse FloodlightActivitiesListFloodlightActivityGroupType from: " <> x)
26212621
2622−instance ToText FloodlightActivitiesListFloodlightActivityGroupType where
2623− toText = \case
2622+instance ToHttpApiData FloodlightActivitiesListFloodlightActivityGroupType where
2623+ toQueryParam = \case
26242624 FALFAGTCounter -> "COUNTER"
26252625 FALFAGTSale -> "SALE"
26262626
@@ -2644,15 +2644,15 @@ data CreativeAuthoringSource
26442644
26452645instance Hashable CreativeAuthoringSource
26462646
2647−instance FromText CreativeAuthoringSource where
2648− fromText = \case
2649− "CREATIVE_AUTHORING_SOURCE_DBM" -> Just CreativeAuthoringSourceDBm
2650− "CREATIVE_AUTHORING_SOURCE_DCM" -> Just CreativeAuthoringSourceDcm
2651− "CREATIVE_AUTHORING_SOURCE_STUDIO" -> Just CreativeAuthoringSourceStudio
2652− _ -> Nothing
2647+instance FromHttpApiData CreativeAuthoringSource where
2648+ parseQueryParam = \case
2649+ "CREATIVE_AUTHORING_SOURCE_DBM" -> Right CreativeAuthoringSourceDBm
2650+ "CREATIVE_AUTHORING_SOURCE_DCM" -> Right CreativeAuthoringSourceDcm
2651+ "CREATIVE_AUTHORING_SOURCE_STUDIO" -> Right CreativeAuthoringSourceStudio
2652+ x -> Left ("Unable to parse CreativeAuthoringSource from: " <> x)
26532653
2654−instance ToText CreativeAuthoringSource where
2655− toText = \case
2654+instance ToHttpApiData CreativeAuthoringSource where
2655+ toQueryParam = \case
26562656 CreativeAuthoringSourceDBm -> "CREATIVE_AUTHORING_SOURCE_DBM"
26572657 CreativeAuthoringSourceDcm -> "CREATIVE_AUTHORING_SOURCE_DCM"
26582658 CreativeAuthoringSourceStudio -> "CREATIVE_AUTHORING_SOURCE_STUDIO"
@@ -2676,16 +2676,16 @@ data FloodlightConfigurationStandardVariableTypesItem
26762676
26772677instance Hashable FloodlightConfigurationStandardVariableTypesItem
26782678
2679−instance FromText FloodlightConfigurationStandardVariableTypesItem where
2680− fromText = \case
2681− "NUM" -> Just Num
2682− "ORD" -> Just Ord
2683− "TRAN" -> Just Tran
2684− "U" -> Just U
2685− _ -> Nothing
2679+instance FromHttpApiData FloodlightConfigurationStandardVariableTypesItem where
2680+ parseQueryParam = \case
2681+ "NUM" -> Right Num
2682+ "ORD" -> Right Ord
2683+ "TRAN" -> Right Tran
2684+ "U" -> Right U
2685+ x -> Left ("Unable to parse FloodlightConfigurationStandardVariableTypesItem from: " <> x)
26862686
2687−instance ToText FloodlightConfigurationStandardVariableTypesItem where
2688− toText = \case
2687+instance ToHttpApiData FloodlightConfigurationStandardVariableTypesItem where
2688+ toQueryParam = \case
26892689 Num -> "NUM"
26902690 Ord -> "ORD"
26912691 Tran -> "TRAN"
@@ -2708,14 +2708,14 @@ data PlacementPaymentSource
27082708
27092709instance Hashable PlacementPaymentSource
27102710
2711−instance FromText PlacementPaymentSource where
2712− fromText = \case
2713− "PLACEMENT_AGENCY_PAID" -> Just PPSPlacementAgencyPaid
2714− "PLACEMENT_PUBLISHER_PAID" -> Just PPSPlacementPublisherPaid
2715− _ -> Nothing
2711+instance FromHttpApiData PlacementPaymentSource where
2712+ parseQueryParam = \case
2713+ "PLACEMENT_AGENCY_PAID" -> Right PPSPlacementAgencyPaid
2714+ "PLACEMENT_PUBLISHER_PAID" -> Right PPSPlacementPublisherPaid
2715+ x -> Left ("Unable to parse PlacementPaymentSource from: " <> x)
27162716
2717−instance ToText PlacementPaymentSource where
2718− toText = \case
2717+instance ToHttpApiData PlacementPaymentSource where
2718+ toQueryParam = \case
27192719 PPSPlacementAgencyPaid -> "PLACEMENT_AGENCY_PAID"
27202720 PPSPlacementPublisherPaid -> "PLACEMENT_PUBLISHER_PAID"
27212721
@@ -2737,14 +2737,14 @@ data ReportsFilesListSortOrder
27372737
27382738instance Hashable ReportsFilesListSortOrder
27392739
2740−instance FromText ReportsFilesListSortOrder where
2741− fromText = \case
2742− "ASCENDING" -> Just RFLSOAscending
2743− "DESCENDING" -> Just RFLSODescending
2744− _ -> Nothing
2740+instance FromHttpApiData ReportsFilesListSortOrder where
2741+ parseQueryParam = \case
2742+ "ASCENDING" -> Right RFLSOAscending
2743+ "DESCENDING" -> Right RFLSODescending
2744+ x -> Left ("Unable to parse ReportsFilesListSortOrder from: " <> x)
27452745
2746−instance ToText ReportsFilesListSortOrder where
2747− toText = \case
2746+instance ToHttpApiData ReportsFilesListSortOrder where
2747+ toQueryParam = \case
27482748 RFLSOAscending -> "ASCENDING"
27492749 RFLSODescending -> "DESCENDING"
27502750
@@ -2764,14 +2764,14 @@ data InventoryItemsListSortField
27642764
27652765instance Hashable InventoryItemsListSortField
27662766
2767−instance FromText InventoryItemsListSortField where
2768− fromText = \case
2769− "ID" -> Just IILSFID
2770− "NAME" -> Just IILSFName
2771− _ -> Nothing
2767+instance FromHttpApiData InventoryItemsListSortField where
2768+ parseQueryParam = \case
2769+ "ID" -> Right IILSFID
2770+ "NAME" -> Right IILSFName
2771+ x -> Left ("Unable to parse InventoryItemsListSortField from: " <> x)
27722772
2773−instance ToText InventoryItemsListSortField where
2774− toText = \case
2773+instance ToHttpApiData InventoryItemsListSortField where
2774+ toQueryParam = \case
27752775 IILSFID -> "ID"
27762776 IILSFName -> "NAME"
27772777
@@ -2795,15 +2795,15 @@ data EventTagType
27952795
27962796instance Hashable EventTagType
27972797
2798−instance FromText EventTagType where
2799− fromText = \case
2800− "CLICK_THROUGH_EVENT_TAG" -> Just ETTClickThroughEventTag
2801− "IMPRESSION_IMAGE_EVENT_TAG" -> Just ETTImpressionImageEventTag
2802− "IMPRESSION_JAVASCRIPT_EVENT_TAG" -> Just ETTImpressionJavascriptEventTag
2803− _ -> Nothing
2798+instance FromHttpApiData EventTagType where
2799+ parseQueryParam = \case
2800+ "CLICK_THROUGH_EVENT_TAG" -> Right ETTClickThroughEventTag
2801+ "IMPRESSION_IMAGE_EVENT_TAG" -> Right ETTImpressionImageEventTag
2802+ "IMPRESSION_JAVASCRIPT_EVENT_TAG" -> Right ETTImpressionJavascriptEventTag
2803+ x -> Left ("Unable to parse EventTagType from: " <> x)
28042804
2805−instance ToText EventTagType where
2806− toText = \case
2805+instance ToHttpApiData EventTagType where
2806+ toQueryParam = \case
28072807 ETTClickThroughEventTag -> "CLICK_THROUGH_EVENT_TAG"
28082808 ETTImpressionImageEventTag -> "IMPRESSION_IMAGE_EVENT_TAG"
28092809 ETTImpressionJavascriptEventTag -> "IMPRESSION_JAVASCRIPT_EVENT_TAG"
@@ -2824,14 +2824,14 @@ data CreativesListSortOrder
28242824
28252825instance Hashable CreativesListSortOrder
28262826
2827−instance FromText CreativesListSortOrder where
2828− fromText = \case
2829− "ASCENDING" -> Just CAscending
2830− "DESCENDING" -> Just CDescending
2831− _ -> Nothing
2827+instance FromHttpApiData CreativesListSortOrder where
2828+ parseQueryParam = \case
2829+ "ASCENDING" -> Right CAscending
2830+ "DESCENDING" -> Right CDescending
2831+ x -> Left ("Unable to parse CreativesListSortOrder from: " <> x)
28322832
2833−instance ToText CreativesListSortOrder where
2834− toText = \case
2833+instance ToHttpApiData CreativesListSortOrder where
2834+ toQueryParam = \case
28352835 CAscending -> "ASCENDING"
28362836 CDescending -> "DESCENDING"
28372837
@@ -2851,14 +2851,14 @@ data InventoryItemsListType
28512851
28522852instance Hashable InventoryItemsListType
28532853
2854−instance FromText InventoryItemsListType where
2855− fromText = \case
2856− "PLANNING_PLACEMENT_TYPE_CREDIT" -> Just PlanningPlacementTypeCredit
2857− "PLANNING_PLACEMENT_TYPE_REGULAR" -> Just PlanningPlacementTypeRegular
2858− _ -> Nothing
2854+instance FromHttpApiData InventoryItemsListType where
2855+ parseQueryParam = \case
2856+ "PLANNING_PLACEMENT_TYPE_CREDIT" -> Right PlanningPlacementTypeCredit
2857+ "PLANNING_PLACEMENT_TYPE_REGULAR" -> Right PlanningPlacementTypeRegular
2858+ x -> Left ("Unable to parse InventoryItemsListType from: " <> x)
28592859
2860−instance ToText InventoryItemsListType where
2861− toText = \case
2860+instance ToHttpApiData InventoryItemsListType where
2861+ toQueryParam = \case
28622862 PlanningPlacementTypeCredit -> "PLANNING_PLACEMENT_TYPE_CREDIT"
28632863 PlanningPlacementTypeRegular -> "PLANNING_PLACEMENT_TYPE_REGULAR"
28642864
@@ -2878,14 +2878,14 @@ data PopupWindowPropertiesPositionType
28782878
28792879instance Hashable PopupWindowPropertiesPositionType
28802880
2881−instance FromText PopupWindowPropertiesPositionType where
2882− fromText = \case
2883− "CENTER" -> Just Center
2884− "COORDINATES" -> Just Coordinates
2885− _ -> Nothing
2881+instance FromHttpApiData PopupWindowPropertiesPositionType where
2882+ parseQueryParam = \case
2883+ "CENTER" -> Right Center
2884+ "COORDINATES" -> Right Coordinates
2885+ x -> Left ("Unable to parse PopupWindowPropertiesPositionType from: " <> x)
28862886
2887−instance ToText PopupWindowPropertiesPositionType where
2888− toText = \case
2887+instance ToHttpApiData PopupWindowPropertiesPositionType where
2888+ toQueryParam = \case
28892889 Center -> "CENTER"
28902890 Coordinates -> "COORDINATES"
28912891
@@ -2907,15 +2907,15 @@ data DirectorySiteContactRole
29072907
29082908instance Hashable DirectorySiteContactRole
29092909
2910−instance FromText DirectorySiteContactRole where
2911− fromText = \case
2912− "ADMIN" -> Just Admin
2913− "EDIT" -> Just Edit
2914− "VIEW" -> Just View
2915− _ -> Nothing
2910+instance FromHttpApiData DirectorySiteContactRole where
2911+ parseQueryParam = \case
2912+ "ADMIN" -> Right Admin
2913+ "EDIT" -> Right Edit
2914+ "VIEW" -> Right View
2915+ x -> Left ("Unable to parse DirectorySiteContactRole from: " <> x)
29162916
2917−instance ToText DirectorySiteContactRole where
2918− toText = \case
2917+instance ToHttpApiData DirectorySiteContactRole where
2918+ toQueryParam = \case
29192919 Admin -> "ADMIN"
29202920 Edit -> "EDIT"
29212921 View -> "VIEW"
@@ -2941,15 +2941,15 @@ data TagSettingKeywordOption
29412941
29422942instance Hashable TagSettingKeywordOption
29432943
2944−instance FromText TagSettingKeywordOption where
2945− fromText = \case
2946− "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD" -> Just GenerateSeparateTagForEachKeyword
2947− "IGNORE" -> Just Ignore
2948− "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" -> Just PlaceholderWithListOfKeywords
2949− _ -> Nothing
2944+instance FromHttpApiData TagSettingKeywordOption where
2945+ parseQueryParam = \case
2946+ "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD" -> Right GenerateSeparateTagForEachKeyword
2947+ "IGNORE" -> Right Ignore
2948+ "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" -> Right PlaceholderWithListOfKeywords
2949+ x -> Left ("Unable to parse TagSettingKeywordOption from: " <> x)
29502950
2951−instance ToText TagSettingKeywordOption where
2952− toText = \case
2951+instance ToHttpApiData TagSettingKeywordOption where
2952+ toQueryParam = \case
29532953 GenerateSeparateTagForEachKeyword -> "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD"
29542954 Ignore -> "IGNORE"
29552955 PlaceholderWithListOfKeywords -> "PLACEHOLDER_WITH_LIST_OF_KEYWORDS"
@@ -2971,14 +2971,14 @@ data CreativeAuthoringTool
29712971
29722972instance Hashable CreativeAuthoringTool
29732973
2974−instance FromText CreativeAuthoringTool where
2975− fromText = \case
2976− "NINJA" -> Just Ninja
2977− "SWIFFY" -> Just Swiffy
2978− _ -> Nothing
2974+instance FromHttpApiData CreativeAuthoringTool where
2975+ parseQueryParam = \case
2976+ "NINJA" -> Right Ninja
2977+ "SWIFFY" -> Right Swiffy
2978+ x -> Left ("Unable to parse CreativeAuthoringTool from: " <> x)
29792979
2980−instance ToText CreativeAuthoringTool where
2981− toText = \case
2980+instance ToHttpApiData CreativeAuthoringTool where
2981+ toQueryParam = \case
29822982 Ninja -> "NINJA"
29832983 Swiffy -> "SWIFFY"
29842984
@@ -3000,15 +3000,15 @@ data OrderContactContactType
30003000
30013001instance Hashable OrderContactContactType
30023002
3003−instance FromText OrderContactContactType where
3004− fromText = \case
3005− "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT" -> Just PlanningOrderContactBuyerBillingContact
3006− "PLANNING_ORDER_CONTACT_BUYER_CONTACT" -> Just PlanningOrderContactBuyerContact
3007− "PLANNING_ORDER_CONTACT_SELLER_CONTACT" -> Just PlanningOrderContactSellerContact
3008− _ -> Nothing
3003+instance FromHttpApiData OrderContactContactType where
3004+ parseQueryParam = \case
3005+ "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT" -> Right PlanningOrderContactBuyerBillingContact
3006+ "PLANNING_ORDER_CONTACT_BUYER_CONTACT" -> Right PlanningOrderContactBuyerContact
3007+ "PLANNING_ORDER_CONTACT_SELLER_CONTACT" -> Right PlanningOrderContactSellerContact
3008+ x -> Left ("Unable to parse OrderContactContactType from: " <> x)
30093009
3010−instance ToText OrderContactContactType where
3011− toText = \case
3010+instance ToHttpApiData OrderContactContactType where
3011+ toQueryParam = \case
30123012 PlanningOrderContactBuyerBillingContact -> "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT"
30133013 PlanningOrderContactBuyerContact -> "PLANNING_ORDER_CONTACT_BUYER_CONTACT"
30143014 PlanningOrderContactSellerContact -> "PLANNING_ORDER_CONTACT_SELLER_CONTACT"
@@ -3036,17 +3036,17 @@ data CreativeAssetIdType
30363036
30373037instance Hashable CreativeAssetIdType
30383038
3039−instance FromText CreativeAssetIdType where
3040− fromText = \case
3041− "FLASH" -> Just CAITFlash
3042− "HTML" -> Just CAITHTML
3043− "HTML_IMAGE" -> Just CAITHTMLImage
3044− "IMAGE" -> Just CAITImage
3045− "VIDEO" -> Just CAITVideo
3046− _ -> Nothing
3047−
3048−instance ToText CreativeAssetIdType where
3049− toText = \case
3039+instance FromHttpApiData CreativeAssetIdType where
3040+ parseQueryParam = \case
3041+ "FLASH" -> Right CAITFlash
3042+ "HTML" -> Right CAITHTML
3043+ "HTML_IMAGE" -> Right CAITHTMLImage
3044+ "IMAGE" -> Right CAITImage
3045+ "VIDEO" -> Right CAITVideo
3046+ x -> Left ("Unable to parse CreativeAssetIdType from: " <> x)
3047+
3048+instance ToHttpApiData CreativeAssetIdType where
3049+ toQueryParam = \case
30503050 CAITFlash -> "FLASH"
30513051 CAITHTML -> "HTML"
30523052 CAITHTMLImage -> "HTML_IMAGE"
@@ -3069,14 +3069,14 @@ data AccountUserProFilesListSortOrder
30693069
30703070instance Hashable AccountUserProFilesListSortOrder
30713071
3072−instance FromText AccountUserProFilesListSortOrder where
3073− fromText = \case
3074− "ASCENDING" -> Just AUPFLSOAscending
3075− "DESCENDING" -> Just AUPFLSODescending
3076− _ -> Nothing
3072+instance FromHttpApiData AccountUserProFilesListSortOrder where
3073+ parseQueryParam = \case
3074+ "ASCENDING" -> Right AUPFLSOAscending
3075+ "DESCENDING" -> Right AUPFLSODescending
3076+ x -> Left ("Unable to parse AccountUserProFilesListSortOrder from: " <> x)
30773077
3078−instance ToText AccountUserProFilesListSortOrder where
3079− toText = \case
3078+instance ToHttpApiData AccountUserProFilesListSortOrder where
3079+ toQueryParam = \case
30803080 AUPFLSOAscending -> "ASCENDING"
30813081 AUPFLSODescending -> "DESCENDING"
30823082
@@ -3114,23 +3114,23 @@ data RemarketingListListSource
31143114
31153115instance Hashable RemarketingListListSource
31163116
3117−instance FromText RemarketingListListSource where
3118− fromText = \case
3119− "REMARKETING_LIST_SOURCE_ADX" -> Just RLLSRemarketingListSourceAdx
3120− "REMARKETING_LIST_SOURCE_DBM" -> Just RLLSRemarketingListSourceDBm
3121− "REMARKETING_LIST_SOURCE_DFA" -> Just RLLSRemarketingListSourceDfa
3122− "REMARKETING_LIST_SOURCE_DFP" -> Just RLLSRemarketingListSourceDfp
3123− "REMARKETING_LIST_SOURCE_DMP" -> Just RLLSRemarketingListSourceDmp
3124− "REMARKETING_LIST_SOURCE_GA" -> Just RLLSRemarketingListSourceGa
3125− "REMARKETING_LIST_SOURCE_GPLUS" -> Just RLLSRemarketingListSourceGplus
3126− "REMARKETING_LIST_SOURCE_OTHER" -> Just RLLSRemarketingListSourceOther
3127− "REMARKETING_LIST_SOURCE_PLAY_STORE" -> Just RLLSRemarketingListSourcePlayStore
3128− "REMARKETING_LIST_SOURCE_XFP" -> Just RLLSRemarketingListSourceXfp
3129− "REMARKETING_LIST_SOURCE_YOUTUBE" -> Just RLLSRemarketingListSourceYouTube
3130− _ -> Nothing
3131−
3132−instance ToText RemarketingListListSource where
3133− toText = \case
3117+instance FromHttpApiData RemarketingListListSource where
3118+ parseQueryParam = \case
3119+ "REMARKETING_LIST_SOURCE_ADX" -> Right RLLSRemarketingListSourceAdx
3120+ "REMARKETING_LIST_SOURCE_DBM" -> Right RLLSRemarketingListSourceDBm
3121+ "REMARKETING_LIST_SOURCE_DFA" -> Right RLLSRemarketingListSourceDfa
3122+ "REMARKETING_LIST_SOURCE_DFP" -> Right RLLSRemarketingListSourceDfp
3123+ "REMARKETING_LIST_SOURCE_DMP" -> Right RLLSRemarketingListSourceDmp
3124+ "REMARKETING_LIST_SOURCE_GA" -> Right RLLSRemarketingListSourceGa
3125+ "REMARKETING_LIST_SOURCE_GPLUS" -> Right RLLSRemarketingListSourceGplus
3126+ "REMARKETING_LIST_SOURCE_OTHER" -> Right RLLSRemarketingListSourceOther
3127+ "REMARKETING_LIST_SOURCE_PLAY_STORE" -> Right RLLSRemarketingListSourcePlayStore
3128+ "REMARKETING_LIST_SOURCE_XFP" -> Right RLLSRemarketingListSourceXfp
3129+ "REMARKETING_LIST_SOURCE_YOUTUBE" -> Right RLLSRemarketingListSourceYouTube
3130+ x -> Left ("Unable to parse RemarketingListListSource from: " <> x)
3131+
3132+instance ToHttpApiData RemarketingListListSource where
3133+ toQueryParam = \case
31343134 RLLSRemarketingListSourceAdx -> "REMARKETING_LIST_SOURCE_ADX"
31353135 RLLSRemarketingListSourceDBm -> "REMARKETING_LIST_SOURCE_DBM"
31363136 RLLSRemarketingListSourceDfa -> "REMARKETING_LIST_SOURCE_DFA"
@@ -3162,15 +3162,15 @@ data AccountUserProFileUserAccessType
31623162
31633163instance Hashable AccountUserProFileUserAccessType
31643164
3165−instance FromText AccountUserProFileUserAccessType where
3166− fromText = \case
3167− "INTERNAL_ADMINISTRATOR" -> Just InternalAdministrator
3168− "NORMAL_USER" -> Just NormalUser
3169− "SUPER_USER" -> Just SuperUser
3170− _ -> Nothing
3165+instance FromHttpApiData AccountUserProFileUserAccessType where
3166+ parseQueryParam = \case
3167+ "INTERNAL_ADMINISTRATOR" -> Right InternalAdministrator
3168+ "NORMAL_USER" -> Right NormalUser
3169+ "SUPER_USER" -> Right SuperUser
3170+ x -> Left ("Unable to parse AccountUserProFileUserAccessType from: " <> x)
31713171
3172−instance ToText AccountUserProFileUserAccessType where
3173− toText = \case
3172+instance ToHttpApiData AccountUserProFileUserAccessType where
3173+ toQueryParam = \case
31743174 InternalAdministrator -> "INTERNAL_ADMINISTRATOR"
31753175 NormalUser -> "NORMAL_USER"
31763176 SuperUser -> "SUPER_USER"
@@ -3192,14 +3192,14 @@ data CreativeAssetStartTimeType
31923192
31933193instance Hashable CreativeAssetStartTimeType
31943194
3195−instance FromText CreativeAssetStartTimeType where
3196− fromText = \case
3197− "ASSET_START_TIME_TYPE_CUSTOM" -> Just AssetStartTimeTypeCustom
3198− "ASSET_START_TIME_TYPE_NONE" -> Just AssetStartTimeTypeNone
3199− _ -> Nothing
3195+instance FromHttpApiData CreativeAssetStartTimeType where
3196+ parseQueryParam = \case
3197+ "ASSET_START_TIME_TYPE_CUSTOM" -> Right AssetStartTimeTypeCustom
3198+ "ASSET_START_TIME_TYPE_NONE" -> Right AssetStartTimeTypeNone
3199+ x -> Left ("Unable to parse CreativeAssetStartTimeType from: " <> x)
32003200
3201−instance ToText CreativeAssetStartTimeType where
3202− toText = \case
3201+instance ToHttpApiData CreativeAssetStartTimeType where
3202+ toQueryParam = \case
32033203 AssetStartTimeTypeCustom -> "ASSET_START_TIME_TYPE_CUSTOM"
32043204 AssetStartTimeTypeNone -> "ASSET_START_TIME_TYPE_NONE"
32053205
@@ -3219,14 +3219,14 @@ data ProjectAudienceGender
32193219
32203220instance Hashable ProjectAudienceGender
32213221
3222−instance FromText ProjectAudienceGender where
3223− fromText = \case
3224− "PLANNING_AUDIENCE_GENDER_FEMALE" -> Just PlanningAudienceGenderFemale
3225− "PLANNING_AUDIENCE_GENDER_MALE" -> Just PlanningAudienceGenderMale
3226− _ -> Nothing
3222+instance FromHttpApiData ProjectAudienceGender where
3223+ parseQueryParam = \case
3224+ "PLANNING_AUDIENCE_GENDER_FEMALE" -> Right PlanningAudienceGenderFemale
3225+ "PLANNING_AUDIENCE_GENDER_MALE" -> Right PlanningAudienceGenderMale
3226+ x -> Left ("Unable to parse ProjectAudienceGender from: " <> x)
32273227
3228−instance ToText ProjectAudienceGender where
3229− toText = \case
3228+instance ToHttpApiData ProjectAudienceGender where
3229+ toQueryParam = \case
32303230 PlanningAudienceGenderFemale -> "PLANNING_AUDIENCE_GENDER_FEMALE"
32313231 PlanningAudienceGenderMale -> "PLANNING_AUDIENCE_GENDER_MALE"
32323232
@@ -3246,14 +3246,14 @@ data PlacementStrategiesListSortField
32463246
32473247instance Hashable PlacementStrategiesListSortField
32483248
3249−instance FromText PlacementStrategiesListSortField where
3250− fromText = \case
3251− "ID" -> Just PSLSFID
3252− "NAME" -> Just PSLSFName
3253− _ -> Nothing
3249+instance FromHttpApiData PlacementStrategiesListSortField where
3250+ parseQueryParam = \case
3251+ "ID" -> Right PSLSFID
3252+ "NAME" -> Right PSLSFName
3253+ x -> Left ("Unable to parse PlacementStrategiesListSortField from: " <> x)
32543254
3255−instance ToText PlacementStrategiesListSortField where
3256− toText = \case
3255+instance ToHttpApiData PlacementStrategiesListSortField where
3256+ toQueryParam = \case
32573257 PSLSFID -> "ID"
32583258 PSLSFName -> "NAME"
32593259
@@ -3273,14 +3273,14 @@ data UserDefinedVariableConfigurationDataType
32733273
32743274instance Hashable UserDefinedVariableConfigurationDataType
32753275
3276−instance FromText UserDefinedVariableConfigurationDataType where
3277− fromText = \case
3278− "NUMBER" -> Just Number
3279− "STRING" -> Just String
3280− _ -> Nothing
3276+instance FromHttpApiData UserDefinedVariableConfigurationDataType where
3277+ parseQueryParam = \case
3278+ "NUMBER" -> Right Number
3279+ "STRING" -> Right String
3280+ x -> Left ("Unable to parse UserDefinedVariableConfigurationDataType from: " <> x)
32813281
3282−instance ToText UserDefinedVariableConfigurationDataType where
3283− toText = \case
3282+instance ToHttpApiData UserDefinedVariableConfigurationDataType where
3283+ toQueryParam = \case
32843284 Number -> "NUMBER"
32853285 String -> "STRING"
32863286
@@ -3306,17 +3306,17 @@ data FloodlightActivityCacheBustingType
33063306
33073307instance Hashable FloodlightActivityCacheBustingType
33083308
3309−instance FromText FloodlightActivityCacheBustingType where
3310− fromText = \case
3311− "ACTIVE_SERVER_PAGE" -> Just ActiveServerPage
3312− "COLD_FUSION" -> Just ColdFusion
3313− "JAVASCRIPT" -> Just Javascript
3314− "JSP" -> Just Jsp
3315− "PHP" -> Just Php
3316− _ -> Nothing
3317−
3318−instance ToText FloodlightActivityCacheBustingType where
3319− toText = \case
3309+instance FromHttpApiData FloodlightActivityCacheBustingType where
3310+ parseQueryParam = \case
3311+ "ACTIVE_SERVER_PAGE" -> Right ActiveServerPage
3312+ "COLD_FUSION" -> Right ColdFusion
3313+ "JAVASCRIPT" -> Right Javascript
3314+ "JSP" -> Right Jsp
3315+ "PHP" -> Right Php
3316+ x -> Left ("Unable to parse FloodlightActivityCacheBustingType from: " <> x)
3317+
3318+instance ToHttpApiData FloodlightActivityCacheBustingType where
3319+ toQueryParam = \case
33203320 ActiveServerPage -> "ACTIVE_SERVER_PAGE"
33213321 ColdFusion -> "COLD_FUSION"
33223322 Javascript -> "JAVASCRIPT"
@@ -3339,14 +3339,14 @@ data CreativeGroupsListSortOrder
33393339
33403340instance Hashable CreativeGroupsListSortOrder
33413341
3342−instance FromText CreativeGroupsListSortOrder where
3343− fromText = \case
3344− "ASCENDING" -> Just CGLSOAscending
3345− "DESCENDING" -> Just CGLSODescending
3346− _ -> Nothing
3342+instance FromHttpApiData CreativeGroupsListSortOrder where
3343+ parseQueryParam = \case
3344+ "ASCENDING" -> Right CGLSOAscending
3345+ "DESCENDING" -> Right CGLSODescending
3346+ x -> Left ("Unable to parse CreativeGroupsListSortOrder from: " <> x)
33473347
3348−instance ToText CreativeGroupsListSortOrder where
3349− toText = \case
3348+instance ToHttpApiData CreativeGroupsListSortOrder where
3349+ toQueryParam = \case
33503350 CGLSOAscending -> "ASCENDING"
33513351 CGLSODescending -> "DESCENDING"
33523352
@@ -3366,14 +3366,14 @@ data OrderDocumentType
33663366
33673367instance Hashable OrderDocumentType
33683368
3369−instance FromText OrderDocumentType where
3370− fromText = \case
3371− "PLANNING_ORDER_TYPE_CHANGE_ORDER" -> Just PlanningOrderTypeChangeOrder
3372− "PLANNING_ORDER_TYPE_INSERTION_ORDER" -> Just PlanningOrderTypeInsertionOrder
3373− _ -> Nothing
3369+instance FromHttpApiData OrderDocumentType where
3370+ parseQueryParam = \case
3371+ "PLANNING_ORDER_TYPE_CHANGE_ORDER" -> Right PlanningOrderTypeChangeOrder
3372+ "PLANNING_ORDER_TYPE_INSERTION_ORDER" -> Right PlanningOrderTypeInsertionOrder
3373+ x -> Left ("Unable to parse OrderDocumentType from: " <> x)
33743374
3375−instance ToText OrderDocumentType where
3376− toText = \case
3375+instance ToHttpApiData OrderDocumentType where
3376+ toQueryParam = \case
33773377 PlanningOrderTypeChangeOrder -> "PLANNING_ORDER_TYPE_CHANGE_ORDER"
33783378 PlanningOrderTypeInsertionOrder -> "PLANNING_ORDER_TYPE_INSERTION_ORDER"
33793379
@@ -3425,30 +3425,30 @@ data TagDataFormat
34253425
34263426instance Hashable TagDataFormat
34273427
3428−instance FromText TagDataFormat where
3429− fromText = \case
3430− "PLACEMENT_TAG_CLICK_COMMANDS" -> Just PlacementTagClickCommands
3431− "PLACEMENT_TAG_IFRAME_ILAYER" -> Just PlacementTagIframeIlayer
3432− "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Just PlacementTagIframeJavascript
3433− "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Just PlacementTagIframeJavascriptLegacy
3434− "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Just PlacementTagInstreamVideoPrefetch
3435− "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Just PlacementTagInstreamVideoPrefetchVast3
3436− "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Just PlacementTagInternalRedirect
3437− "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Just PlacementTagInterstitialIframeJavascript
3438− "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Just PlacementTagInterstitialIframeJavascriptLegacy
3439− "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Just PlacementTagInterstitialInternalRedirect
3440− "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Just PlacementTagInterstitialJavascript
3441− "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Just PlacementTagInterstitialJavascriptLegacy
3442− "PLACEMENT_TAG_JAVASCRIPT" -> Just PlacementTagJavascript
3443− "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Just PlacementTagJavascriptLegacy
3444− "PLACEMENT_TAG_STANDARD" -> Just PlacementTagStandard
3445− "PLACEMENT_TAG_TRACKING" -> Just PlacementTagTracking
3446− "PLACEMENT_TAG_TRACKING_IFRAME" -> Just PlacementTagTrackingIframe
3447− "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Just PlacementTagTrackingJavascript
3448− _ -> Nothing
3449−
3450−instance ToText TagDataFormat where
3451− toText = \case
3428+instance FromHttpApiData TagDataFormat where
3429+ parseQueryParam = \case
3430+ "PLACEMENT_TAG_CLICK_COMMANDS" -> Right PlacementTagClickCommands
3431+ "PLACEMENT_TAG_IFRAME_ILAYER" -> Right PlacementTagIframeIlayer
3432+ "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Right PlacementTagIframeJavascript
3433+ "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Right PlacementTagIframeJavascriptLegacy
3434+ "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Right PlacementTagInstreamVideoPrefetch
3435+ "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Right PlacementTagInstreamVideoPrefetchVast3
3436+ "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Right PlacementTagInternalRedirect
3437+ "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Right PlacementTagInterstitialIframeJavascript
3438+ "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Right PlacementTagInterstitialIframeJavascriptLegacy
3439+ "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Right PlacementTagInterstitialInternalRedirect
3440+ "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Right PlacementTagInterstitialJavascript
3441+ "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Right PlacementTagInterstitialJavascriptLegacy
3442+ "PLACEMENT_TAG_JAVASCRIPT" -> Right PlacementTagJavascript
3443+ "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Right PlacementTagJavascriptLegacy
3444+ "PLACEMENT_TAG_STANDARD" -> Right PlacementTagStandard
3445+ "PLACEMENT_TAG_TRACKING" -> Right PlacementTagTracking
3446+ "PLACEMENT_TAG_TRACKING_IFRAME" -> Right PlacementTagTrackingIframe
3447+ "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Right PlacementTagTrackingJavascript
3448+ x -> Left ("Unable to parse TagDataFormat from: " <> x)
3449+
3450+instance ToHttpApiData TagDataFormat where
3451+ toQueryParam = \case
34523452 PlacementTagClickCommands -> "PLACEMENT_TAG_CLICK_COMMANDS"
34533453 PlacementTagIframeIlayer -> "PLACEMENT_TAG_IFRAME_ILAYER"
34543454 PlacementTagIframeJavascript -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
@@ -3490,17 +3490,17 @@ data AccountActiveAdSummaryActiveAdsLimitTier
34903490
34913491instance Hashable AccountActiveAdSummaryActiveAdsLimitTier
34923492
3493−instance FromText AccountActiveAdSummaryActiveAdsLimitTier where
3494− fromText = \case
3495− "ACTIVE_ADS_TIER_100K" -> Just ActiveAdsTier100K
3496− "ACTIVE_ADS_TIER_200K" -> Just ActiveAdsTier200K
3497− "ACTIVE_ADS_TIER_300K" -> Just ActiveAdsTier300K
3498− "ACTIVE_ADS_TIER_40K" -> Just ActiveAdsTier40K
3499− "ACTIVE_ADS_TIER_75K" -> Just ActiveAdsTier75K
3500− _ -> Nothing
3501−
3502−instance ToText AccountActiveAdSummaryActiveAdsLimitTier where
3503− toText = \case
3493+instance FromHttpApiData AccountActiveAdSummaryActiveAdsLimitTier where
3494+ parseQueryParam = \case
3495+ "ACTIVE_ADS_TIER_100K" -> Right ActiveAdsTier100K
3496+ "ACTIVE_ADS_TIER_200K" -> Right ActiveAdsTier200K
3497+ "ACTIVE_ADS_TIER_300K" -> Right ActiveAdsTier300K
3498+ "ACTIVE_ADS_TIER_40K" -> Right ActiveAdsTier40K
3499+ "ACTIVE_ADS_TIER_75K" -> Right ActiveAdsTier75K
3500+ x -> Left ("Unable to parse AccountActiveAdSummaryActiveAdsLimitTier from: " <> x)
3501+
3502+instance ToHttpApiData AccountActiveAdSummaryActiveAdsLimitTier where
3503+ toQueryParam = \case
35043504 ActiveAdsTier100K -> "ACTIVE_ADS_TIER_100K"
35053505 ActiveAdsTier200K -> "ACTIVE_ADS_TIER_200K"
35063506 ActiveAdsTier300K -> "ACTIVE_ADS_TIER_300K"
@@ -3528,16 +3528,16 @@ data CreativeAssetChildAssetType
35283528
35293529instance Hashable CreativeAssetChildAssetType
35303530
3531−instance FromText CreativeAssetChildAssetType where
3532− fromText = \case
3533− "CHILD_ASSET_TYPE_DATA" -> Just ChildAssetTypeData
3534− "CHILD_ASSET_TYPE_FLASH" -> Just ChildAssetTypeFlash
3535− "CHILD_ASSET_TYPE_IMAGE" -> Just ChildAssetTypeImage
3536− "CHILD_ASSET_TYPE_VIDEO" -> Just ChildAssetTypeVideo
3537− _ -> Nothing
3531+instance FromHttpApiData CreativeAssetChildAssetType where
3532+ parseQueryParam = \case
3533+ "CHILD_ASSET_TYPE_DATA" -> Right ChildAssetTypeData
3534+ "CHILD_ASSET_TYPE_FLASH" -> Right ChildAssetTypeFlash
3535+ "CHILD_ASSET_TYPE_IMAGE" -> Right ChildAssetTypeImage
3536+ "CHILD_ASSET_TYPE_VIDEO" -> Right ChildAssetTypeVideo
3537+ x -> Left ("Unable to parse CreativeAssetChildAssetType from: " <> x)
35383538
3539−instance ToText CreativeAssetChildAssetType where
3540− toText = \case
3539+instance ToHttpApiData CreativeAssetChildAssetType where
3540+ toQueryParam = \case
35413541 ChildAssetTypeData -> "CHILD_ASSET_TYPE_DATA"
35423542 ChildAssetTypeFlash -> "CHILD_ASSET_TYPE_FLASH"
35433543 ChildAssetTypeImage -> "CHILD_ASSET_TYPE_IMAGE"
@@ -3564,14 +3564,14 @@ data PlacementGroupsListPlacementGroupType
35643564
35653565instance Hashable PlacementGroupsListPlacementGroupType
35663566
3567−instance FromText PlacementGroupsListPlacementGroupType where
3568− fromText = \case
3569− "PLACEMENT_PACKAGE" -> Just PlacementPackage
3570− "PLACEMENT_ROADBLOCK" -> Just PlacementRoadblock
3571− _ -> Nothing
3567+instance FromHttpApiData PlacementGroupsListPlacementGroupType where
3568+ parseQueryParam = \case
3569+ "PLACEMENT_PACKAGE" -> Right PlacementPackage
3570+ "PLACEMENT_ROADBLOCK" -> Right PlacementRoadblock
3571+ x -> Left ("Unable to parse PlacementGroupsListPlacementGroupType from: " <> x)
35723572
3573−instance ToText PlacementGroupsListPlacementGroupType where
3574− toText = \case
3573+instance ToHttpApiData PlacementGroupsListPlacementGroupType where
3574+ toQueryParam = \case
35753575 PlacementPackage -> "PLACEMENT_PACKAGE"
35763576 PlacementRoadblock -> "PLACEMENT_ROADBLOCK"
35773577
@@ -3595,15 +3595,15 @@ data ObjectFilterStatus
35953595
35963596instance Hashable ObjectFilterStatus
35973597
3598−instance FromText ObjectFilterStatus where
3599− fromText = \case
3600− "ALL" -> Just OFSAll
3601− "ASSIGNED" -> Just OFSAssigned
3602− "NONE" -> Just OFSNone
3603− _ -> Nothing
3598+instance FromHttpApiData ObjectFilterStatus where
3599+ parseQueryParam = \case
3600+ "ALL" -> Right OFSAll
3601+ "ASSIGNED" -> Right OFSAssigned
3602+ "NONE" -> Right OFSNone
3603+ x -> Left ("Unable to parse ObjectFilterStatus from: " <> x)
36043604
3605−instance ToText ObjectFilterStatus where
3606− toText = \case
3605+instance ToHttpApiData ObjectFilterStatus where
3606+ toQueryParam = \case
36073607 OFSAll -> "ALL"
36083608 OFSAssigned -> "ASSIGNED"
36093609 OFSNone -> "NONE"
@@ -3624,14 +3624,14 @@ data CampaignCreativeAssociationsListSortOrder
36243624
36253625instance Hashable CampaignCreativeAssociationsListSortOrder
36263626
3627−instance FromText CampaignCreativeAssociationsListSortOrder where
3628− fromText = \case
3629− "ASCENDING" -> Just CCALSOAscending
3630− "DESCENDING" -> Just CCALSODescending
3631− _ -> Nothing
3627+instance FromHttpApiData CampaignCreativeAssociationsListSortOrder where
3628+ parseQueryParam = \case
3629+ "ASCENDING" -> Right CCALSOAscending
3630+ "DESCENDING" -> Right CCALSODescending
3631+ x -> Left ("Unable to parse CampaignCreativeAssociationsListSortOrder from: " <> x)
36323632
3633−instance ToText CampaignCreativeAssociationsListSortOrder where
3634− toText = \case
3633+instance ToHttpApiData CampaignCreativeAssociationsListSortOrder where
3634+ toQueryParam = \case
36353635 CCALSOAscending -> "ASCENDING"
36363636 CCALSODescending -> "DESCENDING"
36373637
@@ -3651,14 +3651,14 @@ data FloodlightActivitiesListSortField
36513651
36523652instance Hashable FloodlightActivitiesListSortField
36533653
3654−instance FromText FloodlightActivitiesListSortField where
3655− fromText = \case
3656− "ID" -> Just FALSFID
3657− "NAME" -> Just FALSFName
3658− _ -> Nothing
3654+instance FromHttpApiData FloodlightActivitiesListSortField where
3655+ parseQueryParam = \case
3656+ "ID" -> Right FALSFID
3657+ "NAME" -> Right FALSFName
3658+ x -> Left ("Unable to parse FloodlightActivitiesListSortField from: " <> x)
36593659
3660−instance ToText FloodlightActivitiesListSortField where
3661− toText = \case
3660+instance ToHttpApiData FloodlightActivitiesListSortField where
3661+ toQueryParam = \case
36623662 FALSFID -> "ID"
36633663 FALSFName -> "NAME"
36643664
@@ -3722,36 +3722,36 @@ data CreativesListTypes
37223722
37233723instance Hashable CreativesListTypes
37243724
3725−instance FromText CreativesListTypes where
3726− fromText = \case
3727− "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Just BrandSafeDefaultInstreamVideo
3728− "CUSTOM_INPAGE" -> Just CustomInpage
3729− "CUSTOM_INTERSTITIAL" -> Just CustomInterstitial
3730− "ENHANCED_BANNER" -> Just EnhancedBanner
3731− "ENHANCED_IMAGE" -> Just EnhancedImage
3732− "FLASH_INPAGE" -> Just FlashInpage
3733− "HTML5_BANNER" -> Just HTML5Banner
3734− "IMAGE" -> Just Image
3735− "INSTREAM_VIDEO" -> Just InstreamVideo
3736− "INSTREAM_VIDEO_REDIRECT" -> Just InstreamVideoRedirect
3737− "INTERNAL_REDIRECT" -> Just InternalRedirect
3738− "INTERSTITIAL_INTERNAL_REDIRECT" -> Just InterstitialInternalRedirect
3739− "REDIRECT" -> Just Redirect
3740− "RICH_MEDIA_EXPANDING" -> Just RichMediaExpanding
3741− "RICH_MEDIA_IM_EXPAND" -> Just RichMediaImExpand
3742− "RICH_MEDIA_INPAGE" -> Just RichMediaInpage
3743− "RICH_MEDIA_INPAGE_FLOATING" -> Just RichMediaInpageFloating
3744− "RICH_MEDIA_INTERSTITIAL_FLOAT" -> Just RichMediaInterstitialFloat
3745− "RICH_MEDIA_MOBILE_IN_APP" -> Just RichMediaMobileInApp
3746− "RICH_MEDIA_MULTI_FLOATING" -> Just RichMediaMultiFloating
3747− "RICH_MEDIA_PEEL_DOWN" -> Just RichMediaPeelDown
3748− "TRACKING_TEXT" -> Just TrackingText
3749− "VPAID_LINEAR" -> Just VpaidLinear
3750− "VPAID_NON_LINEAR" -> Just VpaidNonLinear
3751− _ -> Nothing
3752−
3753−instance ToText CreativesListTypes where
3754− toText = \case
3725+instance FromHttpApiData CreativesListTypes where
3726+ parseQueryParam = \case
3727+ "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Right BrandSafeDefaultInstreamVideo
3728+ "CUSTOM_INPAGE" -> Right CustomInpage
3729+ "CUSTOM_INTERSTITIAL" -> Right CustomInterstitial
3730+ "ENHANCED_BANNER" -> Right EnhancedBanner
3731+ "ENHANCED_IMAGE" -> Right EnhancedImage
3732+ "FLASH_INPAGE" -> Right FlashInpage
3733+ "HTML5_BANNER" -> Right HTML5Banner
3734+ "IMAGE" -> Right Image
3735+ "INSTREAM_VIDEO" -> Right InstreamVideo
3736+ "INSTREAM_VIDEO_REDIRECT" -> Right InstreamVideoRedirect
3737+ "INTERNAL_REDIRECT" -> Right InternalRedirect
3738+ "INTERSTITIAL_INTERNAL_REDIRECT" -> Right InterstitialInternalRedirect
3739+ "REDIRECT" -> Right Redirect
3740+ "RICH_MEDIA_EXPANDING" -> Right RichMediaExpanding
3741+ "RICH_MEDIA_IM_EXPAND" -> Right RichMediaImExpand
3742+ "RICH_MEDIA_INPAGE" -> Right RichMediaInpage
3743+ "RICH_MEDIA_INPAGE_FLOATING" -> Right RichMediaInpageFloating
3744+ "RICH_MEDIA_INTERSTITIAL_FLOAT" -> Right RichMediaInterstitialFloat
3745+ "RICH_MEDIA_MOBILE_IN_APP" -> Right RichMediaMobileInApp
3746+ "RICH_MEDIA_MULTI_FLOATING" -> Right RichMediaMultiFloating
3747+ "RICH_MEDIA_PEEL_DOWN" -> Right RichMediaPeelDown
3748+ "TRACKING_TEXT" -> Right TrackingText
3749+ "VPAID_LINEAR" -> Right VpaidLinear
3750+ "VPAID_NON_LINEAR" -> Right VpaidNonLinear
3751+ x -> Left ("Unable to parse CreativesListTypes from: " <> x)
3752+
3753+instance ToHttpApiData CreativesListTypes where
3754+ toQueryParam = \case
37553755 BrandSafeDefaultInstreamVideo -> "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
37563756 CustomInpage -> "CUSTOM_INPAGE"
37573757 CustomInterstitial -> "CUSTOM_INTERSTITIAL"
@@ -3796,16 +3796,16 @@ data DirectorySiteInpageTagFormatsItem
37963796
37973797instance Hashable DirectorySiteInpageTagFormatsItem
37983798
3799−instance FromText DirectorySiteInpageTagFormatsItem where
3800− fromText = \case
3801− "IFRAME_JAVASCRIPT_INPAGE" -> Just IframeJavascriptInpage
3802− "INTERNAL_REDIRECT_INPAGE" -> Just InternalRedirectInpage
3803− "JAVASCRIPT_INPAGE" -> Just JavascriptInpage
3804− "STANDARD" -> Just Standard
3805− _ -> Nothing
3799+instance FromHttpApiData DirectorySiteInpageTagFormatsItem where
3800+ parseQueryParam = \case
3801+ "IFRAME_JAVASCRIPT_INPAGE" -> Right IframeJavascriptInpage
3802+ "INTERNAL_REDIRECT_INPAGE" -> Right InternalRedirectInpage
3803+ "JAVASCRIPT_INPAGE" -> Right JavascriptInpage
3804+ "STANDARD" -> Right Standard
3805+ x -> Left ("Unable to parse DirectorySiteInpageTagFormatsItem from: " <> x)
38063806
3807−instance ToText DirectorySiteInpageTagFormatsItem where
3808− toText = \case
3807+instance ToHttpApiData DirectorySiteInpageTagFormatsItem where
3808+ toQueryParam = \case
38093809 IframeJavascriptInpage -> "IFRAME_JAVASCRIPT_INPAGE"
38103810 InternalRedirectInpage -> "INTERNAL_REDIRECT_INPAGE"
38113811 JavascriptInpage -> "JAVASCRIPT_INPAGE"
@@ -3831,15 +3831,15 @@ data CreativeAssetWindowMode
38313831
38323832instance Hashable CreativeAssetWindowMode
38333833
3834−instance FromText CreativeAssetWindowMode where
3835− fromText = \case
3836− "OPAQUE" -> Just Opaque
3837− "TRANSPARENT" -> Just Transparent
3838− "WINDOW" -> Just Window
3839− _ -> Nothing
3834+instance FromHttpApiData CreativeAssetWindowMode where
3835+ parseQueryParam = \case
3836+ "OPAQUE" -> Right Opaque
3837+ "TRANSPARENT" -> Right Transparent
3838+ "WINDOW" -> Right Window
3839+ x -> Left ("Unable to parse CreativeAssetWindowMode from: " <> x)
38403840
3841−instance ToText CreativeAssetWindowMode where
3842− toText = \case
3841+instance ToHttpApiData CreativeAssetWindowMode where
3842+ toQueryParam = \case
38433843 Opaque -> "OPAQUE"
38443844 Transparent -> "TRANSPARENT"
38453845 Window -> "WINDOW"
@@ -3865,16 +3865,16 @@ data CreativeAssetAlignment
38653865
38663866instance Hashable CreativeAssetAlignment
38673867
3868−instance FromText CreativeAssetAlignment where
3869− fromText = \case
3870− "ALIGNMENT_BOTTOM" -> Just AlignmentBottom
3871− "ALIGNMENT_LEFT" -> Just AlignmentLeft
3872− "ALIGNMENT_RIGHT" -> Just AlignmentRight
3873− "ALIGNMENT_TOP" -> Just AlignmentTop
3874− _ -> Nothing
3868+instance FromHttpApiData CreativeAssetAlignment where
3869+ parseQueryParam = \case
3870+ "ALIGNMENT_BOTTOM" -> Right AlignmentBottom
3871+ "ALIGNMENT_LEFT" -> Right AlignmentLeft
3872+ "ALIGNMENT_RIGHT" -> Right AlignmentRight
3873+ "ALIGNMENT_TOP" -> Right AlignmentTop
3874+ x -> Left ("Unable to parse CreativeAssetAlignment from: " <> x)
38753875
3876−instance ToText CreativeAssetAlignment where
3877− toText = \case
3876+instance ToHttpApiData CreativeAssetAlignment where
3877+ toQueryParam = \case
38783878 AlignmentBottom -> "ALIGNMENT_BOTTOM"
38793879 AlignmentLeft -> "ALIGNMENT_LEFT"
38803880 AlignmentRight -> "ALIGNMENT_RIGHT"
@@ -3896,14 +3896,14 @@ data RemarketingListsListSortOrder
38963896
38973897instance Hashable RemarketingListsListSortOrder
38983898
3899−instance FromText RemarketingListsListSortOrder where
3900− fromText = \case
3901− "ASCENDING" -> Just RLLSOAscending
3902− "DESCENDING" -> Just RLLSODescending
3903− _ -> Nothing
3899+instance FromHttpApiData RemarketingListsListSortOrder where
3900+ parseQueryParam = \case
3901+ "ASCENDING" -> Right RLLSOAscending
3902+ "DESCENDING" -> Right RLLSODescending
3903+ x -> Left ("Unable to parse RemarketingListsListSortOrder from: " <> x)
39043904
3905−instance ToText RemarketingListsListSortOrder where
3906− toText = \case
3905+instance ToHttpApiData RemarketingListsListSortOrder where
3906+ toQueryParam = \case
39073907 RLLSOAscending -> "ASCENDING"
39083908 RLLSODescending -> "DESCENDING"
39093909
@@ -3929,17 +3929,17 @@ data PlacementGroupsListPricingTypes
39293929
39303930instance Hashable PlacementGroupsListPricingTypes
39313931
3932−instance FromText PlacementGroupsListPricingTypes where
3933− fromText = \case
3934− "PRICING_TYPE_CPA" -> Just PGLPTPricingTypeCpa
3935− "PRICING_TYPE_CPC" -> Just PGLPTPricingTypeCpc
3936− "PRICING_TYPE_CPM" -> Just PGLPTPricingTypeCpm
3937− "PRICING_TYPE_FLAT_RATE_CLICKS" -> Just PGLPTPricingTypeFlatRateClicks
3938− "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Just PGLPTPricingTypeFlatRateImpressions
3939− _ -> Nothing
3940−
3941−instance ToText PlacementGroupsListPricingTypes where
3942− toText = \case
3932+instance FromHttpApiData PlacementGroupsListPricingTypes where
3933+ parseQueryParam = \case
3934+ "PRICING_TYPE_CPA" -> Right PGLPTPricingTypeCpa
3935+ "PRICING_TYPE_CPC" -> Right PGLPTPricingTypeCpc
3936+ "PRICING_TYPE_CPM" -> Right PGLPTPricingTypeCpm
3937+ "PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PGLPTPricingTypeFlatRateClicks
3938+ "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PGLPTPricingTypeFlatRateImpressions
3939+ x -> Left ("Unable to parse PlacementGroupsListPricingTypes from: " <> x)
3940+
3941+instance ToHttpApiData PlacementGroupsListPricingTypes where
3942+ toQueryParam = \case
39433943 PGLPTPricingTypeCpa -> "PRICING_TYPE_CPA"
39443944 PGLPTPricingTypeCpc -> "PRICING_TYPE_CPC"
39453945 PGLPTPricingTypeCpm -> "PRICING_TYPE_CPM"
@@ -3968,17 +3968,17 @@ data AccountActiveAdsLimitTier
39683968
39693969instance Hashable AccountActiveAdsLimitTier
39703970
3971−instance FromText AccountActiveAdsLimitTier where
3972− fromText = \case
3973− "ACTIVE_ADS_TIER_100K" -> Just AAALTActiveAdsTier100K
3974− "ACTIVE_ADS_TIER_200K" -> Just AAALTActiveAdsTier200K
3975− "ACTIVE_ADS_TIER_300K" -> Just AAALTActiveAdsTier300K
3976− "ACTIVE_ADS_TIER_40K" -> Just AAALTActiveAdsTier40K
3977− "ACTIVE_ADS_TIER_75K" -> Just AAALTActiveAdsTier75K
3978− _ -> Nothing
3979−
3980−instance ToText AccountActiveAdsLimitTier where
3981− toText = \case
3971+instance FromHttpApiData AccountActiveAdsLimitTier where
3972+ parseQueryParam = \case
3973+ "ACTIVE_ADS_TIER_100K" -> Right AAALTActiveAdsTier100K
3974+ "ACTIVE_ADS_TIER_200K" -> Right AAALTActiveAdsTier200K
3975+ "ACTIVE_ADS_TIER_300K" -> Right AAALTActiveAdsTier300K
3976+ "ACTIVE_ADS_TIER_40K" -> Right AAALTActiveAdsTier40K
3977+ "ACTIVE_ADS_TIER_75K" -> Right AAALTActiveAdsTier75K
3978+ x -> Left ("Unable to parse AccountActiveAdsLimitTier from: " <> x)
3979+
3980+instance ToHttpApiData AccountActiveAdsLimitTier where
3981+ toQueryParam = \case
39823982 AAALTActiveAdsTier100K -> "ACTIVE_ADS_TIER_100K"
39833983 AAALTActiveAdsTier200K -> "ACTIVE_ADS_TIER_200K"
39843984 AAALTActiveAdsTier300K -> "ACTIVE_ADS_TIER_300K"
@@ -4001,14 +4001,14 @@ data AccountsListSortOrder
40014001
40024002instance Hashable AccountsListSortOrder
40034003
4004−instance FromText AccountsListSortOrder where
4005− fromText = \case
4006− "ASCENDING" -> Just AAscending
4007− "DESCENDING" -> Just ADescending
4008− _ -> Nothing
4004+instance FromHttpApiData AccountsListSortOrder where
4005+ parseQueryParam = \case
4006+ "ASCENDING" -> Right AAscending
4007+ "DESCENDING" -> Right ADescending
4008+ x -> Left ("Unable to parse AccountsListSortOrder from: " <> x)
40094009
4010−instance ToText AccountsListSortOrder where
4011− toText = \case
4010+instance ToHttpApiData AccountsListSortOrder where
4011+ toQueryParam = \case
40124012 AAscending -> "ASCENDING"
40134013 ADescending -> "DESCENDING"
40144014
@@ -4028,14 +4028,14 @@ data SubAccountsListSortField
40284028
40294029instance Hashable SubAccountsListSortField
40304030
4031−instance FromText SubAccountsListSortField where
4032− fromText = \case
4033− "ID" -> Just SALSFID
4034− "NAME" -> Just SALSFName
4035− _ -> Nothing
4031+instance FromHttpApiData SubAccountsListSortField where
4032+ parseQueryParam = \case
4033+ "ID" -> Right SALSFID
4034+ "NAME" -> Right SALSFName
4035+ x -> Left ("Unable to parse SubAccountsListSortField from: " <> x)
40364036
4037−instance ToText SubAccountsListSortField where
4038− toText = \case
4037+instance ToHttpApiData SubAccountsListSortField where
4038+ toQueryParam = \case
40394039 SALSFID -> "ID"
40404040 SALSFName -> "NAME"
40414041
@@ -4055,14 +4055,14 @@ data AdsListSortField
40554055
40564056instance Hashable AdsListSortField
40574057
4058−instance FromText AdsListSortField where
4059− fromText = \case
4060− "ID" -> Just ALSFID
4061− "NAME" -> Just ALSFName
4062− _ -> Nothing
4058+instance FromHttpApiData AdsListSortField where
4059+ parseQueryParam = \case
4060+ "ID" -> Right ALSFID
4061+ "NAME" -> Right ALSFName
4062+ x -> Left ("Unable to parse AdsListSortField from: " <> x)
40634063
4064−instance ToText AdsListSortField where
4065− toText = \case
4064+instance ToHttpApiData AdsListSortField where
4065+ toQueryParam = \case
40664066 ALSFID -> "ID"
40674067 ALSFName -> "NAME"
40684068
@@ -4082,14 +4082,14 @@ data ProjectsListSortField
40824082
40834083instance Hashable ProjectsListSortField
40844084
4085−instance FromText ProjectsListSortField where
4086− fromText = \case
4087− "ID" -> Just PID
4088− "NAME" -> Just PName
4089− _ -> Nothing
4085+instance FromHttpApiData ProjectsListSortField where
4086+ parseQueryParam = \case
4087+ "ID" -> Right PID
4088+ "NAME" -> Right PName
4089+ x -> Left ("Unable to parse ProjectsListSortField from: " <> x)
40904090
4091−instance ToText ProjectsListSortField where
4092− toText = \case
4091+instance ToHttpApiData ProjectsListSortField where
4092+ toQueryParam = \case
40934093 PID -> "ID"
40944094 PName -> "NAME"
40954095
@@ -4113,16 +4113,16 @@ data AdsListType
41134113
41144114instance Hashable AdsListType
41154115
4116−instance FromText AdsListType where
4117− fromText = \case
4118− "AD_SERVING_CLICK_TRACKER" -> Just AdServingClickTracker
4119− "AD_SERVING_DEFAULT_AD" -> Just AdServingDefaultAd
4120− "AD_SERVING_STANDARD_AD" -> Just AdServingStandardAd
4121− "AD_SERVING_TRACKING" -> Just AdServingTracking
4122− _ -> Nothing
4116+instance FromHttpApiData AdsListType where
4117+ parseQueryParam = \case
4118+ "AD_SERVING_CLICK_TRACKER" -> Right AdServingClickTracker
4119+ "AD_SERVING_DEFAULT_AD" -> Right AdServingDefaultAd
4120+ "AD_SERVING_STANDARD_AD" -> Right AdServingStandardAd
4121+ "AD_SERVING_TRACKING" -> Right AdServingTracking
4122+ x -> Left ("Unable to parse AdsListType from: " <> x)
41234123
4124−instance ToText AdsListType where
4125− toText = \case
4124+instance ToHttpApiData AdsListType where
4125+ toQueryParam = \case
41264126 AdServingClickTracker -> "AD_SERVING_CLICK_TRACKER"
41274127 AdServingDefaultAd -> "AD_SERVING_DEFAULT_AD"
41284128 AdServingStandardAd -> "AD_SERVING_STANDARD_AD"
@@ -4150,17 +4150,17 @@ data CreativeOptimizationConfigurationOptimizationModel
41504150
41514151instance Hashable CreativeOptimizationConfigurationOptimizationModel
41524152
4153−instance FromText CreativeOptimizationConfigurationOptimizationModel where
4154− fromText = \case
4155− "CLICK" -> Just Click
4156− "POST_CLICK" -> Just PostClick
4157− "POST_CLICK_AND_IMPRESSION" -> Just PostClickAndImpression
4158− "POST_IMPRESSION" -> Just PostImpression
4159− "VIDEO_COMPLETION" -> Just VideoCompletion
4160− _ -> Nothing
4161−
4162−instance ToText CreativeOptimizationConfigurationOptimizationModel where
4163− toText = \case
4153+instance FromHttpApiData CreativeOptimizationConfigurationOptimizationModel where
4154+ parseQueryParam = \case
4155+ "CLICK" -> Right Click
4156+ "POST_CLICK" -> Right PostClick
4157+ "POST_CLICK_AND_IMPRESSION" -> Right PostClickAndImpression
4158+ "POST_IMPRESSION" -> Right PostImpression
4159+ "VIDEO_COMPLETION" -> Right VideoCompletion
4160+ x -> Left ("Unable to parse CreativeOptimizationConfigurationOptimizationModel from: " <> x)
4161+
4162+instance ToHttpApiData CreativeOptimizationConfigurationOptimizationModel where
4163+ toQueryParam = \case
41644164 Click -> "CLICK"
41654165 PostClick -> "POST_CLICK"
41664166 PostClickAndImpression -> "POST_CLICK_AND_IMPRESSION"
@@ -4183,14 +4183,14 @@ data AccountPermissionLevel
41834183
41844184instance Hashable AccountPermissionLevel
41854185
4186−instance FromText AccountPermissionLevel where
4187− fromText = \case
4188− "ADMINISTRATOR" -> Just Administrator
4189− "USER" -> Just User
4190− _ -> Nothing
4186+instance FromHttpApiData AccountPermissionLevel where
4187+ parseQueryParam = \case
4188+ "ADMINISTRATOR" -> Right Administrator
4189+ "USER" -> Right User
4190+ x -> Left ("Unable to parse AccountPermissionLevel from: " <> x)
41914191
4192−instance ToText AccountPermissionLevel where
4193− toText = \case
4192+instance ToHttpApiData AccountPermissionLevel where
4193+ toQueryParam = \case
41944194 Administrator -> "ADMINISTRATOR"
41954195 User -> "USER"
41964196
@@ -4217,15 +4217,15 @@ data ListPopulationTermType
42174217
42184218instance Hashable ListPopulationTermType
42194219
4220−instance FromText ListPopulationTermType where
4221− fromText = \case
4222− "CUSTOM_VARIABLE_TERM" -> Just CustomVariableTerm
4223− "LIST_MEMBERSHIP_TERM" -> Just ListMembershipTerm
4224− "REFERRER_TERM" -> Just ReferrerTerm
4225− _ -> Nothing
4220+instance FromHttpApiData ListPopulationTermType where
4221+ parseQueryParam = \case
4222+ "CUSTOM_VARIABLE_TERM" -> Right CustomVariableTerm
4223+ "LIST_MEMBERSHIP_TERM" -> Right ListMembershipTerm
4224+ "REFERRER_TERM" -> Right ReferrerTerm
4225+ x -> Left ("Unable to parse ListPopulationTermType from: " <> x)
42264226
4227−instance ToText ListPopulationTermType where
4228− toText = \case
4227+instance ToHttpApiData ListPopulationTermType where
4228+ toQueryParam = \case
42294229 CustomVariableTerm -> "CUSTOM_VARIABLE_TERM"
42304230 ListMembershipTerm -> "LIST_MEMBERSHIP_TERM"
42314231 ReferrerTerm -> "REFERRER_TERM"
@@ -4246,14 +4246,14 @@ data AdvertiserGroupsListSortOrder
42464246
42474247instance Hashable AdvertiserGroupsListSortOrder
42484248
4249−instance FromText AdvertiserGroupsListSortOrder where
4250− fromText = \case
4251− "ASCENDING" -> Just AGLSOAscending
4252− "DESCENDING" -> Just AGLSODescending
4253− _ -> Nothing
4249+instance FromHttpApiData AdvertiserGroupsListSortOrder where
4250+ parseQueryParam = \case
4251+ "ASCENDING" -> Right AGLSOAscending
4252+ "DESCENDING" -> Right AGLSODescending
4253+ x -> Left ("Unable to parse AdvertiserGroupsListSortOrder from: " <> x)
42544254
4255−instance ToText AdvertiserGroupsListSortOrder where
4256− toText = \case
4255+instance ToHttpApiData AdvertiserGroupsListSortOrder where
4256+ toQueryParam = \case
42574257 AGLSOAscending -> "ASCENDING"
42584258 AGLSODescending -> "DESCENDING"
42594259
@@ -4273,14 +4273,14 @@ data CreativeFieldValuesListSortOrder
42734273
42744274instance Hashable CreativeFieldValuesListSortOrder
42754275
4276−instance FromText CreativeFieldValuesListSortOrder where
4277− fromText = \case
4278− "ASCENDING" -> Just CFVLSOAscending
4279− "DESCENDING" -> Just CFVLSODescending
4280− _ -> Nothing
4276+instance FromHttpApiData CreativeFieldValuesListSortOrder where
4277+ parseQueryParam = \case
4278+ "ASCENDING" -> Right CFVLSOAscending
4279+ "DESCENDING" -> Right CFVLSODescending
4280+ x -> Left ("Unable to parse CreativeFieldValuesListSortOrder from: " <> x)
42814281
4282−instance ToText CreativeFieldValuesListSortOrder where
4283− toText = \case
4282+instance ToHttpApiData CreativeFieldValuesListSortOrder where
4283+ toQueryParam = \case
42844284 CFVLSOAscending -> "ASCENDING"
42854285 CFVLSODescending -> "DESCENDING"
42864286
@@ -4300,14 +4300,14 @@ data SortedDimensionSortOrder
43004300
43014301instance Hashable SortedDimensionSortOrder
43024302
4303−instance FromText SortedDimensionSortOrder where
4304− fromText = \case
4305− "ASCENDING" -> Just SDSOAscending
4306− "DESCENDING" -> Just SDSODescending
4307− _ -> Nothing
4303+instance FromHttpApiData SortedDimensionSortOrder where
4304+ parseQueryParam = \case
4305+ "ASCENDING" -> Right SDSOAscending
4306+ "DESCENDING" -> Right SDSODescending
4307+ x -> Left ("Unable to parse SortedDimensionSortOrder from: " <> x)
43084308
4309−instance ToText SortedDimensionSortOrder where
4310− toText = \case
4309+instance ToHttpApiData SortedDimensionSortOrder where
4310+ toQueryParam = \case
43114311 SDSOAscending -> "ASCENDING"
43124312 SDSODescending -> "DESCENDING"
43134313
@@ -4329,14 +4329,14 @@ data FilesListSortField
43294329
43304330instance Hashable FilesListSortField
43314331
4332−instance FromText FilesListSortField where
4333− fromText = \case
4334− "ID" -> Just FLSFID
4335− "LAST_MODIFIED_TIME" -> Just FLSFLastModifiedTime
4336− _ -> Nothing
4332+instance FromHttpApiData FilesListSortField where
4333+ parseQueryParam = \case
4334+ "ID" -> Right FLSFID
4335+ "LAST_MODIFIED_TIME" -> Right FLSFLastModifiedTime
4336+ x -> Left ("Unable to parse FilesListSortField from: " <> x)
43374337
4338−instance ToText FilesListSortField where
4339− toText = \case
4338+instance ToHttpApiData FilesListSortField where
4339+ toQueryParam = \case
43404340 FLSFID -> "ID"
43414341 FLSFLastModifiedTime -> "LAST_MODIFIED_TIME"
43424342
@@ -4357,15 +4357,15 @@ data DirectorySiteInterstitialTagFormatsItem
43574357
43584358instance Hashable DirectorySiteInterstitialTagFormatsItem
43594359
4360−instance FromText DirectorySiteInterstitialTagFormatsItem where
4361− fromText = \case
4362− "IFRAME_JAVASCRIPT_INTERSTITIAL" -> Just IframeJavascriptInterstitial
4363− "INTERNAL_REDIRECT_INTERSTITIAL" -> Just InternalRedirectInterstitial
4364− "JAVASCRIPT_INTERSTITIAL" -> Just JavascriptInterstitial
4365− _ -> Nothing
4360+instance FromHttpApiData DirectorySiteInterstitialTagFormatsItem where
4361+ parseQueryParam = \case
4362+ "IFRAME_JAVASCRIPT_INTERSTITIAL" -> Right IframeJavascriptInterstitial
4363+ "INTERNAL_REDIRECT_INTERSTITIAL" -> Right InternalRedirectInterstitial
4364+ "JAVASCRIPT_INTERSTITIAL" -> Right JavascriptInterstitial
4365+ x -> Left ("Unable to parse DirectorySiteInterstitialTagFormatsItem from: " <> x)
43664366
4367−instance ToText DirectorySiteInterstitialTagFormatsItem where
4368− toText = \case
4367+instance ToHttpApiData DirectorySiteInterstitialTagFormatsItem where
4368+ toQueryParam = \case
43694369 IframeJavascriptInterstitial -> "IFRAME_JAVASCRIPT_INTERSTITIAL"
43704370 InternalRedirectInterstitial -> "INTERNAL_REDIRECT_INTERSTITIAL"
43714371 JavascriptInterstitial -> "JAVASCRIPT_INTERSTITIAL"
@@ -4386,14 +4386,14 @@ data EventTagsListSortField
43864386
43874387instance Hashable EventTagsListSortField
43884388
4389−instance FromText EventTagsListSortField where
4390− fromText = \case
4391− "ID" -> Just ETLSFID
4392− "NAME" -> Just ETLSFName
4393− _ -> Nothing
4389+instance FromHttpApiData EventTagsListSortField where
4390+ parseQueryParam = \case
4391+ "ID" -> Right ETLSFID
4392+ "NAME" -> Right ETLSFName
4393+ x -> Left ("Unable to parse EventTagsListSortField from: " <> x)
43944394
4395−instance ToText EventTagsListSortField where
4396− toText = \case
4395+instance ToHttpApiData EventTagsListSortField where
4396+ toQueryParam = \case
43974397 ETLSFID -> "ID"
43984398 ETLSFName -> "NAME"
43994399
@@ -4413,14 +4413,14 @@ data InventoryItemType
44134413
44144414instance Hashable InventoryItemType
44154415
4416−instance FromText InventoryItemType where
4417− fromText = \case
4418− "PLANNING_PLACEMENT_TYPE_CREDIT" -> Just IITPlanningPlacementTypeCredit
4419− "PLANNING_PLACEMENT_TYPE_REGULAR" -> Just IITPlanningPlacementTypeRegular
4420− _ -> Nothing
4416+instance FromHttpApiData InventoryItemType where
4417+ parseQueryParam = \case
4418+ "PLANNING_PLACEMENT_TYPE_CREDIT" -> Right IITPlanningPlacementTypeCredit
4419+ "PLANNING_PLACEMENT_TYPE_REGULAR" -> Right IITPlanningPlacementTypeRegular
4420+ x -> Left ("Unable to parse InventoryItemType from: " <> x)
44214421
4422−instance ToText InventoryItemType where
4423− toText = \case
4422+instance ToHttpApiData InventoryItemType where
4423+ toQueryParam = \case
44244424 IITPlanningPlacementTypeCredit -> "PLANNING_PLACEMENT_TYPE_CREDIT"
44254425 IITPlanningPlacementTypeRegular -> "PLANNING_PLACEMENT_TYPE_REGULAR"
44264426
@@ -4444,15 +4444,15 @@ data CreativeAssetPositionTopUnit
44444444
44454445instance Hashable CreativeAssetPositionTopUnit
44464446
4447−instance FromText CreativeAssetPositionTopUnit where
4448− fromText = \case
4449− "OFFSET_UNIT_PERCENT" -> Just CAPTUOffSetUnitPercent
4450− "OFFSET_UNIT_PIXEL" -> Just CAPTUOffSetUnitPixel
4451− "OFFSET_UNIT_PIXEL_FROM_CENTER" -> Just CAPTUOffSetUnitPixelFromCenter
4452− _ -> Nothing
4447+instance FromHttpApiData CreativeAssetPositionTopUnit where
4448+ parseQueryParam = \case
4449+ "OFFSET_UNIT_PERCENT" -> Right CAPTUOffSetUnitPercent
4450+ "OFFSET_UNIT_PIXEL" -> Right CAPTUOffSetUnitPixel
4451+ "OFFSET_UNIT_PIXEL_FROM_CENTER" -> Right CAPTUOffSetUnitPixelFromCenter
4452+ x -> Left ("Unable to parse CreativeAssetPositionTopUnit from: " <> x)
44534453
4454−instance ToText CreativeAssetPositionTopUnit where
4455− toText = \case
4454+instance ToHttpApiData CreativeAssetPositionTopUnit where
4455+ toQueryParam = \case
44564456 CAPTUOffSetUnitPercent -> "OFFSET_UNIT_PERCENT"
44574457 CAPTUOffSetUnitPixel -> "OFFSET_UNIT_PIXEL"
44584458 CAPTUOffSetUnitPixelFromCenter -> "OFFSET_UNIT_PIXEL_FROM_CENTER"
@@ -4474,14 +4474,14 @@ data FloodlightActivityFloodlightActivityGroupType
44744474
44754475instance Hashable FloodlightActivityFloodlightActivityGroupType
44764476
4477−instance FromText FloodlightActivityFloodlightActivityGroupType where
4478− fromText = \case
4479− "COUNTER" -> Just FAFAGTCounter
4480− "SALE" -> Just FAFAGTSale
4481− _ -> Nothing
4477+instance FromHttpApiData FloodlightActivityFloodlightActivityGroupType where
4478+ parseQueryParam = \case
4479+ "COUNTER" -> Right FAFAGTCounter
4480+ "SALE" -> Right FAFAGTSale
4481+ x -> Left ("Unable to parse FloodlightActivityFloodlightActivityGroupType from: " <> x)
44824482
4483−instance ToText FloodlightActivityFloodlightActivityGroupType where
4484− toText = \case
4483+instance ToHttpApiData FloodlightActivityFloodlightActivityGroupType where
4484+ toQueryParam = \case
44854485 FAFAGTCounter -> "COUNTER"
44864486 FAFAGTSale -> "SALE"
44874487
@@ -4501,14 +4501,14 @@ data DirectorySiteContactsListSortOrder
45014501
45024502instance Hashable DirectorySiteContactsListSortOrder
45034503
4504−instance FromText DirectorySiteContactsListSortOrder where
4505− fromText = \case
4506− "ASCENDING" -> Just DSCLSOAscending
4507− "DESCENDING" -> Just DSCLSODescending
4508− _ -> Nothing
4504+instance FromHttpApiData DirectorySiteContactsListSortOrder where
4505+ parseQueryParam = \case
4506+ "ASCENDING" -> Right DSCLSOAscending
4507+ "DESCENDING" -> Right DSCLSODescending
4508+ x -> Left ("Unable to parse DirectorySiteContactsListSortOrder from: " <> x)
45094509
4510−instance ToText DirectorySiteContactsListSortOrder where
4511− toText = \case
4510+instance ToHttpApiData DirectorySiteContactsListSortOrder where
4511+ toQueryParam = \case
45124512 DSCLSOAscending -> "ASCENDING"
45134513 DSCLSODescending -> "DESCENDING"
45144514
@@ -4535,14 +4535,14 @@ data PricingGroupType
45354535
45364536instance Hashable PricingGroupType
45374537
4538−instance FromText PricingGroupType where
4539− fromText = \case
4540− "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE" -> Just PlanningPlacementGroupTypePackage
4541− "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" -> Just PlanningPlacementGroupTypeRoadblock
4542− _ -> Nothing
4538+instance FromHttpApiData PricingGroupType where
4539+ parseQueryParam = \case
4540+ "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE" -> Right PlanningPlacementGroupTypePackage
4541+ "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" -> Right PlanningPlacementGroupTypeRoadblock
4542+ x -> Left ("Unable to parse PricingGroupType from: " <> x)
45434543
4544−instance ToText PricingGroupType where
4545− toText = \case
4544+instance ToHttpApiData PricingGroupType where
4545+ toQueryParam = \case
45464546 PlanningPlacementGroupTypePackage -> "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE"
45474547 PlanningPlacementGroupTypeRoadblock -> "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK"
45484548
@@ -4606,36 +4606,36 @@ data AdsListCreativeType
46064606
46074607instance Hashable AdsListCreativeType
46084608
4609−instance FromText AdsListCreativeType where
4610− fromText = \case
4611− "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Just ALCTBrandSafeDefaultInstreamVideo
4612− "CUSTOM_INPAGE" -> Just ALCTCustomInpage
4613− "CUSTOM_INTERSTITIAL" -> Just ALCTCustomInterstitial
4614− "ENHANCED_BANNER" -> Just ALCTEnhancedBanner
4615− "ENHANCED_IMAGE" -> Just ALCTEnhancedImage
4616− "FLASH_INPAGE" -> Just ALCTFlashInpage
4617− "HTML5_BANNER" -> Just ALCTHTML5Banner
4618− "IMAGE" -> Just ALCTImage
4619− "INSTREAM_VIDEO" -> Just ALCTInstreamVideo
4620− "INSTREAM_VIDEO_REDIRECT" -> Just ALCTInstreamVideoRedirect
4621− "INTERNAL_REDIRECT" -> Just ALCTInternalRedirect
4622− "INTERSTITIAL_INTERNAL_REDIRECT" -> Just ALCTInterstitialInternalRedirect
4623− "REDIRECT" -> Just ALCTRedirect
4624− "RICH_MEDIA_EXPANDING" -> Just ALCTRichMediaExpanding
4625− "RICH_MEDIA_IM_EXPAND" -> Just ALCTRichMediaImExpand
4626− "RICH_MEDIA_INPAGE" -> Just ALCTRichMediaInpage
4627− "RICH_MEDIA_INPAGE_FLOATING" -> Just ALCTRichMediaInpageFloating
4628− "RICH_MEDIA_INTERSTITIAL_FLOAT" -> Just ALCTRichMediaInterstitialFloat
4629− "RICH_MEDIA_MOBILE_IN_APP" -> Just ALCTRichMediaMobileInApp
4630− "RICH_MEDIA_MULTI_FLOATING" -> Just ALCTRichMediaMultiFloating
4631− "RICH_MEDIA_PEEL_DOWN" -> Just ALCTRichMediaPeelDown
4632− "TRACKING_TEXT" -> Just ALCTTrackingText
4633− "VPAID_LINEAR" -> Just ALCTVpaidLinear
4634− "VPAID_NON_LINEAR" -> Just ALCTVpaidNonLinear
4635− _ -> Nothing
4636−
4637−instance ToText AdsListCreativeType where
4638− toText = \case
4609+instance FromHttpApiData AdsListCreativeType where
4610+ parseQueryParam = \case
4611+ "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Right ALCTBrandSafeDefaultInstreamVideo
4612+ "CUSTOM_INPAGE" -> Right ALCTCustomInpage
4613+ "CUSTOM_INTERSTITIAL" -> Right ALCTCustomInterstitial
4614+ "ENHANCED_BANNER" -> Right ALCTEnhancedBanner
4615+ "ENHANCED_IMAGE" -> Right ALCTEnhancedImage
4616+ "FLASH_INPAGE" -> Right ALCTFlashInpage
4617+ "HTML5_BANNER" -> Right ALCTHTML5Banner
4618+ "IMAGE" -> Right ALCTImage
4619+ "INSTREAM_VIDEO" -> Right ALCTInstreamVideo
4620+ "INSTREAM_VIDEO_REDIRECT" -> Right ALCTInstreamVideoRedirect
4621+ "INTERNAL_REDIRECT" -> Right ALCTInternalRedirect
4622+ "INTERSTITIAL_INTERNAL_REDIRECT" -> Right ALCTInterstitialInternalRedirect
4623+ "REDIRECT" -> Right ALCTRedirect
4624+ "RICH_MEDIA_EXPANDING" -> Right ALCTRichMediaExpanding
4625+ "RICH_MEDIA_IM_EXPAND" -> Right ALCTRichMediaImExpand
4626+ "RICH_MEDIA_INPAGE" -> Right ALCTRichMediaInpage
4627+ "RICH_MEDIA_INPAGE_FLOATING" -> Right ALCTRichMediaInpageFloating
4628+ "RICH_MEDIA_INTERSTITIAL_FLOAT" -> Right ALCTRichMediaInterstitialFloat
4629+ "RICH_MEDIA_MOBILE_IN_APP" -> Right ALCTRichMediaMobileInApp
4630+ "RICH_MEDIA_MULTI_FLOATING" -> Right ALCTRichMediaMultiFloating
4631+ "RICH_MEDIA_PEEL_DOWN" -> Right ALCTRichMediaPeelDown
4632+ "TRACKING_TEXT" -> Right ALCTTrackingText
4633+ "VPAID_LINEAR" -> Right ALCTVpaidLinear
4634+ "VPAID_NON_LINEAR" -> Right ALCTVpaidNonLinear
4635+ x -> Left ("Unable to parse AdsListCreativeType from: " <> x)
4636+
4637+instance ToHttpApiData AdsListCreativeType where
4638+ toQueryParam = \case
46394639 ALCTBrandSafeDefaultInstreamVideo -> "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
46404640 ALCTCustomInpage -> "CUSTOM_INPAGE"
46414641 ALCTCustomInterstitial -> "CUSTOM_INTERSTITIAL"
@@ -4677,14 +4677,14 @@ data FloodlightActivityGroupsListSortOrder
46774677
46784678instance Hashable FloodlightActivityGroupsListSortOrder
46794679
4680−instance FromText FloodlightActivityGroupsListSortOrder where
4681− fromText = \case
4682− "ASCENDING" -> Just FAGLSOAscending
4683− "DESCENDING" -> Just FAGLSODescending
4684− _ -> Nothing
4680+instance FromHttpApiData FloodlightActivityGroupsListSortOrder where
4681+ parseQueryParam = \case
4682+ "ASCENDING" -> Right FAGLSOAscending
4683+ "DESCENDING" -> Right FAGLSODescending
4684+ x -> Left ("Unable to parse FloodlightActivityGroupsListSortOrder from: " <> x)
46854685
4686−instance ToText FloodlightActivityGroupsListSortOrder where
4687− toText = \case
4686+instance ToHttpApiData FloodlightActivityGroupsListSortOrder where
4687+ toQueryParam = \case
46884688 FAGLSOAscending -> "ASCENDING"
46894689 FAGLSODescending -> "DESCENDING"
46904690
@@ -4705,14 +4705,14 @@ data CreativeRotationType
47054705
47064706instance Hashable CreativeRotationType
47074707
4708−instance FromText CreativeRotationType where
4709− fromText = \case
4710− "CREATIVE_ROTATION_TYPE_RANDOM" -> Just CreativeRotationTypeRandom
4711− "CREATIVE_ROTATION_TYPE_SEQUENTIAL" -> Just CreativeRotationTypeSequential
4712− _ -> Nothing
4708+instance FromHttpApiData CreativeRotationType where
4709+ parseQueryParam = \case
4710+ "CREATIVE_ROTATION_TYPE_RANDOM" -> Right CreativeRotationTypeRandom
4711+ "CREATIVE_ROTATION_TYPE_SEQUENTIAL" -> Right CreativeRotationTypeSequential
4712+ x -> Left ("Unable to parse CreativeRotationType from: " <> x)
47134713
4714−instance ToText CreativeRotationType where
4715− toText = \case
4714+instance ToHttpApiData CreativeRotationType where
4715+ toQueryParam = \case
47164716 CreativeRotationTypeRandom -> "CREATIVE_ROTATION_TYPE_RANDOM"
47174717 CreativeRotationTypeSequential -> "CREATIVE_ROTATION_TYPE_SEQUENTIAL"
47184718
@@ -4732,14 +4732,14 @@ data OrdersListSortField
47324732
47334733instance Hashable OrdersListSortField
47344734
4735−instance FromText OrdersListSortField where
4736− fromText = \case
4737− "ID" -> Just OLSFID
4738− "NAME" -> Just OLSFName
4739− _ -> Nothing
4735+instance FromHttpApiData OrdersListSortField where
4736+ parseQueryParam = \case
4737+ "ID" -> Right OLSFID
4738+ "NAME" -> Right OLSFName
4739+ x -> Left ("Unable to parse OrdersListSortField from: " <> x)
47404740
4741−instance ToText OrdersListSortField where
4742− toText = \case
4741+instance ToHttpApiData OrdersListSortField where
4742+ toQueryParam = \case
47434743 OLSFID -> "ID"
47444744 OLSFName -> "NAME"
47454745
@@ -4759,14 +4759,14 @@ data PlacementGroupsListSortField
47594759
47604760instance Hashable PlacementGroupsListSortField
47614761
4762−instance FromText PlacementGroupsListSortField where
4763− fromText = \case
4764− "ID" -> Just PGLSFID
4765− "NAME" -> Just PGLSFName
4766− _ -> Nothing
4762+instance FromHttpApiData PlacementGroupsListSortField where
4763+ parseQueryParam = \case
4764+ "ID" -> Right PGLSFID
4765+ "NAME" -> Right PGLSFName
4766+ x -> Left ("Unable to parse PlacementGroupsListSortField from: " <> x)
47674767
4768−instance ToText PlacementGroupsListSortField where
4769− toText = \case
4768+instance ToHttpApiData PlacementGroupsListSortField where
4769+ toQueryParam = \case
47704770 PGLSFID -> "ID"
47714771 PGLSFName -> "NAME"
47724772
@@ -4786,14 +4786,14 @@ data DirectorySitesListSortOrder
47864786
47874787instance Hashable DirectorySitesListSortOrder
47884788
4789−instance FromText DirectorySitesListSortOrder where
4790− fromText = \case
4791− "ASCENDING" -> Just DSLSOAscending
4792− "DESCENDING" -> Just DSLSODescending
4793− _ -> Nothing
4789+instance FromHttpApiData DirectorySitesListSortOrder where
4790+ parseQueryParam = \case
4791+ "ASCENDING" -> Right DSLSOAscending
4792+ "DESCENDING" -> Right DSLSODescending
4793+ x -> Left ("Unable to parse DirectorySitesListSortOrder from: " <> x)
47944794
4795−instance ToText DirectorySitesListSortOrder where
4796− toText = \case
4795+instance ToHttpApiData DirectorySitesListSortOrder where
4796+ toQueryParam = \case
47974797 DSLSOAscending -> "ASCENDING"
47984798 DSLSODescending -> "DESCENDING"
47994799
@@ -4940,78 +4940,78 @@ data CreativeAssetDetectedFeaturesItem
49404940
49414941instance Hashable CreativeAssetDetectedFeaturesItem
49424942
4943−instance FromText CreativeAssetDetectedFeaturesItem where
4944− fromText = \case
4945− "APPLICATION_CACHE" -> Just CADFIApplicationCache
4946− "AUDIO" -> Just CADFIAudio
4947− "CANVAS" -> Just CADFICanvas
4948− "CANVAS_TEXT" -> Just CADFICanvasText
4949− "CSS_ANIMATIONS" -> Just CADFICssAnimations
4950− "CSS_BACKGROUND_SIZE" -> Just CADFICssBackgRoundSize
4951− "CSS_BORDER_IMAGE" -> Just CADFICssBOrderImage
4952− "CSS_BORDER_RADIUS" -> Just CADFICssBOrderRadius
4953− "CSS_BOX_SHADOW" -> Just CADFICssBoxShadow
4954− "CSS_COLUMNS" -> Just CADFICssColumns
4955− "CSS_FLEX_BOX" -> Just CADFICssFlexBox
4956− "CSS_FONT_FACE" -> Just CADFICssFontFace
4957− "CSS_GENERATED_CONTENT" -> Just CADFICssGeneratedContent
4958− "CSS_GRADIENTS" -> Just CADFICssGradients
4959− "CSS_HSLA" -> Just CADFICssHsla
4960− "CSS_MULTIPLE_BGS" -> Just CADFICssMultipleBgs
4961− "CSS_OPACITY" -> Just CADFICssOpacity
4962− "CSS_REFLECTIONS" -> Just CADFICssReflections
4963− "CSS_RGBA" -> Just CADFICssRgba
4964− "CSS_TEXT_SHADOW" -> Just CADFICssTextShadow
4965− "CSS_TRANSFORMS" -> Just CADFICssTransforms
4966− "CSS_TRANSFORMS3D" -> Just CADFICssTRANSFORMS3D
4967− "CSS_TRANSITIONS" -> Just CADFICssTransitions
4968− "DRAG_AND_DROP" -> Just CADFIDragAndDrop
4969− "GEO_LOCATION" -> Just CADFIGeoLocation
4970− "HASH_CHANGE" -> Just CADFIHashChange
4971− "HISTORY" -> Just CADFIHistory
4972− "INDEXED_DB" -> Just CADFIIndexedDB
4973− "INLINE_SVG" -> Just CADFIInlineSvg
4974− "INPUT_ATTR_AUTOCOMPLETE" -> Just CADFIInputAttrAutocomplete
4975− "INPUT_ATTR_AUTOFOCUS" -> Just CADFIInputAttrAutofocus
4976− "INPUT_ATTR_LIST" -> Just CADFIInputAttrList
4977− "INPUT_ATTR_MAX" -> Just CADFIInputAttrMax
4978− "INPUT_ATTR_MIN" -> Just CADFIInputAttrMin
4979− "INPUT_ATTR_MULTIPLE" -> Just CADFIInputAttrMultiple
4980− "INPUT_ATTR_PATTERN" -> Just CADFIInputAttrPattern
4981− "INPUT_ATTR_PLACEHOLDER" -> Just CADFIInputAttrPlaceholder
4982− "INPUT_ATTR_REQUIRED" -> Just CADFIInputAttrRequired
4983− "INPUT_ATTR_STEP" -> Just CADFIInputAttrStep
4984− "INPUT_TYPE_COLOR" -> Just CADFIInputTypeColor
4985− "INPUT_TYPE_DATE" -> Just CADFIInputTypeDate
4986− "INPUT_TYPE_DATETIME" -> Just CADFIInputTypeDatetime
4987− "INPUT_TYPE_DATETIME_LOCAL" -> Just CADFIInputTypeDatetimeLocal
4988− "INPUT_TYPE_EMAIL" -> Just CADFIInputTypeEmail
4989− "INPUT_TYPE_MONTH" -> Just CADFIInputTypeMonth
4990− "INPUT_TYPE_NUMBER" -> Just CADFIInputTypeNumber
4991− "INPUT_TYPE_RANGE" -> Just CADFIInputTypeRange
4992− "INPUT_TYPE_SEARCH" -> Just CADFIInputTypeSearch
4993− "INPUT_TYPE_TEL" -> Just CADFIInputTypeTel
4994− "INPUT_TYPE_TIME" -> Just CADFIInputTypeTime
4995− "INPUT_TYPE_URL" -> Just CADFIInputTypeURL
4996− "INPUT_TYPE_WEEK" -> Just CADFIInputTypeWeek
4997− "LOCAL_STORAGE" -> Just CADFILocalStorage
4998− "POST_MESSAGE" -> Just CADFIPostMessage
4999− "SESSION_STORAGE" -> Just CADFISessionStorage
5000− "SMIL" -> Just CADFISmil
5001− "SVG_CLIP_PATHS" -> Just CADFISvgClipPaths
5002− "SVG_FE_IMAGE" -> Just CADFISvgFeImage
5003− "SVG_FILTERS" -> Just CADFISvgFilters
5004− "SVG_HREF" -> Just CADFISvgHref
5005− "TOUCH" -> Just CADFITouch
5006− "VIDEO" -> Just CADFIVideo
5007− "WEBGL" -> Just CADFIWebgl
5008− "WEB_SOCKETS" -> Just CADFIWebSockets
5009− "WEB_SQL_DATABASE" -> Just CADFIWebSQLDatabase
5010− "WEB_WORKERS" -> Just CADFIWebWorkers
5011− _ -> Nothing
5012−
5013−instance ToText CreativeAssetDetectedFeaturesItem where
5014− toText = \case
4943+instance FromHttpApiData CreativeAssetDetectedFeaturesItem where
4944+ parseQueryParam = \case
4945+ "APPLICATION_CACHE" -> Right CADFIApplicationCache
4946+ "AUDIO" -> Right CADFIAudio
4947+ "CANVAS" -> Right CADFICanvas
4948+ "CANVAS_TEXT" -> Right CADFICanvasText
4949+ "CSS_ANIMATIONS" -> Right CADFICssAnimations
4950+ "CSS_BACKGROUND_SIZE" -> Right CADFICssBackgRoundSize
4951+ "CSS_BORDER_IMAGE" -> Right CADFICssBOrderImage
4952+ "CSS_BORDER_RADIUS" -> Right CADFICssBOrderRadius
4953+ "CSS_BOX_SHADOW" -> Right CADFICssBoxShadow
4954+ "CSS_COLUMNS" -> Right CADFICssColumns
4955+ "CSS_FLEX_BOX" -> Right CADFICssFlexBox
4956+ "CSS_FONT_FACE" -> Right CADFICssFontFace
4957+ "CSS_GENERATED_CONTENT" -> Right CADFICssGeneratedContent
4958+ "CSS_GRADIENTS" -> Right CADFICssGradients
4959+ "CSS_HSLA" -> Right CADFICssHsla
4960+ "CSS_MULTIPLE_BGS" -> Right CADFICssMultipleBgs
4961+ "CSS_OPACITY" -> Right CADFICssOpacity
4962+ "CSS_REFLECTIONS" -> Right CADFICssReflections
4963+ "CSS_RGBA" -> Right CADFICssRgba
4964+ "CSS_TEXT_SHADOW" -> Right CADFICssTextShadow
4965+ "CSS_TRANSFORMS" -> Right CADFICssTransforms
4966+ "CSS_TRANSFORMS3D" -> Right CADFICssTRANSFORMS3D
4967+ "CSS_TRANSITIONS" -> Right CADFICssTransitions
4968+ "DRAG_AND_DROP" -> Right CADFIDragAndDrop
4969+ "GEO_LOCATION" -> Right CADFIGeoLocation
4970+ "HASH_CHANGE" -> Right CADFIHashChange
4971+ "HISTORY" -> Right CADFIHistory
4972+ "INDEXED_DB" -> Right CADFIIndexedDB
4973+ "INLINE_SVG" -> Right CADFIInlineSvg
4974+ "INPUT_ATTR_AUTOCOMPLETE" -> Right CADFIInputAttrAutocomplete
4975+ "INPUT_ATTR_AUTOFOCUS" -> Right CADFIInputAttrAutofocus
4976+ "INPUT_ATTR_LIST" -> Right CADFIInputAttrList
4977+ "INPUT_ATTR_MAX" -> Right CADFIInputAttrMax
4978+ "INPUT_ATTR_MIN" -> Right CADFIInputAttrMin
4979+ "INPUT_ATTR_MULTIPLE" -> Right CADFIInputAttrMultiple
4980+ "INPUT_ATTR_PATTERN" -> Right CADFIInputAttrPattern
4981+ "INPUT_ATTR_PLACEHOLDER" -> Right CADFIInputAttrPlaceholder
4982+ "INPUT_ATTR_REQUIRED" -> Right CADFIInputAttrRequired
4983+ "INPUT_ATTR_STEP" -> Right CADFIInputAttrStep
4984+ "INPUT_TYPE_COLOR" -> Right CADFIInputTypeColor
4985+ "INPUT_TYPE_DATE" -> Right CADFIInputTypeDate
4986+ "INPUT_TYPE_DATETIME" -> Right CADFIInputTypeDatetime
4987+ "INPUT_TYPE_DATETIME_LOCAL" -> Right CADFIInputTypeDatetimeLocal
4988+ "INPUT_TYPE_EMAIL" -> Right CADFIInputTypeEmail
4989+ "INPUT_TYPE_MONTH" -> Right CADFIInputTypeMonth
4990+ "INPUT_TYPE_NUMBER" -> Right CADFIInputTypeNumber
4991+ "INPUT_TYPE_RANGE" -> Right CADFIInputTypeRange
4992+ "INPUT_TYPE_SEARCH" -> Right CADFIInputTypeSearch
4993+ "INPUT_TYPE_TEL" -> Right CADFIInputTypeTel
4994+ "INPUT_TYPE_TIME" -> Right CADFIInputTypeTime
4995+ "INPUT_TYPE_URL" -> Right CADFIInputTypeURL
4996+ "INPUT_TYPE_WEEK" -> Right CADFIInputTypeWeek
4997+ "LOCAL_STORAGE" -> Right CADFILocalStorage
4998+ "POST_MESSAGE" -> Right CADFIPostMessage
4999+ "SESSION_STORAGE" -> Right CADFISessionStorage
5000+ "SMIL" -> Right CADFISmil
5001+ "SVG_CLIP_PATHS" -> Right CADFISvgClipPaths
5002+ "SVG_FE_IMAGE" -> Right CADFISvgFeImage
5003+ "SVG_FILTERS" -> Right CADFISvgFilters
5004+ "SVG_HREF" -> Right CADFISvgHref
5005+ "TOUCH" -> Right CADFITouch
5006+ "VIDEO" -> Right CADFIVideo
5007+ "WEBGL" -> Right CADFIWebgl
5008+ "WEB_SOCKETS" -> Right CADFIWebSockets
5009+ "WEB_SQL_DATABASE" -> Right CADFIWebSQLDatabase
5010+ "WEB_WORKERS" -> Right CADFIWebWorkers
5011+ x -> Left ("Unable to parse CreativeAssetDetectedFeaturesItem from: " <> x)
5012+
5013+instance ToHttpApiData CreativeAssetDetectedFeaturesItem where
5014+ toQueryParam = \case
50155015 CADFIApplicationCache -> "APPLICATION_CACHE"
50165016 CADFIAudio -> "AUDIO"
50175017 CADFICanvas -> "CANVAS"
@@ -5096,14 +5096,14 @@ data FloodlightActivityGroupType
50965096
50975097instance Hashable FloodlightActivityGroupType
50985098
5099−instance FromText FloodlightActivityGroupType where
5100− fromText = \case
5101− "COUNTER" -> Just FAGTCounter
5102− "SALE" -> Just FAGTSale
5103− _ -> Nothing
5099+instance FromHttpApiData FloodlightActivityGroupType where
5100+ parseQueryParam = \case
5101+ "COUNTER" -> Right FAGTCounter
5102+ "SALE" -> Right FAGTSale
5103+ x -> Left ("Unable to parse FloodlightActivityGroupType from: " <> x)
51045104
5105−instance ToText FloodlightActivityGroupType where
5106− toText = \case
5105+instance ToHttpApiData FloodlightActivityGroupType where
5106+ toQueryParam = \case
51075107 FAGTCounter -> "COUNTER"
51085108 FAGTSale -> "SALE"
51095109
@@ -5127,16 +5127,16 @@ data DirectorySiteContactType
51275127
51285128instance Hashable DirectorySiteContactType
51295129
5130−instance FromText DirectorySiteContactType where
5131− fromText = \case
5132− "BILLING" -> Just DSCTBilling
5133− "OTHER" -> Just DSCTOther
5134− "SALES" -> Just DSCTSales
5135− "TECHNICAL" -> Just DSCTTechnical
5136− _ -> Nothing
5130+instance FromHttpApiData DirectorySiteContactType where
5131+ parseQueryParam = \case
5132+ "BILLING" -> Right DSCTBilling
5133+ "OTHER" -> Right DSCTOther
5134+ "SALES" -> Right DSCTSales
5135+ "TECHNICAL" -> Right DSCTTechnical
5136+ x -> Left ("Unable to parse DirectorySiteContactType from: " <> x)
51375137
5138−instance ToText DirectorySiteContactType where
5139− toText = \case
5138+instance ToHttpApiData DirectorySiteContactType where
5139+ toQueryParam = \case
51405140 DSCTBilling -> "BILLING"
51415141 DSCTOther -> "OTHER"
51425142 DSCTSales -> "SALES"
@@ -5190,30 +5190,30 @@ data PlacementsGeneratetagsTagFormats
51905190
51915191instance Hashable PlacementsGeneratetagsTagFormats
51925192
5193−instance FromText PlacementsGeneratetagsTagFormats where
5194− fromText = \case
5195− "PLACEMENT_TAG_CLICK_COMMANDS" -> Just PGTFPlacementTagClickCommands
5196− "PLACEMENT_TAG_IFRAME_ILAYER" -> Just PGTFPlacementTagIframeIlayer
5197− "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Just PGTFPlacementTagIframeJavascript
5198− "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Just PGTFPlacementTagIframeJavascriptLegacy
5199− "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Just PGTFPlacementTagInstreamVideoPrefetch
5200− "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Just PGTFPlacementTagInstreamVideoPrefetchVast3
5201− "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Just PGTFPlacementTagInternalRedirect
5202− "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Just PGTFPlacementTagInterstitialIframeJavascript
5203− "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Just PGTFPlacementTagInterstitialIframeJavascriptLegacy
5204− "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Just PGTFPlacementTagInterstitialInternalRedirect
5205− "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Just PGTFPlacementTagInterstitialJavascript
5206− "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Just PGTFPlacementTagInterstitialJavascriptLegacy
5207− "PLACEMENT_TAG_JAVASCRIPT" -> Just PGTFPlacementTagJavascript
5208− "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Just PGTFPlacementTagJavascriptLegacy
5209− "PLACEMENT_TAG_STANDARD" -> Just PGTFPlacementTagStandard
5210− "PLACEMENT_TAG_TRACKING" -> Just PGTFPlacementTagTracking
5211− "PLACEMENT_TAG_TRACKING_IFRAME" -> Just PGTFPlacementTagTrackingIframe
5212− "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Just PGTFPlacementTagTrackingJavascript
5213− _ -> Nothing
5214−
5215−instance ToText PlacementsGeneratetagsTagFormats where
5216− toText = \case
5193+instance FromHttpApiData PlacementsGeneratetagsTagFormats where
5194+ parseQueryParam = \case
5195+ "PLACEMENT_TAG_CLICK_COMMANDS" -> Right PGTFPlacementTagClickCommands
5196+ "PLACEMENT_TAG_IFRAME_ILAYER" -> Right PGTFPlacementTagIframeIlayer
5197+ "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Right PGTFPlacementTagIframeJavascript
5198+ "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagIframeJavascriptLegacy
5199+ "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Right PGTFPlacementTagInstreamVideoPrefetch
5200+ "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Right PGTFPlacementTagInstreamVideoPrefetchVast3
5201+ "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Right PGTFPlacementTagInternalRedirect
5202+ "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Right PGTFPlacementTagInterstitialIframeJavascript
5203+ "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagInterstitialIframeJavascriptLegacy
5204+ "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Right PGTFPlacementTagInterstitialInternalRedirect
5205+ "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Right PGTFPlacementTagInterstitialJavascript
5206+ "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagInterstitialJavascriptLegacy
5207+ "PLACEMENT_TAG_JAVASCRIPT" -> Right PGTFPlacementTagJavascript
5208+ "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Right PGTFPlacementTagJavascriptLegacy
5209+ "PLACEMENT_TAG_STANDARD" -> Right PGTFPlacementTagStandard
5210+ "PLACEMENT_TAG_TRACKING" -> Right PGTFPlacementTagTracking
5211+ "PLACEMENT_TAG_TRACKING_IFRAME" -> Right PGTFPlacementTagTrackingIframe
5212+ "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Right PGTFPlacementTagTrackingJavascript
5213+ x -> Left ("Unable to parse PlacementsGeneratetagsTagFormats from: " <> x)
5214+
5215+instance ToHttpApiData PlacementsGeneratetagsTagFormats where
5216+ toQueryParam = \case
52175217 PGTFPlacementTagClickCommands -> "PLACEMENT_TAG_CLICK_COMMANDS"
52185218 PGTFPlacementTagIframeIlayer -> "PLACEMENT_TAG_IFRAME_ILAYER"
52195219 PGTFPlacementTagIframeJavascript -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
@@ -5249,14 +5249,14 @@ data AccountUserProFilesListSortField
52495249
52505250instance Hashable AccountUserProFilesListSortField
52515251
5252−instance FromText AccountUserProFilesListSortField where
5253− fromText = \case
5254− "ID" -> Just AUPFLSFID
5255− "NAME" -> Just AUPFLSFName
5256− _ -> Nothing
5252+instance FromHttpApiData AccountUserProFilesListSortField where
5253+ parseQueryParam = \case
5254+ "ID" -> Right AUPFLSFID
5255+ "NAME" -> Right AUPFLSFName
5256+ x -> Left ("Unable to parse AccountUserProFilesListSortField from: " <> x)
52575257
5258−instance ToText AccountUserProFilesListSortField where
5259− toText = \case
5258+instance ToHttpApiData AccountUserProFilesListSortField where
5259+ toQueryParam = \case
52605260 AUPFLSFID -> "ID"
52615261 AUPFLSFName -> "NAME"
52625262
@@ -5276,14 +5276,14 @@ data InventoryItemsListSortOrder
52765276
52775277instance Hashable InventoryItemsListSortOrder
52785278
5279−instance FromText InventoryItemsListSortOrder where
5280− fromText = \case
5281− "ASCENDING" -> Just IILSOAscending
5282− "DESCENDING" -> Just IILSODescending
5283− _ -> Nothing
5279+instance FromHttpApiData InventoryItemsListSortOrder where
5280+ parseQueryParam = \case
5281+ "ASCENDING" -> Right IILSOAscending
5282+ "DESCENDING" -> Right IILSODescending
5283+ x -> Left ("Unable to parse InventoryItemsListSortOrder from: " <> x)
52845284
5285−instance ToText InventoryItemsListSortOrder where
5286− toText = \case
5285+instance ToHttpApiData InventoryItemsListSortOrder where
5286+ toQueryParam = \case
52875287 IILSOAscending -> "ASCENDING"
52885288 IILSODescending -> "DESCENDING"
52895289
@@ -5303,14 +5303,14 @@ data PlacementStrategiesListSortOrder
53035303
53045304instance Hashable PlacementStrategiesListSortOrder
53055305
5306−instance FromText PlacementStrategiesListSortOrder where
5307− fromText = \case
5308− "ASCENDING" -> Just PSLSOAscending
5309− "DESCENDING" -> Just PSLSODescending
5310− _ -> Nothing
5306+instance FromHttpApiData PlacementStrategiesListSortOrder where
5307+ parseQueryParam = \case
5308+ "ASCENDING" -> Right PSLSOAscending
5309+ "DESCENDING" -> Right PSLSODescending
5310+ x -> Left ("Unable to parse PlacementStrategiesListSortOrder from: " <> x)
53115311
5312−instance ToText PlacementStrategiesListSortOrder where
5313− toText = \case
5312+instance ToHttpApiData PlacementStrategiesListSortOrder where
5313+ toQueryParam = \case
53145314 PSLSOAscending -> "ASCENDING"
53155315 PSLSODescending -> "DESCENDING"
53165316
@@ -5332,14 +5332,14 @@ data ReportsFilesListSortField
53325332
53335333instance Hashable ReportsFilesListSortField
53345334
5335−instance FromText ReportsFilesListSortField where
5336− fromText = \case
5337− "ID" -> Just RFLSFID
5338− "LAST_MODIFIED_TIME" -> Just RFLSFLastModifiedTime
5339− _ -> Nothing
5335+instance FromHttpApiData ReportsFilesListSortField where
5336+ parseQueryParam = \case
5337+ "ID" -> Right RFLSFID
5338+ "LAST_MODIFIED_TIME" -> Right RFLSFLastModifiedTime
5339+ x -> Left ("Unable to parse ReportsFilesListSortField from: " <> x)
53405340
5341−instance ToText ReportsFilesListSortField where
5342− toText = \case
5341+instance ToHttpApiData ReportsFilesListSortField where
5342+ toQueryParam = \case
53435343 RFLSFID -> "ID"
53445344 RFLSFLastModifiedTime -> "LAST_MODIFIED_TIME"
53455345
@@ -5359,14 +5359,14 @@ data CreativesListSortField
53595359
53605360instance Hashable CreativesListSortField
53615361
5362−instance FromText CreativesListSortField where
5363− fromText = \case
5364− "ID" -> Just CID
5365− "NAME" -> Just CName
5366− _ -> Nothing
5362+instance FromHttpApiData CreativesListSortField where
5363+ parseQueryParam = \case
5364+ "ID" -> Right CID
5365+ "NAME" -> Right CName
5366+ x -> Left ("Unable to parse CreativesListSortField from: " <> x)
53675367
5368−instance ToText CreativesListSortField where
5369− toText = \case
5368+instance ToHttpApiData CreativesListSortField where
5369+ toQueryParam = \case
53705370 CID -> "ID"
53715371 CName -> "NAME"
53725372
@@ -5395,19 +5395,19 @@ data DayPartTargetingDaysOfWeekItem
53955395
53965396instance Hashable DayPartTargetingDaysOfWeekItem
53975397
5398−instance FromText DayPartTargetingDaysOfWeekItem where
5399− fromText = \case
5400− "FRIDAY" -> Just DPTDOWIFriday
5401− "MONDAY" -> Just DPTDOWIMonday
5402− "SATURDAY" -> Just DPTDOWISaturday
5403− "SUNDAY" -> Just DPTDOWISunday
5404− "THURSDAY" -> Just DPTDOWIThursday
5405− "TUESDAY" -> Just DPTDOWITuesday
5406− "WEDNESDAY" -> Just DPTDOWIWednesday
5407− _ -> Nothing
5408−
5409−instance ToText DayPartTargetingDaysOfWeekItem where
5410− toText = \case
5398+instance FromHttpApiData DayPartTargetingDaysOfWeekItem where
5399+ parseQueryParam = \case
5400+ "FRIDAY" -> Right DPTDOWIFriday
5401+ "MONDAY" -> Right DPTDOWIMonday
5402+ "SATURDAY" -> Right DPTDOWISaturday
5403+ "SUNDAY" -> Right DPTDOWISunday
5404+ "THURSDAY" -> Right DPTDOWIThursday
5405+ "TUESDAY" -> Right DPTDOWITuesday
5406+ "WEDNESDAY" -> Right DPTDOWIWednesday
5407+ x -> Left ("Unable to parse DayPartTargetingDaysOfWeekItem from: " <> x)
5408+
5409+instance ToHttpApiData DayPartTargetingDaysOfWeekItem where
5410+ toQueryParam = \case
54115411 DPTDOWIFriday -> "FRIDAY"
54125412 DPTDOWIMonday -> "MONDAY"
54135413 DPTDOWISaturday -> "SATURDAY"
@@ -5437,16 +5437,16 @@ data CreativeRotationWeightCalculationStrategy
54375437
54385438instance Hashable CreativeRotationWeightCalculationStrategy
54395439
5440−instance FromText CreativeRotationWeightCalculationStrategy where
5441− fromText = \case
5442− "WEIGHT_STRATEGY_CUSTOM" -> Just WeightStrategyCustom
5443− "WEIGHT_STRATEGY_EQUAL" -> Just WeightStrategyEqual
5444− "WEIGHT_STRATEGY_HIGHEST_CTR" -> Just WeightStrategyHighestCtr
5445− "WEIGHT_STRATEGY_OPTIMIZED" -> Just WeightStrategyOptimized
5446− _ -> Nothing
5440+instance FromHttpApiData CreativeRotationWeightCalculationStrategy where
5441+ parseQueryParam = \case
5442+ "WEIGHT_STRATEGY_CUSTOM" -> Right WeightStrategyCustom
5443+ "WEIGHT_STRATEGY_EQUAL" -> Right WeightStrategyEqual
5444+ "WEIGHT_STRATEGY_HIGHEST_CTR" -> Right WeightStrategyHighestCtr
5445+ "WEIGHT_STRATEGY_OPTIMIZED" -> Right WeightStrategyOptimized
5446+ x -> Left ("Unable to parse CreativeRotationWeightCalculationStrategy from: " <> x)
54475447
5448−instance ToText CreativeRotationWeightCalculationStrategy where
5449− toText = \case
5448+instance ToHttpApiData CreativeRotationWeightCalculationStrategy where
5449+ toQueryParam = \case
54505450 WeightStrategyCustom -> "WEIGHT_STRATEGY_CUSTOM"
54515451 WeightStrategyEqual -> "WEIGHT_STRATEGY_EQUAL"
54525452 WeightStrategyHighestCtr -> "WEIGHT_STRATEGY_HIGHEST_CTR"
@@ -5473,15 +5473,15 @@ data FilesListScope
54735473
54745474instance Hashable FilesListScope
54755475
5476−instance FromText FilesListScope where
5477− fromText = \case
5478− "ALL" -> Just FLSAll
5479− "MINE" -> Just FLSMine
5480− "SHARED_WITH_ME" -> Just FLSSharedWithMe
5481− _ -> Nothing
5476+instance FromHttpApiData FilesListScope where
5477+ parseQueryParam = \case
5478+ "ALL" -> Right FLSAll
5479+ "MINE" -> Right FLSMine
5480+ "SHARED_WITH_ME" -> Right FLSSharedWithMe
5481+ x -> Left ("Unable to parse FilesListScope from: " <> x)
54825482
5483−instance ToText FilesListScope where
5484− toText = \case
5483+instance ToHttpApiData FilesListScope where
5484+ toQueryParam = \case
54855485 FLSAll -> "ALL"
54865486 FLSMine -> "MINE"
54875487 FLSSharedWithMe -> "SHARED_WITH_ME"
@@ -5502,14 +5502,14 @@ data ContentCategoriesListSortField
55025502
55035503instance Hashable ContentCategoriesListSortField
55045504
5505−instance FromText ContentCategoriesListSortField where
5506− fromText = \case
5507− "ID" -> Just CCLSFID
5508− "NAME" -> Just CCLSFName
5509− _ -> Nothing
5505+instance FromHttpApiData ContentCategoriesListSortField where
5506+ parseQueryParam = \case
5507+ "ID" -> Right CCLSFID
5508+ "NAME" -> Right CCLSFName
5509+ x -> Left ("Unable to parse ContentCategoriesListSortField from: " <> x)
55105510
5511−instance ToText ContentCategoriesListSortField where
5512− toText = \case
5511+instance ToHttpApiData ContentCategoriesListSortField where
5512+ toQueryParam = \case
55135513 CCLSFID -> "ID"
55145514 CCLSFName -> "NAME"
55155515
@@ -5539,19 +5539,19 @@ data ProjectAudienceAgeGroup
55395539
55405540instance Hashable ProjectAudienceAgeGroup
55415541
5542−instance FromText ProjectAudienceAgeGroup where
5543− fromText = \case
5544− "PLANNING_AUDIENCE_AGE_18_24" -> Just PlanningAudienceAge1824
5545− "PLANNING_AUDIENCE_AGE_25_34" -> Just PlanningAudienceAge2534
5546− "PLANNING_AUDIENCE_AGE_35_44" -> Just PlanningAudienceAge3544
5547− "PLANNING_AUDIENCE_AGE_45_54" -> Just PlanningAudienceAge4554
5548− "PLANNING_AUDIENCE_AGE_55_64" -> Just PlanningAudienceAge5564
5549− "PLANNING_AUDIENCE_AGE_65_OR_MORE" -> Just PlanningAudienceAge65OrMore
5550− "PLANNING_AUDIENCE_AGE_UNKNOWN" -> Just PlanningAudienceAgeUnknown
5551− _ -> Nothing
5552−
5553−instance ToText ProjectAudienceAgeGroup where
5554− toText = \case
5542+instance FromHttpApiData ProjectAudienceAgeGroup where
5543+ parseQueryParam = \case
5544+ "PLANNING_AUDIENCE_AGE_18_24" -> Right PlanningAudienceAge1824
5545+ "PLANNING_AUDIENCE_AGE_25_34" -> Right PlanningAudienceAge2534
5546+ "PLANNING_AUDIENCE_AGE_35_44" -> Right PlanningAudienceAge3544
5547+ "PLANNING_AUDIENCE_AGE_45_54" -> Right PlanningAudienceAge4554
5548+ "PLANNING_AUDIENCE_AGE_55_64" -> Right PlanningAudienceAge5564
5549+ "PLANNING_AUDIENCE_AGE_65_OR_MORE" -> Right PlanningAudienceAge65OrMore
5550+ "PLANNING_AUDIENCE_AGE_UNKNOWN" -> Right PlanningAudienceAgeUnknown
5551+ x -> Left ("Unable to parse ProjectAudienceAgeGroup from: " <> x)
5552+
5553+instance ToHttpApiData ProjectAudienceAgeGroup where
5554+ toQueryParam = \case
55555555 PlanningAudienceAge1824 -> "PLANNING_AUDIENCE_AGE_18_24"
55565556 PlanningAudienceAge2534 -> "PLANNING_AUDIENCE_AGE_25_34"
55575557 PlanningAudienceAge3544 -> "PLANNING_AUDIENCE_AGE_35_44"
@@ -5582,16 +5582,16 @@ data AdType
55825582
55835583instance Hashable AdType
55845584
5585−instance FromText AdType where
5586− fromText = \case
5587− "AD_SERVING_CLICK_TRACKER" -> Just ATAdServingClickTracker
5588− "AD_SERVING_DEFAULT_AD" -> Just ATAdServingDefaultAd
5589− "AD_SERVING_STANDARD_AD" -> Just ATAdServingStandardAd
5590− "AD_SERVING_TRACKING" -> Just ATAdServingTracking
5591− _ -> Nothing
5585+instance FromHttpApiData AdType where
5586+ parseQueryParam = \case
5587+ "AD_SERVING_CLICK_TRACKER" -> Right ATAdServingClickTracker
5588+ "AD_SERVING_DEFAULT_AD" -> Right ATAdServingDefaultAd
5589+ "AD_SERVING_STANDARD_AD" -> Right ATAdServingStandardAd
5590+ "AD_SERVING_TRACKING" -> Right ATAdServingTracking
5591+ x -> Left ("Unable to parse AdType from: " <> x)
55925592
5593−instance ToText AdType where
5594− toText = \case
5593+instance ToHttpApiData AdType where
5594+ toQueryParam = \case
55955595 ATAdServingClickTracker -> "AD_SERVING_CLICK_TRACKER"
55965596 ATAdServingDefaultAd -> "AD_SERVING_DEFAULT_AD"
55975597 ATAdServingStandardAd -> "AD_SERVING_STANDARD_AD"
@@ -5643,29 +5643,29 @@ data ChangeLogsListAction
56435643
56445644instance Hashable ChangeLogsListAction
56455645
5646−instance FromText ChangeLogsListAction where
5647− fromText = \case
5648− "ACTION_ADD" -> Just ActionAdd
5649− "ACTION_ASSIGN" -> Just ActionAssign
5650− "ACTION_ASSOCIATE" -> Just ActionAssociate
5651− "ACTION_CREATE" -> Just ActionCreate
5652− "ACTION_DELETE" -> Just ActionDelete
5653− "ACTION_DISABLE" -> Just ActionDisable
5654− "ACTION_EMAIL_TAGS" -> Just ActionEmailTags
5655− "ACTION_ENABLE" -> Just ActionEnable
5656− "ACTION_LINK" -> Just ActionLink
5657− "ACTION_MARK_AS_DEFAULT" -> Just ActionMarkAsDefault
5658− "ACTION_PUSH" -> Just ActionPush
5659− "ACTION_REMOVE" -> Just ActionRemove
5660− "ACTION_SEND" -> Just ActionSend
5661− "ACTION_SHARE" -> Just ActionShare
5662− "ACTION_UNASSIGN" -> Just ActionUnassign
5663− "ACTION_UNLINK" -> Just ActionUnlink
5664− "ACTION_UPDATE" -> Just ActionUpdate
5665− _ -> Nothing
5666−
5667−instance ToText ChangeLogsListAction where
5668− toText = \case
5646+instance FromHttpApiData ChangeLogsListAction where
5647+ parseQueryParam = \case
5648+ "ACTION_ADD" -> Right ActionAdd
5649+ "ACTION_ASSIGN" -> Right ActionAssign
5650+ "ACTION_ASSOCIATE" -> Right ActionAssociate
5651+ "ACTION_CREATE" -> Right ActionCreate
5652+ "ACTION_DELETE" -> Right ActionDelete
5653+ "ACTION_DISABLE" -> Right ActionDisable
5654+ "ACTION_EMAIL_TAGS" -> Right ActionEmailTags
5655+ "ACTION_ENABLE" -> Right ActionEnable
5656+ "ACTION_LINK" -> Right ActionLink
5657+ "ACTION_MARK_AS_DEFAULT" -> Right ActionMarkAsDefault
5658+ "ACTION_PUSH" -> Right ActionPush
5659+ "ACTION_REMOVE" -> Right ActionRemove
5660+ "ACTION_SEND" -> Right ActionSend
5661+ "ACTION_SHARE" -> Right ActionShare
5662+ "ACTION_UNASSIGN" -> Right ActionUnassign
5663+ "ACTION_UNLINK" -> Right ActionUnlink
5664+ "ACTION_UPDATE" -> Right ActionUpdate
5665+ x -> Left ("Unable to parse ChangeLogsListAction from: " <> x)
5666+
5667+instance ToHttpApiData ChangeLogsListAction where
5668+ toQueryParam = \case
56695669 ActionAdd -> "ACTION_ADD"
56705670 ActionAssign -> "ACTION_ASSIGN"
56715671 ActionAssociate -> "ACTION_ASSOCIATE"
@@ -5706,16 +5706,16 @@ data CreativeArtworkType
57065706
57075707instance Hashable CreativeArtworkType
57085708
5709−instance FromText CreativeArtworkType where
5710− fromText = \case
5711− "ARTWORK_TYPE_FLASH" -> Just CATArtworkTypeFlash
5712− "ARTWORK_TYPE_HTML5" -> Just CATArtworkTypeHTML5
5713− "ARTWORK_TYPE_IMAGE" -> Just CATArtworkTypeImage
5714− "ARTWORK_TYPE_MIXED" -> Just CATArtworkTypeMixed
5715− _ -> Nothing
5709+instance FromHttpApiData CreativeArtworkType where
5710+ parseQueryParam = \case
5711+ "ARTWORK_TYPE_FLASH" -> Right CATArtworkTypeFlash
5712+ "ARTWORK_TYPE_HTML5" -> Right CATArtworkTypeHTML5
5713+ "ARTWORK_TYPE_IMAGE" -> Right CATArtworkTypeImage
5714+ "ARTWORK_TYPE_MIXED" -> Right CATArtworkTypeMixed
5715+ x -> Left ("Unable to parse CreativeArtworkType from: " <> x)
57165716
5717−instance ToText CreativeArtworkType where
5718− toText = \case
5717+instance ToHttpApiData CreativeArtworkType where
5718+ toQueryParam = \case
57195719 CATArtworkTypeFlash -> "ARTWORK_TYPE_FLASH"
57205720 CATArtworkTypeHTML5 -> "ARTWORK_TYPE_HTML5"
57215721 CATArtworkTypeImage -> "ARTWORK_TYPE_IMAGE"
@@ -5745,18 +5745,18 @@ data PlacementStatus
57455745
57465746instance Hashable PlacementStatus
57475747
5748−instance FromText PlacementStatus where
5749− fromText = \case
5750− "ACKNOWLEDGE_ACCEPTANCE" -> Just AcknowledgeAcceptance
5751− "ACKNOWLEDGE_REJECTION" -> Just AcknowledgeRejection
5752− "DRAFT" -> Just Draft
5753− "PAYMENT_ACCEPTED" -> Just PaymentAccepted
5754− "PAYMENT_REJECTED" -> Just PaymentRejected
5755− "PENDING_REVIEW" -> Just PendingReview
5756− _ -> Nothing
5757−
5758−instance ToText PlacementStatus where
5759− toText = \case
5748+instance FromHttpApiData PlacementStatus where
5749+ parseQueryParam = \case
5750+ "ACKNOWLEDGE_ACCEPTANCE" -> Right AcknowledgeAcceptance
5751+ "ACKNOWLEDGE_REJECTION" -> Right AcknowledgeRejection
5752+ "DRAFT" -> Right Draft
5753+ "PAYMENT_ACCEPTED" -> Right PaymentAccepted
5754+ "PAYMENT_REJECTED" -> Right PaymentRejected
5755+ "PENDING_REVIEW" -> Right PendingReview
5756+ x -> Left ("Unable to parse PlacementStatus from: " <> x)
5757+
5758+instance ToHttpApiData PlacementStatus where
5759+ toQueryParam = \case
57605760 AcknowledgeAcceptance -> "ACKNOWLEDGE_ACCEPTANCE"
57615761 AcknowledgeRejection -> "ACKNOWLEDGE_REJECTION"
57625762 Draft -> "DRAFT"
@@ -5785,14 +5785,14 @@ data ReportScheduleRunsOnDayOfMonth
57855785
57865786instance Hashable ReportScheduleRunsOnDayOfMonth
57875787
5788−instance FromText ReportScheduleRunsOnDayOfMonth where
5789− fromText = \case
5790− "DAY_OF_MONTH" -> Just DayOfMonth
5791− "WEEK_OF_MONTH" -> Just WeekOfMonth
5792− _ -> Nothing
5788+instance FromHttpApiData ReportScheduleRunsOnDayOfMonth where
5789+ parseQueryParam = \case
5790+ "DAY_OF_MONTH" -> Right DayOfMonth
5791+ "WEEK_OF_MONTH" -> Right WeekOfMonth
5792+ x -> Left ("Unable to parse ReportScheduleRunsOnDayOfMonth from: " <> x)
57935793
5794−instance ToText ReportScheduleRunsOnDayOfMonth where
5795− toText = \case
5794+instance ToHttpApiData ReportScheduleRunsOnDayOfMonth where
5795+ toQueryParam = \case
57965796 DayOfMonth -> "DAY_OF_MONTH"
57975797 WeekOfMonth -> "WEEK_OF_MONTH"
57985798
@@ -5847,32 +5847,32 @@ data FloodlightActivityUserDefinedVariableTypesItem
58475847
58485848instance Hashable FloodlightActivityUserDefinedVariableTypesItem
58495849
5850−instance FromText FloodlightActivityUserDefinedVariableTypesItem where
5851− fromText = \case
5852− "U1" -> Just FAUDVTIU1
5853− "U10" -> Just FAUDVTIU10
5854− "U11" -> Just FAUDVTIU11
5855− "U12" -> Just FAUDVTIU12
5856− "U13" -> Just FAUDVTIU13
5857− "U14" -> Just FAUDVTIU14
5858− "U15" -> Just FAUDVTIU15
5859− "U16" -> Just FAUDVTIU16
5860− "U17" -> Just FAUDVTIU17
5861− "U18" -> Just FAUDVTIU18
5862− "U19" -> Just FAUDVTIU19
5863− "U2" -> Just FAUDVTIU2
5864− "U20" -> Just FAUDVTIU20
5865− "U3" -> Just FAUDVTIU3
5866− "U4" -> Just FAUDVTIU4
5867− "U5" -> Just FAUDVTIU5
5868− "U6" -> Just FAUDVTIU6
5869− "U7" -> Just FAUDVTIU7
5870− "U8" -> Just FAUDVTIU8
5871− "U9" -> Just FAUDVTIU9
5872− _ -> Nothing
5873−
5874−instance ToText FloodlightActivityUserDefinedVariableTypesItem where
5875− toText = \case
5850+instance FromHttpApiData FloodlightActivityUserDefinedVariableTypesItem where
5851+ parseQueryParam = \case
5852+ "U1" -> Right FAUDVTIU1
5853+ "U10" -> Right FAUDVTIU10
5854+ "U11" -> Right FAUDVTIU11
5855+ "U12" -> Right FAUDVTIU12
5856+ "U13" -> Right FAUDVTIU13
5857+ "U14" -> Right FAUDVTIU14
5858+ "U15" -> Right FAUDVTIU15
5859+ "U16" -> Right FAUDVTIU16
5860+ "U17" -> Right FAUDVTIU17
5861+ "U18" -> Right FAUDVTIU18
5862+ "U19" -> Right FAUDVTIU19
5863+ "U2" -> Right FAUDVTIU2
5864+ "U20" -> Right FAUDVTIU20
5865+ "U3" -> Right FAUDVTIU3
5866+ "U4" -> Right FAUDVTIU4
5867+ "U5" -> Right FAUDVTIU5
5868+ "U6" -> Right FAUDVTIU6
5869+ "U7" -> Right FAUDVTIU7
5870+ "U8" -> Right FAUDVTIU8
5871+ "U9" -> Right FAUDVTIU9
5872+ x -> Left ("Unable to parse FloodlightActivityUserDefinedVariableTypesItem from: " <> x)
5873+
5874+instance ToHttpApiData FloodlightActivityUserDefinedVariableTypesItem where
5875+ toQueryParam = \case
58765876 FAUDVTIU1 -> "U1"
58775877 FAUDVTIU10 -> "U10"
58785878 FAUDVTIU11 -> "U11"
@@ -5911,14 +5911,14 @@ data EventTagSiteFilterType
59115911
59125912instance Hashable EventTagSiteFilterType
59135913
5914−instance FromText EventTagSiteFilterType where
5915− fromText = \case
5916− "BLACKLIST" -> Just BlackList
5917− "WHITELIST" -> Just WhiteList
5918− _ -> Nothing
5914+instance FromHttpApiData EventTagSiteFilterType where
5915+ parseQueryParam = \case
5916+ "BLACKLIST" -> Right BlackList
5917+ "WHITELIST" -> Right WhiteList
5918+ x -> Left ("Unable to parse EventTagSiteFilterType from: " <> x)
59195919
5920−instance ToText EventTagSiteFilterType where
5921− toText = \case
5920+instance ToHttpApiData EventTagSiteFilterType where
5921+ toQueryParam = \case
59225922 BlackList -> "BLACKLIST"
59235923 WhiteList -> "WHITELIST"
59245924
@@ -5941,14 +5941,14 @@ data ReportFormat
59415941
59425942instance Hashable ReportFormat
59435943
5944−instance FromText ReportFormat where
5945− fromText = \case
5946− "CSV" -> Just RFCSV
5947− "EXCEL" -> Just RFExcel
5948− _ -> Nothing
5944+instance FromHttpApiData ReportFormat where
5945+ parseQueryParam = \case
5946+ "CSV" -> Right RFCSV
5947+ "EXCEL" -> Right RFExcel
5948+ x -> Left ("Unable to parse ReportFormat from: " <> x)
59495949
5950−instance ToText ReportFormat where
5951− toText = \case
5950+instance ToHttpApiData ReportFormat where
5951+ toQueryParam = \case
59525952 RFCSV -> "CSV"
59535953 RFExcel -> "EXCEL"
59545954
@@ -5973,14 +5973,14 @@ data PlacementGroupPlacementGroupType
59735973
59745974instance Hashable PlacementGroupPlacementGroupType
59755975
5976−instance FromText PlacementGroupPlacementGroupType where
5977− fromText = \case
5978− "PLACEMENT_PACKAGE" -> Just PGPGTPlacementPackage
5979− "PLACEMENT_ROADBLOCK" -> Just PGPGTPlacementRoadblock
5980− _ -> Nothing
5976+instance FromHttpApiData PlacementGroupPlacementGroupType where
5977+ parseQueryParam = \case
5978+ "PLACEMENT_PACKAGE" -> Right PGPGTPlacementPackage
5979+ "PLACEMENT_ROADBLOCK" -> Right PGPGTPlacementRoadblock
5980+ x -> Left ("Unable to parse PlacementGroupPlacementGroupType from: " <> x)
59815981
5982−instance ToText PlacementGroupPlacementGroupType where
5983− toText = \case
5982+instance ToHttpApiData PlacementGroupPlacementGroupType where
5983+ toQueryParam = \case
59845984 PGPGTPlacementPackage -> "PLACEMENT_PACKAGE"
59855985 PGPGTPlacementRoadblock -> "PLACEMENT_ROADBLOCK"
59865986
@@ -6010,19 +6010,19 @@ data PricingPricingType
60106010
60116011instance Hashable PricingPricingType
60126012
6013−instance FromText PricingPricingType where
6014− fromText = \case
6015− "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS" -> Just PlanningPlacementPricingTypeClicks
6016− "PLANNING_PLACEMENT_PRICING_TYPE_CPA" -> Just PlanningPlacementPricingTypeCpa
6017− "PLANNING_PLACEMENT_PRICING_TYPE_CPC" -> Just PlanningPlacementPricingTypeCpc
6018− "PLANNING_PLACEMENT_PRICING_TYPE_CPM" -> Just PlanningPlacementPricingTypeCpm
6019− "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS" -> Just PlanningPlacementPricingTypeFlatRateClicks
6020− "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Just PlanningPlacementPricingTypeFlatRateImpressions
6021− "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" -> Just PlanningPlacementPricingTypeImpressions
6022− _ -> Nothing
6023−
6024−instance ToText PricingPricingType where
6025− toText = \case
6013+instance FromHttpApiData PricingPricingType where
6014+ parseQueryParam = \case
6015+ "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS" -> Right PlanningPlacementPricingTypeClicks
6016+ "PLANNING_PLACEMENT_PRICING_TYPE_CPA" -> Right PlanningPlacementPricingTypeCpa
6017+ "PLANNING_PLACEMENT_PRICING_TYPE_CPC" -> Right PlanningPlacementPricingTypeCpc
6018+ "PLANNING_PLACEMENT_PRICING_TYPE_CPM" -> Right PlanningPlacementPricingTypeCpm
6019+ "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PlanningPlacementPricingTypeFlatRateClicks
6020+ "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PlanningPlacementPricingTypeFlatRateImpressions
6021+ "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" -> Right PlanningPlacementPricingTypeImpressions
6022+ x -> Left ("Unable to parse PricingPricingType from: " <> x)
6023+
6024+instance ToHttpApiData PricingPricingType where
6025+ toQueryParam = \case
60266026 PlanningPlacementPricingTypeClicks -> "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS"
60276027 PlanningPlacementPricingTypeCpa -> "PLANNING_PLACEMENT_PRICING_TYPE_CPA"
60286028 PlanningPlacementPricingTypeCpc -> "PLANNING_PLACEMENT_PRICING_TYPE_CPC"
@@ -6047,14 +6047,14 @@ data SubAccountsListSortOrder
60476047
60486048instance Hashable SubAccountsListSortOrder
60496049
6050−instance FromText SubAccountsListSortOrder where
6051− fromText = \case
6052− "ASCENDING" -> Just SALSOAscending
6053− "DESCENDING" -> Just SALSODescending
6054− _ -> Nothing
6050+instance FromHttpApiData SubAccountsListSortOrder where
6051+ parseQueryParam = \case
6052+ "ASCENDING" -> Right SALSOAscending
6053+ "DESCENDING" -> Right SALSODescending
6054+ x -> Left ("Unable to parse SubAccountsListSortOrder from: " <> x)
60556055
6056−instance ToText SubAccountsListSortOrder where
6057− toText = \case
6056+instance ToHttpApiData SubAccountsListSortOrder where
6057+ toQueryParam = \case
60586058 SALSOAscending -> "ASCENDING"
60596059 SALSODescending -> "DESCENDING"
60606060
@@ -6074,14 +6074,14 @@ data AdsListSortOrder
60746074
60756075instance Hashable AdsListSortOrder
60766076
6077−instance FromText AdsListSortOrder where
6078− fromText = \case
6079− "ASCENDING" -> Just ADSAscending
6080− "DESCENDING" -> Just ADSDescending
6081− _ -> Nothing
6077+instance FromHttpApiData AdsListSortOrder where
6078+ parseQueryParam = \case
6079+ "ASCENDING" -> Right ADSAscending
6080+ "DESCENDING" -> Right ADSDescending
6081+ x -> Left ("Unable to parse AdsListSortOrder from: " <> x)
60826082
6083−instance ToText AdsListSortOrder where
6084− toText = \case
6083+instance ToHttpApiData AdsListSortOrder where
6084+ toQueryParam = \case
60856085 ADSAscending -> "ASCENDING"
60866086 ADSDescending -> "DESCENDING"
60876087
@@ -6101,14 +6101,14 @@ data ProjectsListSortOrder
61016101
61026102instance Hashable ProjectsListSortOrder
61036103
6104−instance FromText ProjectsListSortOrder where
6105− fromText = \case
6106− "ASCENDING" -> Just PLSOAscending
6107− "DESCENDING" -> Just PLSODescending
6108− _ -> Nothing
6104+instance FromHttpApiData ProjectsListSortOrder where
6105+ parseQueryParam = \case
6106+ "ASCENDING" -> Right PLSOAscending
6107+ "DESCENDING" -> Right PLSODescending
6108+ x -> Left ("Unable to parse ProjectsListSortOrder from: " <> x)
61096109
6110−instance ToText ProjectsListSortOrder where
6111− toText = \case
6110+instance ToHttpApiData ProjectsListSortOrder where
6111+ toQueryParam = \case
61126112 PLSOAscending -> "ASCENDING"
61136113 PLSODescending -> "DESCENDING"
61146114
@@ -6128,14 +6128,14 @@ data RemarketingListsListSortField
61286128
61296129instance Hashable RemarketingListsListSortField
61306130
6131−instance FromText RemarketingListsListSortField where
6132− fromText = \case
6133− "ID" -> Just RLLSFID
6134− "NAME" -> Just RLLSFName
6135− _ -> Nothing
6131+instance FromHttpApiData RemarketingListsListSortField where
6132+ parseQueryParam = \case
6133+ "ID" -> Right RLLSFID
6134+ "NAME" -> Right RLLSFName
6135+ x -> Left ("Unable to parse RemarketingListsListSortField from: " <> x)
61366136
6137−instance ToText RemarketingListsListSortField where
6138− toText = \case
6137+instance ToHttpApiData RemarketingListsListSortField where
6138+ toQueryParam = \case
61396139 RLLSFID -> "ID"
61406140 RLLSFName -> "NAME"
61416141
@@ -6164,19 +6164,19 @@ data ReportScheduleRepeatsOnWeekDaysItem
61646164
61656165instance Hashable ReportScheduleRepeatsOnWeekDaysItem
61666166
6167−instance FromText ReportScheduleRepeatsOnWeekDaysItem where
6168− fromText = \case
6169− "FRIDAY" -> Just RSROWDIFriday
6170− "MONDAY" -> Just RSROWDIMonday
6171− "SATURDAY" -> Just RSROWDISaturday
6172− "SUNDAY" -> Just RSROWDISunday
6173− "THURSDAY" -> Just RSROWDIThursday
6174− "TUESDAY" -> Just RSROWDITuesday
6175− "WEDNESDAY" -> Just RSROWDIWednesday
6176− _ -> Nothing
6177−
6178−instance ToText ReportScheduleRepeatsOnWeekDaysItem where
6179− toText = \case
6167+instance FromHttpApiData ReportScheduleRepeatsOnWeekDaysItem where
6168+ parseQueryParam = \case
6169+ "FRIDAY" -> Right RSROWDIFriday
6170+ "MONDAY" -> Right RSROWDIMonday
6171+ "SATURDAY" -> Right RSROWDISaturday
6172+ "SUNDAY" -> Right RSROWDISunday
6173+ "THURSDAY" -> Right RSROWDIThursday
6174+ "TUESDAY" -> Right RSROWDITuesday
6175+ "WEDNESDAY" -> Right RSROWDIWednesday
6176+ x -> Left ("Unable to parse ReportScheduleRepeatsOnWeekDaysItem from: " <> x)
6177+
6178+instance ToHttpApiData ReportScheduleRepeatsOnWeekDaysItem where
6179+ toQueryParam = \case
61806180 RSROWDIFriday -> "FRIDAY"
61816181 RSROWDIMonday -> "MONDAY"
61826182 RSROWDISaturday -> "SATURDAY"
@@ -6201,14 +6201,14 @@ data CreativeGroupAssignmentCreativeGroupNumber
62016201
62026202instance Hashable CreativeGroupAssignmentCreativeGroupNumber
62036203
6204−instance FromText CreativeGroupAssignmentCreativeGroupNumber where
6205− fromText = \case
6206− "CREATIVE_GROUP_ONE" -> Just CreativeGroupOne
6207− "CREATIVE_GROUP_TWO" -> Just CreativeGroupTwo
6208− _ -> Nothing
6204+instance FromHttpApiData CreativeGroupAssignmentCreativeGroupNumber where
6205+ parseQueryParam = \case
6206+ "CREATIVE_GROUP_ONE" -> Right CreativeGroupOne
6207+ "CREATIVE_GROUP_TWO" -> Right CreativeGroupTwo
6208+ x -> Left ("Unable to parse CreativeGroupAssignmentCreativeGroupNumber from: " <> x)
62096209
6210−instance ToText CreativeGroupAssignmentCreativeGroupNumber where
6211− toText = \case
6210+instance ToHttpApiData CreativeGroupAssignmentCreativeGroupNumber where
6211+ toQueryParam = \case
62126212 CreativeGroupOne -> "CREATIVE_GROUP_ONE"
62136213 CreativeGroupTwo -> "CREATIVE_GROUP_TWO"
62146214
@@ -6228,14 +6228,14 @@ data AccountsListSortField
62286228
62296229instance Hashable AccountsListSortField
62306230
6231−instance FromText AccountsListSortField where
6232− fromText = \case
6233− "ID" -> Just AID
6234− "NAME" -> Just AName
6235− _ -> Nothing
6231+instance FromHttpApiData AccountsListSortField where
6232+ parseQueryParam = \case
6233+ "ID" -> Right AID
6234+ "NAME" -> Right AName
6235+ x -> Left ("Unable to parse AccountsListSortField from: " <> x)
62366236
6237−instance ToText AccountsListSortField where
6238− toText = \case
6237+instance ToHttpApiData AccountsListSortField where
6238+ toQueryParam = \case
62396239 AID -> "ID"
62406240 AName -> "NAME"
62416241
@@ -6255,14 +6255,14 @@ data AdvertisersListStatus
62556255
62566256instance Hashable AdvertisersListStatus
62576257
6258−instance FromText AdvertisersListStatus where
6259− fromText = \case
6260− "APPROVED" -> Just Approved
6261− "ON_HOLD" -> Just OnHold
6262− _ -> Nothing
6258+instance FromHttpApiData AdvertisersListStatus where
6259+ parseQueryParam = \case
6260+ "APPROVED" -> Right Approved
6261+ "ON_HOLD" -> Right OnHold
6262+ x -> Left ("Unable to parse AdvertisersListStatus from: " <> x)
62636263
6264−instance ToText AdvertisersListStatus where
6265− toText = \case
6264+instance ToHttpApiData AdvertisersListStatus where
6265+ toQueryParam = \case
62666266 Approved -> "APPROVED"
62676267 OnHold -> "ON_HOLD"
62686268
@@ -6290,16 +6290,16 @@ data DimensionValueMatchType
62906290
62916291instance Hashable DimensionValueMatchType
62926292
6293−instance FromText DimensionValueMatchType where
6294− fromText = \case
6295− "BEGINS_WITH" -> Just BeginsWith
6296− "CONTAINS" -> Just Contains
6297− "EXACT" -> Just Exact
6298− "WILDCARD_EXPRESSION" -> Just WildcardExpression
6299− _ -> Nothing
6293+instance FromHttpApiData DimensionValueMatchType where
6294+ parseQueryParam = \case
6295+ "BEGINS_WITH" -> Right BeginsWith
6296+ "CONTAINS" -> Right Contains
6297+ "EXACT" -> Right Exact
6298+ "WILDCARD_EXPRESSION" -> Right WildcardExpression
6299+ x -> Left ("Unable to parse DimensionValueMatchType from: " <> x)
63006300
6301−instance ToText DimensionValueMatchType where
6302− toText = \case
6301+instance ToHttpApiData DimensionValueMatchType where
6302+ toQueryParam = \case
63036303 BeginsWith -> "BEGINS_WITH"
63046304 Contains -> "CONTAINS"
63056305 Exact -> "EXACT"
@@ -6321,14 +6321,14 @@ data PlacementGroupsListSortOrder
63216321
63226322instance Hashable PlacementGroupsListSortOrder
63236323
6324−instance FromText PlacementGroupsListSortOrder where
6325− fromText = \case
6326− "ASCENDING" -> Just PGLSOAscending
6327− "DESCENDING" -> Just PGLSODescending
6328− _ -> Nothing
6324+instance FromHttpApiData PlacementGroupsListSortOrder where
6325+ parseQueryParam = \case
6326+ "ASCENDING" -> Right PGLSOAscending
6327+ "DESCENDING" -> Right PGLSODescending
6328+ x -> Left ("Unable to parse PlacementGroupsListSortOrder from: " <> x)
63296329
6330−instance ToText PlacementGroupsListSortOrder where
6331− toText = \case
6330+instance ToHttpApiData PlacementGroupsListSortOrder where
6331+ toQueryParam = \case
63326332 PGLSOAscending -> "ASCENDING"
63336333 PGLSODescending -> "DESCENDING"
63346334
@@ -6361,17 +6361,17 @@ data AdCompatibility
63616361
63626362instance Hashable AdCompatibility
63636363
6364−instance FromText AdCompatibility where
6365− fromText = \case
6366− "APP" -> Just ACApp
6367− "APP_INTERSTITIAL" -> Just ACAppInterstitial
6368− "DISPLAY" -> Just ACDisplay
6369− "DISPLAY_INTERSTITIAL" -> Just ACDisplayInterstitial
6370− "IN_STREAM_VIDEO" -> Just ACInStreamVideo
6371− _ -> Nothing
6372−
6373−instance ToText AdCompatibility where
6374− toText = \case
6364+instance FromHttpApiData AdCompatibility where
6365+ parseQueryParam = \case
6366+ "APP" -> Right ACApp
6367+ "APP_INTERSTITIAL" -> Right ACAppInterstitial
6368+ "DISPLAY" -> Right ACDisplay
6369+ "DISPLAY_INTERSTITIAL" -> Right ACDisplayInterstitial
6370+ "IN_STREAM_VIDEO" -> Right ACInStreamVideo
6371+ x -> Left ("Unable to parse AdCompatibility from: " <> x)
6372+
6373+instance ToHttpApiData AdCompatibility where
6374+ toQueryParam = \case
63756375 ACApp -> "APP"
63766376 ACAppInterstitial -> "APP_INTERSTITIAL"
63776377 ACDisplay -> "DISPLAY"
@@ -6394,14 +6394,14 @@ data CreativeFieldValuesListSortField
63946394
63956395instance Hashable CreativeFieldValuesListSortField
63966396
6397−instance FromText CreativeFieldValuesListSortField where
6398− fromText = \case
6399− "ID" -> Just CFVLSFID
6400− "VALUE" -> Just CFVLSFValue
6401− _ -> Nothing
6397+instance FromHttpApiData CreativeFieldValuesListSortField where
6398+ parseQueryParam = \case
6399+ "ID" -> Right CFVLSFID
6400+ "VALUE" -> Right CFVLSFValue
6401+ x -> Left ("Unable to parse CreativeFieldValuesListSortField from: " <> x)
64026402
6403−instance ToText CreativeFieldValuesListSortField where
6404− toText = \case
6403+instance ToHttpApiData CreativeFieldValuesListSortField where
6404+ toQueryParam = \case
64056405 CFVLSFID -> "ID"
64066406 CFVLSFValue -> "VALUE"
64076407
@@ -6421,14 +6421,14 @@ data FloodlightActivityGroupsListSortField
64216421
64226422instance Hashable FloodlightActivityGroupsListSortField
64236423
6424−instance FromText FloodlightActivityGroupsListSortField where
6425− fromText = \case
6426− "ID" -> Just FAGLSFID
6427− "NAME" -> Just FAGLSFName
6428− _ -> Nothing
6424+instance FromHttpApiData FloodlightActivityGroupsListSortField where
6425+ parseQueryParam = \case
6426+ "ID" -> Right FAGLSFID
6427+ "NAME" -> Right FAGLSFName
6428+ x -> Left ("Unable to parse FloodlightActivityGroupsListSortField from: " <> x)
64296429
6430−instance ToText FloodlightActivityGroupsListSortField where
6431− toText = \case
6430+instance ToHttpApiData FloodlightActivityGroupsListSortField where
6431+ toQueryParam = \case
64326432 FAGLSFID -> "ID"
64336433 FAGLSFName -> "NAME"
64346434
@@ -6448,14 +6448,14 @@ data OrdersListSortOrder
64486448
64496449instance Hashable OrdersListSortOrder
64506450
6451−instance FromText OrdersListSortOrder where
6452− fromText = \case
6453− "ASCENDING" -> Just OLSOAscending
6454− "DESCENDING" -> Just OLSODescending
6455− _ -> Nothing
6451+instance FromHttpApiData OrdersListSortOrder where
6452+ parseQueryParam = \case
6453+ "ASCENDING" -> Right OLSOAscending
6454+ "DESCENDING" -> Right OLSODescending
6455+ x -> Left ("Unable to parse OrdersListSortOrder from: " <> x)
64566456
6457−instance ToText OrdersListSortOrder where
6458− toText = \case
6457+instance ToHttpApiData OrdersListSortOrder where
6458+ toQueryParam = \case
64596459 OLSOAscending -> "ASCENDING"
64606460 OLSODescending -> "DESCENDING"
64616461
@@ -6476,14 +6476,14 @@ data AccountAccountProFile
64766476
64776477instance Hashable AccountAccountProFile
64786478
6479−instance FromText AccountAccountProFile where
6480− fromText = \case
6481− "ACCOUNT_PROFILE_BASIC" -> Just AccountProFileBasic
6482− "ACCOUNT_PROFILE_STANDARD" -> Just AccountProFileStandard
6483− _ -> Nothing
6479+instance FromHttpApiData AccountAccountProFile where
6480+ parseQueryParam = \case
6481+ "ACCOUNT_PROFILE_BASIC" -> Right AccountProFileBasic
6482+ "ACCOUNT_PROFILE_STANDARD" -> Right AccountProFileStandard
6483+ x -> Left ("Unable to parse AccountAccountProFile from: " <> x)
64846484
6485−instance ToText AccountAccountProFile where
6486− toText = \case
6485+instance ToHttpApiData AccountAccountProFile where
6486+ toQueryParam = \case
64876487 AccountProFileBasic -> "ACCOUNT_PROFILE_BASIC"
64886488 AccountProFileStandard -> "ACCOUNT_PROFILE_STANDARD"
64896489
@@ -6548,36 +6548,36 @@ data CreativeType
65486548
65496549instance Hashable CreativeType
65506550
6551−instance FromText CreativeType where
6552− fromText = \case
6553− "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Just CTBrandSafeDefaultInstreamVideo
6554− "CUSTOM_INPAGE" -> Just CTCustomInpage
6555− "CUSTOM_INTERSTITIAL" -> Just CTCustomInterstitial
6556− "ENHANCED_BANNER" -> Just CTEnhancedBanner
6557− "ENHANCED_IMAGE" -> Just CTEnhancedImage
6558− "FLASH_INPAGE" -> Just CTFlashInpage
6559− "HTML5_BANNER" -> Just CTHTML5Banner
6560− "IMAGE" -> Just CTImage
6561− "INSTREAM_VIDEO" -> Just CTInstreamVideo
6562− "INSTREAM_VIDEO_REDIRECT" -> Just CTInstreamVideoRedirect
6563− "INTERNAL_REDIRECT" -> Just CTInternalRedirect
6564− "INTERSTITIAL_INTERNAL_REDIRECT" -> Just CTInterstitialInternalRedirect
6565− "REDIRECT" -> Just CTRedirect
6566− "RICH_MEDIA_EXPANDING" -> Just CTRichMediaExpanding
6567− "RICH_MEDIA_IM_EXPAND" -> Just CTRichMediaImExpand
6568− "RICH_MEDIA_INPAGE" -> Just CTRichMediaInpage
6569− "RICH_MEDIA_INPAGE_FLOATING" -> Just CTRichMediaInpageFloating
6570− "RICH_MEDIA_INTERSTITIAL_FLOAT" -> Just CTRichMediaInterstitialFloat
6571− "RICH_MEDIA_MOBILE_IN_APP" -> Just CTRichMediaMobileInApp
6572− "RICH_MEDIA_MULTI_FLOATING" -> Just CTRichMediaMultiFloating
6573− "RICH_MEDIA_PEEL_DOWN" -> Just CTRichMediaPeelDown
6574− "TRACKING_TEXT" -> Just CTTrackingText
6575− "VPAID_LINEAR" -> Just CTVpaidLinear
6576− "VPAID_NON_LINEAR" -> Just CTVpaidNonLinear
6577− _ -> Nothing
6578−
6579−instance ToText CreativeType where
6580− toText = \case
6551+instance FromHttpApiData CreativeType where
6552+ parseQueryParam = \case
6553+ "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO" -> Right CTBrandSafeDefaultInstreamVideo
6554+ "CUSTOM_INPAGE" -> Right CTCustomInpage
6555+ "CUSTOM_INTERSTITIAL" -> Right CTCustomInterstitial
6556+ "ENHANCED_BANNER" -> Right CTEnhancedBanner
6557+ "ENHANCED_IMAGE" -> Right CTEnhancedImage
6558+ "FLASH_INPAGE" -> Right CTFlashInpage
6559+ "HTML5_BANNER" -> Right CTHTML5Banner
6560+ "IMAGE" -> Right CTImage
6561+ "INSTREAM_VIDEO" -> Right CTInstreamVideo
6562+ "INSTREAM_VIDEO_REDIRECT" -> Right CTInstreamVideoRedirect
6563+ "INTERNAL_REDIRECT" -> Right CTInternalRedirect
6564+ "INTERSTITIAL_INTERNAL_REDIRECT" -> Right CTInterstitialInternalRedirect
6565+ "REDIRECT" -> Right CTRedirect
6566+ "RICH_MEDIA_EXPANDING" -> Right CTRichMediaExpanding
6567+ "RICH_MEDIA_IM_EXPAND" -> Right CTRichMediaImExpand
6568+ "RICH_MEDIA_INPAGE" -> Right CTRichMediaInpage
6569+ "RICH_MEDIA_INPAGE_FLOATING" -> Right CTRichMediaInpageFloating
6570+ "RICH_MEDIA_INTERSTITIAL_FLOAT" -> Right CTRichMediaInterstitialFloat
6571+ "RICH_MEDIA_MOBILE_IN_APP" -> Right CTRichMediaMobileInApp
6572+ "RICH_MEDIA_MULTI_FLOATING" -> Right CTRichMediaMultiFloating
6573+ "RICH_MEDIA_PEEL_DOWN" -> Right CTRichMediaPeelDown
6574+ "TRACKING_TEXT" -> Right CTTrackingText
6575+ "VPAID_LINEAR" -> Right CTVpaidLinear
6576+ "VPAID_NON_LINEAR" -> Right CTVpaidNonLinear
6577+ x -> Left ("Unable to parse CreativeType from: " <> x)
6578+
6579+instance ToHttpApiData CreativeType where
6580+ toQueryParam = \case
65816581 CTBrandSafeDefaultInstreamVideo -> "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
65826582 CTCustomInpage -> "CUSTOM_INPAGE"
65836583 CTCustomInterstitial -> "CUSTOM_INTERSTITIAL"
@@ -6621,14 +6621,14 @@ data FilesListSortOrder
66216621
66226622instance Hashable FilesListSortOrder
66236623
6624−instance FromText FilesListSortOrder where
6625− fromText = \case
6626− "ASCENDING" -> Just FLSOAscending
6627− "DESCENDING" -> Just FLSODescending
6628− _ -> Nothing
6624+instance FromHttpApiData FilesListSortOrder where
6625+ parseQueryParam = \case
6626+ "ASCENDING" -> Right FLSOAscending
6627+ "DESCENDING" -> Right FLSODescending
6628+ x -> Left ("Unable to parse FilesListSortOrder from: " <> x)
66296629
6630−instance ToText FilesListSortOrder where
6631− toText = \case
6630+instance ToHttpApiData FilesListSortOrder where
6631+ toQueryParam = \case
66326632 FLSOAscending -> "ASCENDING"
66336633 FLSODescending -> "DESCENDING"
66346634
@@ -6648,14 +6648,14 @@ data AdvertiserGroupsListSortField
66486648
66496649instance Hashable AdvertiserGroupsListSortField
66506650
6651−instance FromText AdvertiserGroupsListSortField where
6652− fromText = \case
6653− "ID" -> Just AGLSFID
6654− "NAME" -> Just AGLSFName
6655− _ -> Nothing
6651+instance FromHttpApiData AdvertiserGroupsListSortField where
6652+ parseQueryParam = \case
6653+ "ID" -> Right AGLSFID
6654+ "NAME" -> Right AGLSFName
6655+ x -> Left ("Unable to parse AdvertiserGroupsListSortField from: " <> x)
66566656
6657−instance ToText AdvertiserGroupsListSortField where
6658− toText = \case
6657+instance ToHttpApiData AdvertiserGroupsListSortField where
6658+ toQueryParam = \case
66596659 AGLSFID -> "ID"
66606660 AGLSFName -> "NAME"
66616661
@@ -6678,15 +6678,15 @@ data TargetWindowTargetWindowOption
66786678
66796679instance Hashable TargetWindowTargetWindowOption
66806680
6681−instance FromText TargetWindowTargetWindowOption where
6682− fromText = \case
6683− "CURRENT_WINDOW" -> Just CurrentWindow
6684− "CUSTOM" -> Just Custom
6685− "NEW_WINDOW" -> Just NewWindow
6686− _ -> Nothing
6681+instance FromHttpApiData TargetWindowTargetWindowOption where
6682+ parseQueryParam = \case
6683+ "CURRENT_WINDOW" -> Right CurrentWindow
6684+ "CUSTOM" -> Right Custom
6685+ "NEW_WINDOW" -> Right NewWindow
6686+ x -> Left ("Unable to parse TargetWindowTargetWindowOption from: " <> x)
66876687
6688−instance ToText TargetWindowTargetWindowOption where
6689− toText = \case
6688+instance ToHttpApiData TargetWindowTargetWindowOption where
6689+ toQueryParam = \case
66906690 CurrentWindow -> "CURRENT_WINDOW"
66916691 Custom -> "CUSTOM"
66926692 NewWindow -> "NEW_WINDOW"
@@ -6707,14 +6707,14 @@ data DirectorySiteContactsListSortField
67076707
67086708instance Hashable DirectorySiteContactsListSortField
67096709
6710−instance FromText DirectorySiteContactsListSortField where
6711− fromText = \case
6712− "ID" -> Just DSCLSFID
6713− "NAME" -> Just DSCLSFName
6714− _ -> Nothing
6710+instance FromHttpApiData DirectorySiteContactsListSortField where
6711+ parseQueryParam = \case
6712+ "ID" -> Right DSCLSFID
6713+ "NAME" -> Right DSCLSFName
6714+ x -> Left ("Unable to parse DirectorySiteContactsListSortField from: " <> x)
67156715
6716−instance ToText DirectorySiteContactsListSortField where
6717− toText = \case
6716+instance ToHttpApiData DirectorySiteContactsListSortField where
6717+ toQueryParam = \case
67186718 DSCLSFID -> "ID"
67196719 DSCLSFName -> "NAME"
67206720
@@ -6740,17 +6740,17 @@ data PlacementsListPricingTypes
67406740
67416741instance Hashable PlacementsListPricingTypes
67426742
6743−instance FromText PlacementsListPricingTypes where
6744− fromText = \case
6745− "PRICING_TYPE_CPA" -> Just PLPTPricingTypeCpa
6746− "PRICING_TYPE_CPC" -> Just PLPTPricingTypeCpc
6747− "PRICING_TYPE_CPM" -> Just PLPTPricingTypeCpm
6748− "PRICING_TYPE_FLAT_RATE_CLICKS" -> Just PLPTPricingTypeFlatRateClicks
6749− "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Just PLPTPricingTypeFlatRateImpressions
6750− _ -> Nothing
6751−
6752−instance ToText PlacementsListPricingTypes where
6753− toText = \case
6743+instance FromHttpApiData PlacementsListPricingTypes where
6744+ parseQueryParam = \case
6745+ "PRICING_TYPE_CPA" -> Right PLPTPricingTypeCpa
6746+ "PRICING_TYPE_CPC" -> Right PLPTPricingTypeCpc
6747+ "PRICING_TYPE_CPM" -> Right PLPTPricingTypeCpm
6748+ "PRICING_TYPE_FLAT_RATE_CLICKS" -> Right PLPTPricingTypeFlatRateClicks
6749+ "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" -> Right PLPTPricingTypeFlatRateImpressions
6750+ x -> Left ("Unable to parse PlacementsListPricingTypes from: " <> x)
6751+
6752+instance ToHttpApiData PlacementsListPricingTypes where
6753+ toQueryParam = \case
67546754 PLPTPricingTypeCpa -> "PRICING_TYPE_CPA"
67556755 PLPTPricingTypeCpc -> "PRICING_TYPE_CPC"
67566756 PLPTPricingTypeCpm -> "PRICING_TYPE_CPM"
@@ -6773,14 +6773,14 @@ data EventTagsListSortOrder
67736773
67746774instance Hashable EventTagsListSortOrder
67756775
6776−instance FromText EventTagsListSortOrder where
6777− fromText = \case
6778− "ASCENDING" -> Just ETLSOAscending
6779− "DESCENDING" -> Just ETLSODescending
6780− _ -> Nothing
6776+instance FromHttpApiData EventTagsListSortOrder where
6777+ parseQueryParam = \case
6778+ "ASCENDING" -> Right ETLSOAscending
6779+ "DESCENDING" -> Right ETLSODescending
6780+ x -> Left ("Unable to parse EventTagsListSortOrder from: " <> x)
67816781
6782−instance ToText EventTagsListSortOrder where
6783− toText = \case
6782+instance ToHttpApiData EventTagsListSortOrder where
6783+ toQueryParam = \case
67846784 ETLSOAscending -> "ASCENDING"
67856785 ETLSODescending -> "DESCENDING"
67866786
@@ -6800,14 +6800,14 @@ data DirectorySitesListSortField
68006800
68016801instance Hashable DirectorySitesListSortField
68026802
6803−instance FromText DirectorySitesListSortField where
6804− fromText = \case
6805− "ID" -> Just DSLSFID
6806− "NAME" -> Just DSLSFName
6807− _ -> Nothing
6803+instance FromHttpApiData DirectorySitesListSortField where
6804+ parseQueryParam = \case
6805+ "ID" -> Right DSLSFID
6806+ "NAME" -> Right DSLSFName
6807+ x -> Left ("Unable to parse DirectorySitesListSortField from: " <> x)
68086808
6809−instance ToText DirectorySitesListSortField where
6810− toText = \case
6809+instance ToHttpApiData DirectorySitesListSortField where
6810+ toQueryParam = \case
68116811 DSLSFID -> "ID"
68126812 DSLSFName -> "NAME"
68136813
@@ -6831,16 +6831,16 @@ data ReportCrossDimensionReachCriteriaDimension
68316831
68326832instance Hashable ReportCrossDimensionReachCriteriaDimension
68336833
6834−instance FromText ReportCrossDimensionReachCriteriaDimension where
6835− fromText = \case
6836− "ADVERTISER" -> Just RCDRCDAdvertiser
6837− "CAMPAIGN" -> Just RCDRCDCampaign
6838− "SITE_BY_ADVERTISER" -> Just RCDRCDSiteByAdvertiser
6839− "SITE_BY_CAMPAIGN" -> Just RCDRCDSiteByCampaign
6840− _ -> Nothing
6834+instance FromHttpApiData ReportCrossDimensionReachCriteriaDimension where
6835+ parseQueryParam = \case
6836+ "ADVERTISER" -> Right RCDRCDAdvertiser
6837+ "CAMPAIGN" -> Right RCDRCDCampaign
6838+ "SITE_BY_ADVERTISER" -> Right RCDRCDSiteByAdvertiser
6839+ "SITE_BY_CAMPAIGN" -> Right RCDRCDSiteByCampaign
6840+ x -> Left ("Unable to parse ReportCrossDimensionReachCriteriaDimension from: " <> x)
68416841
6842−instance ToText ReportCrossDimensionReachCriteriaDimension where
6843− toText = \case
6842+instance ToHttpApiData ReportCrossDimensionReachCriteriaDimension where
6843+ toQueryParam = \case
68446844 RCDRCDAdvertiser -> "ADVERTISER"
68456845 RCDRCDCampaign -> "CAMPAIGN"
68466846 RCDRCDSiteByAdvertiser -> "SITE_BY_ADVERTISER"
@@ -6862,14 +6862,14 @@ data SitesListSortOrder
68626862
68636863instance Hashable SitesListSortOrder
68646864
6865−instance FromText SitesListSortOrder where
6866− fromText = \case
6867− "ASCENDING" -> Just SLSOAscending
6868− "DESCENDING" -> Just SLSODescending
6869− _ -> Nothing
6865+instance FromHttpApiData SitesListSortOrder where
6866+ parseQueryParam = \case
6867+ "ASCENDING" -> Right SLSOAscending
6868+ "DESCENDING" -> Right SLSODescending
6869+ x -> Left ("Unable to parse SitesListSortOrder from: " <> x)
68706870
6871−instance ToText SitesListSortOrder where
6872− toText = \case
6871+instance ToHttpApiData SitesListSortOrder where
6872+ toQueryParam = \case
68736873 SLSOAscending -> "ASCENDING"
68746874 SLSODescending -> "DESCENDING"
68756875
@@ -6920,30 +6920,30 @@ data PlacementTagFormatsItem
69206920
69216921instance Hashable PlacementTagFormatsItem
69226922
6923−instance FromText PlacementTagFormatsItem where
6924− fromText = \case
6925− "PLACEMENT_TAG_CLICK_COMMANDS" -> Just PTFIPlacementTagClickCommands
6926− "PLACEMENT_TAG_IFRAME_ILAYER" -> Just PTFIPlacementTagIframeIlayer
6927− "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Just PTFIPlacementTagIframeJavascript
6928− "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Just PTFIPlacementTagIframeJavascriptLegacy
6929− "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Just PTFIPlacementTagInstreamVideoPrefetch
6930− "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Just PTFIPlacementTagInstreamVideoPrefetchVast3
6931− "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Just PTFIPlacementTagInternalRedirect
6932− "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Just PTFIPlacementTagInterstitialIframeJavascript
6933− "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Just PTFIPlacementTagInterstitialIframeJavascriptLegacy
6934− "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Just PTFIPlacementTagInterstitialInternalRedirect
6935− "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Just PTFIPlacementTagInterstitialJavascript
6936− "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Just PTFIPlacementTagInterstitialJavascriptLegacy
6937− "PLACEMENT_TAG_JAVASCRIPT" -> Just PTFIPlacementTagJavascript
6938− "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Just PTFIPlacementTagJavascriptLegacy
6939− "PLACEMENT_TAG_STANDARD" -> Just PTFIPlacementTagStandard
6940− "PLACEMENT_TAG_TRACKING" -> Just PTFIPlacementTagTracking
6941− "PLACEMENT_TAG_TRACKING_IFRAME" -> Just PTFIPlacementTagTrackingIframe
6942− "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Just PTFIPlacementTagTrackingJavascript
6943− _ -> Nothing
6944−
6945−instance ToText PlacementTagFormatsItem where
6946− toText = \case
6923+instance FromHttpApiData PlacementTagFormatsItem where
6924+ parseQueryParam = \case
6925+ "PLACEMENT_TAG_CLICK_COMMANDS" -> Right PTFIPlacementTagClickCommands
6926+ "PLACEMENT_TAG_IFRAME_ILAYER" -> Right PTFIPlacementTagIframeIlayer
6927+ "PLACEMENT_TAG_IFRAME_JAVASCRIPT" -> Right PTFIPlacementTagIframeJavascript
6928+ "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagIframeJavascriptLegacy
6929+ "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -> Right PTFIPlacementTagInstreamVideoPrefetch
6930+ "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -> Right PTFIPlacementTagInstreamVideoPrefetchVast3
6931+ "PLACEMENT_TAG_INTERNAL_REDIRECT" -> Right PTFIPlacementTagInternalRedirect
6932+ "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -> Right PTFIPlacementTagInterstitialIframeJavascript
6933+ "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagInterstitialIframeJavascriptLegacy
6934+ "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -> Right PTFIPlacementTagInterstitialInternalRedirect
6935+ "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" -> Right PTFIPlacementTagInterstitialJavascript
6936+ "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagInterstitialJavascriptLegacy
6937+ "PLACEMENT_TAG_JAVASCRIPT" -> Right PTFIPlacementTagJavascript
6938+ "PLACEMENT_TAG_JAVASCRIPT_LEGACY" -> Right PTFIPlacementTagJavascriptLegacy
6939+ "PLACEMENT_TAG_STANDARD" -> Right PTFIPlacementTagStandard
6940+ "PLACEMENT_TAG_TRACKING" -> Right PTFIPlacementTagTracking
6941+ "PLACEMENT_TAG_TRACKING_IFRAME" -> Right PTFIPlacementTagTrackingIframe
6942+ "PLACEMENT_TAG_TRACKING_JAVASCRIPT" -> Right PTFIPlacementTagTrackingJavascript
6943+ x -> Left ("Unable to parse PlacementTagFormatsItem from: " <> x)
6944+
6945+instance ToHttpApiData PlacementTagFormatsItem where
6946+ toQueryParam = \case
69476947 PTFIPlacementTagClickCommands -> "PLACEMENT_TAG_CLICK_COMMANDS"
69486948 PTFIPlacementTagIframeIlayer -> "PLACEMENT_TAG_IFRAME_ILAYER"
69496949 PTFIPlacementTagIframeJavascript -> "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
@@ -6985,17 +6985,17 @@ data ReportType
69856985
69866986instance Hashable ReportType
69876987
6988−instance FromText ReportType where
6989− fromText = \case
6990− "CROSS_DIMENSION_REACH" -> Just RTCrossDimensionReach
6991− "FLOODLIGHT" -> Just RTFloodlight
6992− "PATH_TO_CONVERSION" -> Just RTPathToConversion
6993− "REACH" -> Just RTReach
6994− "STANDARD" -> Just RTStandard
6995− _ -> Nothing
6996−
6997−instance ToText ReportType where
6998− toText = \case
6988+instance FromHttpApiData ReportType where
6989+ parseQueryParam = \case
6990+ "CROSS_DIMENSION_REACH" -> Right RTCrossDimensionReach
6991+ "FLOODLIGHT" -> Right RTFloodlight
6992+ "PATH_TO_CONVERSION" -> Right RTPathToConversion
6993+ "REACH" -> Right RTReach
6994+ "STANDARD" -> Right RTStandard
6995+ x -> Left ("Unable to parse ReportType from: " <> x)
6996+
6997+instance ToHttpApiData ReportType where
6998+ toQueryParam = \case
69996999 RTCrossDimensionReach -> "CROSS_DIMENSION_REACH"
70007000 RTFloodlight -> "FLOODLIGHT"
70017001 RTPathToConversion -> "PATH_TO_CONVERSION"
@@ -7059,35 +7059,35 @@ data CreativeAssetMetadataWarnedValidationRulesItem
70597059
70607060instance Hashable CreativeAssetMetadataWarnedValidationRulesItem
70617061
7062−instance FromText CreativeAssetMetadataWarnedValidationRulesItem where
7063− fromText = \case
7064− "ADMOB_REFERENCED" -> Just ADMobReferenced
7065− "ASSET_FORMAT_UNSUPPORTED_DCM" -> Just AssetFormatUnsupportedDcm
7066− "ASSET_INVALID" -> Just AssetInvalid
7067− "CLICK_TAG_HARD_CODED" -> Just ClickTagHardCoded
7068− "CLICK_TAG_INVALID" -> Just ClickTagInvalid
7069− "CLICK_TAG_IN_GWD" -> Just ClickTagInGwd
7070− "CLICK_TAG_MISSING" -> Just ClickTagMissing
7071− "CLICK_TAG_MORE_THAN_ONE" -> Just ClickTagMoreThanOne
7072− "CLICK_TAG_NON_TOP_LEVEL" -> Just ClickTagNonTopLevel
7073− "COMPONENT_UNSUPPORTED_DCM" -> Just ComponentUnsupportedDcm
7074− "ENABLER_UNSUPPORTED_METHOD_DCM" -> Just EnablerUnsupportedMethodDcm
7075− "EXTERNAL_FILE_REFERENCED" -> Just ExternalFileReferenced
7076− "FILE_DETAIL_EMPTY" -> Just FileDetailEmpty
7077− "FILE_TYPE_INVALID" -> Just FileTypeInvalid
7078− "GWD_PROPERTIES_INVALID" -> Just GwdPropertiesInvalid
7079− "HTML5_FEATURE_UNSUPPORTED" -> Just HTML5FeatureUnsupported
7080− "LINKED_FILE_NOT_FOUND" -> Just LinkedFileNotFound
7081− "MAX_FLASH_VERSION_11" -> Just MaxFlashVersion11
7082− "MRAID_REFERENCED" -> Just MraidReferenced
7083− "NOT_SSL_COMPLIANT" -> Just NotSSLCompliant
7084− "ORPHANED_ASSET" -> Just OrphanedAsset
7085− "PRIMARY_HTML_MISSING" -> Just PrimaryHTMLMissing
7086− "ZIP_INVALID" -> Just ZipInvalid
7087− _ -> Nothing
7088−
7089−instance ToText CreativeAssetMetadataWarnedValidationRulesItem where
7090− toText = \case
7062+instance FromHttpApiData CreativeAssetMetadataWarnedValidationRulesItem where
7063+ parseQueryParam = \case
7064+ "ADMOB_REFERENCED" -> Right ADMobReferenced
7065+ "ASSET_FORMAT_UNSUPPORTED_DCM" -> Right AssetFormatUnsupportedDcm
7066+ "ASSET_INVALID" -> Right AssetInvalid
7067+ "CLICK_TAG_HARD_CODED" -> Right ClickTagHardCoded
7068+ "CLICK_TAG_INVALID" -> Right ClickTagInvalid
7069+ "CLICK_TAG_IN_GWD" -> Right ClickTagInGwd
7070+ "CLICK_TAG_MISSING" -> Right ClickTagMissing
7071+ "CLICK_TAG_MORE_THAN_ONE" -> Right ClickTagMoreThanOne
7072+ "CLICK_TAG_NON_TOP_LEVEL" -> Right ClickTagNonTopLevel
7073+ "COMPONENT_UNSUPPORTED_DCM" -> Right ComponentUnsupportedDcm
7074+ "ENABLER_UNSUPPORTED_METHOD_DCM" -> Right EnablerUnsupportedMethodDcm
7075+ "EXTERNAL_FILE_REFERENCED" -> Right ExternalFileReferenced
7076+ "FILE_DETAIL_EMPTY" -> Right FileDetailEmpty
7077+ "FILE_TYPE_INVALID" -> Right FileTypeInvalid
7078+ "GWD_PROPERTIES_INVALID" -> Right GwdPropertiesInvalid
7079+ "HTML5_FEATURE_UNSUPPORTED" -> Right HTML5FeatureUnsupported
7080+ "LINKED_FILE_NOT_FOUND" -> Right LinkedFileNotFound
7081+ "MAX_FLASH_VERSION_11" -> Right MaxFlashVersion11
7082+ "MRAID_REFERENCED" -> Right MraidReferenced
7083+ "NOT_SSL_COMPLIANT" -> Right NotSSLCompliant
7084+ "ORPHANED_ASSET" -> Right OrphanedAsset
7085+ "PRIMARY_HTML_MISSING" -> Right PrimaryHTMLMissing
7086+ "ZIP_INVALID" -> Right ZipInvalid
7087+ x -> Left ("Unable to parse CreativeAssetMetadataWarnedValidationRulesItem from: " <> x)
7088+
7089+instance ToHttpApiData CreativeAssetMetadataWarnedValidationRulesItem where
7090+ toQueryParam = \case
70917091 ADMobReferenced -> "ADMOB_REFERENCED"
70927092 AssetFormatUnsupportedDcm -> "ASSET_FORMAT_UNSUPPORTED_DCM"
70937093 AssetInvalid -> "ASSET_INVALID"
@@ -7128,14 +7128,14 @@ data AdSlotPaymentSourceType
71287128
71297129instance Hashable AdSlotPaymentSourceType
71307130
7131−instance FromText AdSlotPaymentSourceType where
7132− fromText = \case
7133− "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID" -> Just PlanningPaymentSourceTypeAgencyPaid
7134− "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" -> Just PlanningPaymentSourceTypePublisherPaid
7135− _ -> Nothing
7131+instance FromHttpApiData AdSlotPaymentSourceType where
7132+ parseQueryParam = \case
7133+ "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID" -> Right PlanningPaymentSourceTypeAgencyPaid
7134+ "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" -> Right PlanningPaymentSourceTypePublisherPaid
7135+ x -> Left ("Unable to parse AdSlotPaymentSourceType from: " <> x)
71367136
7137−instance ToText AdSlotPaymentSourceType where
7138− toText = \case
7137+instance ToHttpApiData AdSlotPaymentSourceType where
7138+ toQueryParam = \case
71397139 PlanningPaymentSourceTypeAgencyPaid -> "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID"
71407140 PlanningPaymentSourceTypePublisherPaid -> "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID"
71417141
@@ -7154,14 +7154,14 @@ data AccountPermissionAccountProFilesItem
71547154
71557155instance Hashable AccountPermissionAccountProFilesItem
71567156
7157−instance FromText AccountPermissionAccountProFilesItem where
7158− fromText = \case
7159− "ACCOUNT_PROFILE_BASIC" -> Just APAPFIAccountProFileBasic
7160− "ACCOUNT_PROFILE_STANDARD" -> Just APAPFIAccountProFileStandard
7161− _ -> Nothing
7157+instance FromHttpApiData AccountPermissionAccountProFilesItem where
7158+ parseQueryParam = \case
7159+ "ACCOUNT_PROFILE_BASIC" -> Right APAPFIAccountProFileBasic
7160+ "ACCOUNT_PROFILE_STANDARD" -> Right APAPFIAccountProFileStandard
7161+ x -> Left ("Unable to parse AccountPermissionAccountProFilesItem from: " <> x)
71627162
7163−instance ToText AccountPermissionAccountProFilesItem where
7164− toText = \case
7163+instance ToHttpApiData AccountPermissionAccountProFilesItem where
7164+ toQueryParam = \case
71657165 APAPFIAccountProFileBasic -> "ACCOUNT_PROFILE_BASIC"
71667166 APAPFIAccountProFileStandard -> "ACCOUNT_PROFILE_STANDARD"
71677167
@@ -7183,15 +7183,15 @@ data CreativeCustomEventAdvertiserCustomEventType
71837183
71847184instance Hashable CreativeCustomEventAdvertiserCustomEventType
71857185
7186−instance FromText CreativeCustomEventAdvertiserCustomEventType where
7187− fromText = \case
7188− "ADVERTISER_EVENT_COUNTER" -> Just AdvertiserEventCounter
7189− "ADVERTISER_EVENT_EXIT" -> Just AdvertiserEventExit
7190− "ADVERTISER_EVENT_TIMER" -> Just AdvertiserEventTimer
7191− _ -> Nothing
7186+instance FromHttpApiData CreativeCustomEventAdvertiserCustomEventType where
7187+ parseQueryParam = \case
7188+ "ADVERTISER_EVENT_COUNTER" -> Right AdvertiserEventCounter
7189+ "ADVERTISER_EVENT_EXIT" -> Right AdvertiserEventExit
7190+ "ADVERTISER_EVENT_TIMER" -> Right AdvertiserEventTimer
7191+ x -> Left ("Unable to parse CreativeCustomEventAdvertiserCustomEventType from: " <> x)
71927192
7193−instance ToText CreativeCustomEventAdvertiserCustomEventType where
7194− toText = \case
7193+instance ToHttpApiData CreativeCustomEventAdvertiserCustomEventType where
7194+ toQueryParam = \case
71957195 AdvertiserEventCounter -> "ADVERTISER_EVENT_COUNTER"
71967196 AdvertiserEventExit -> "ADVERTISER_EVENT_EXIT"
71977197 AdvertiserEventTimer -> "ADVERTISER_EVENT_TIMER"
@@ -7282,49 +7282,49 @@ data ChangeLogsListObjectType
72827282
72837283instance Hashable ChangeLogsListObjectType
72847284
7285−instance FromText ChangeLogsListObjectType where
7286− fromText = \case
7287− "OBJECT_ACCOUNT" -> Just ObjectAccount
7288− "OBJECT_ACCOUNT_BILLING_FEATURE" -> Just ObjectAccountBillingFeature
7289− "OBJECT_AD" -> Just ObjectAd
7290− "OBJECT_ADVERTISER" -> Just ObjectAdvertiser
7291− "OBJECT_ADVERTISER_GROUP" -> Just ObjectAdvertiserGroup
7292− "OBJECT_BILLING_ACCOUNT_GROUP" -> Just ObjectBillingAccountGroup
7293− "OBJECT_BILLING_FEATURE" -> Just ObjectBillingFeature
7294− "OBJECT_BILLING_MINIMUM_FEE" -> Just ObjectBillingMinimumFee
7295− "OBJECT_BILLING_PROFILE" -> Just ObjectBillingProFile
7296− "OBJECT_CAMPAIGN" -> Just ObjectCampaign
7297− "OBJECT_CONTENT_CATEGORY" -> Just ObjectContentCategory
7298− "OBJECT_CREATIVE" -> Just ObjectCreative
7299− "OBJECT_CREATIVE_ASSET" -> Just ObjectCreativeAsset
7300− "OBJECT_CREATIVE_BUNDLE" -> Just ObjectCreativeBundle
7301− "OBJECT_CREATIVE_FIELD" -> Just ObjectCreativeField
7302− "OBJECT_CREATIVE_GROUP" -> Just ObjectCreativeGroup
7303− "OBJECT_DFA_SITE" -> Just ObjectDfaSite
7304− "OBJECT_EVENT_TAG" -> Just ObjectEventTag
7305− "OBJECT_FLOODLIGHT_ACTIVITY_GROUP" -> Just ObjectFloodlightActivityGroup
7306− "OBJECT_FLOODLIGHT_ACTVITY" -> Just ObjectFloodlightActvity
7307− "OBJECT_FLOODLIGHT_CONFIGURATION" -> Just ObjectFloodlightConfiguration
7308− "OBJECT_INSTREAM_CREATIVE" -> Just ObjectInstreamCreative
7309− "OBJECT_LANDING_PAGE" -> Just ObjectLandingPage
7310− "OBJECT_MEDIA_ORDER" -> Just ObjectMediaOrder
7311− "OBJECT_PLACEMENT" -> Just ObjectPlacement
7312− "OBJECT_PLACEMENT_STRATEGY" -> Just ObjectPlacementStrategy
7313− "OBJECT_PLAYSTORE_LINK" -> Just ObjectPlaystoreLink
7314− "OBJECT_PROVIDED_LIST_CLIENT" -> Just ObjectProvidedListClient
7315− "OBJECT_RATE_CARD" -> Just ObjectRateCard
7316− "OBJECT_REMARKETING_LIST" -> Just ObjectRemarketingList
7317− "OBJECT_RICHMEDIA_CREATIVE" -> Just ObjectRichmediaCreative
7318− "OBJECT_SD_SITE" -> Just ObjectSdSite
7319− "OBJECT_SIZE" -> Just ObjectSize
7320− "OBJECT_SUBACCOUNT" -> Just ObjectSubAccount
7321− "OBJECT_USER_PROFILE" -> Just ObjectUserProFile
7322− "OBJECT_USER_PROFILE_FILTER" -> Just ObjectUserProFileFilter
7323− "OBJECT_USER_ROLE" -> Just ObjectUserRole
7324− _ -> Nothing
7325−
7326−instance ToText ChangeLogsListObjectType where
7327− toText = \case
7285+instance FromHttpApiData ChangeLogsListObjectType where
7286+ parseQueryParam = \case
7287+ "OBJECT_ACCOUNT" -> Right ObjectAccount
7288+ "OBJECT_ACCOUNT_BILLING_FEATURE" -> Right ObjectAccountBillingFeature
7289+ "OBJECT_AD" -> Right ObjectAd
7290+ "OBJECT_ADVERTISER" -> Right ObjectAdvertiser
7291+ "OBJECT_ADVERTISER_GROUP" -> Right ObjectAdvertiserGroup
7292+ "OBJECT_BILLING_ACCOUNT_GROUP" -> Right ObjectBillingAccountGroup
7293+ "OBJECT_BILLING_FEATURE" -> Right ObjectBillingFeature
7294+ "OBJECT_BILLING_MINIMUM_FEE" -> Right ObjectBillingMinimumFee
7295+ "OBJECT_BILLING_PROFILE" -> Right ObjectBillingProFile
7296+ "OBJECT_CAMPAIGN" -> Right ObjectCampaign
7297+ "OBJECT_CONTENT_CATEGORY" -> Right ObjectContentCategory
7298+ "OBJECT_CREATIVE" -> Right ObjectCreative
7299+ "OBJECT_CREATIVE_ASSET" -> Right ObjectCreativeAsset
7300+ "OBJECT_CREATIVE_BUNDLE" -> Right ObjectCreativeBundle
7301+ "OBJECT_CREATIVE_FIELD" -> Right ObjectCreativeField
7302+ "OBJECT_CREATIVE_GROUP" -> Right ObjectCreativeGroup
7303+ "OBJECT_DFA_SITE" -> Right ObjectDfaSite
7304+ "OBJECT_EVENT_TAG" -> Right ObjectEventTag
7305+ "OBJECT_FLOODLIGHT_ACTIVITY_GROUP" -> Right ObjectFloodlightActivityGroup
7306+ "OBJECT_FLOODLIGHT_ACTVITY" -> Right ObjectFloodlightActvity
7307+ "OBJECT_FLOODLIGHT_CONFIGURATION" -> Right ObjectFloodlightConfiguration
7308+ "OBJECT_INSTREAM_CREATIVE" -> Right ObjectInstreamCreative
7309+ "OBJECT_LANDING_PAGE" -> Right ObjectLandingPage
7310+ "OBJECT_MEDIA_ORDER" -> Right ObjectMediaOrder
7311+ "OBJECT_PLACEMENT" -> Right ObjectPlacement
7312+ "OBJECT_PLACEMENT_STRATEGY" -> Right ObjectPlacementStrategy
7313+ "OBJECT_PLAYSTORE_LINK" -> Right ObjectPlaystoreLink
7314+ "OBJECT_PROVIDED_LIST_CLIENT" -> Right ObjectProvidedListClient
7315+ "OBJECT_RATE_CARD" -> Right ObjectRateCard
7316+ "OBJECT_REMARKETING_LIST" -> Right ObjectRemarketingList
7317+ "OBJECT_RICHMEDIA_CREATIVE" -> Right ObjectRichmediaCreative
7318+ "OBJECT_SD_SITE" -> Right ObjectSdSite
7319+ "OBJECT_SIZE" -> Right ObjectSize
7320+ "OBJECT_SUBACCOUNT" -> Right ObjectSubAccount
7321+ "OBJECT_USER_PROFILE" -> Right ObjectUserProFile
7322+ "OBJECT_USER_PROFILE_FILTER" -> Right ObjectUserProFileFilter
7323+ "OBJECT_USER_ROLE" -> Right ObjectUserRole
7324+ x -> Left ("Unable to parse ChangeLogsListObjectType from: " <> x)
7325+
7326+instance ToHttpApiData ChangeLogsListObjectType where
7327+ toQueryParam = \case
73287328 ObjectAccount -> "OBJECT_ACCOUNT"
73297329 ObjectAccountBillingFeature -> "OBJECT_ACCOUNT_BILLING_FEATURE"
73307330 ObjectAd -> "OBJECT_AD"
@@ -7381,15 +7381,15 @@ data PricingCapCostType
73817381
73827382instance Hashable PricingCapCostType
73837383
7384−instance FromText PricingCapCostType where
7385− fromText = \case
7386− "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE" -> Just PlanningPlacementCapCostTypeCumulative
7387− "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY" -> Just PlanningPlacementCapCostTypeMonthly
7388− "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" -> Just PlanningPlacementCapCostTypeNone
7389− _ -> Nothing
7384+instance FromHttpApiData PricingCapCostType where
7385+ parseQueryParam = \case
7386+ "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE" -> Right PlanningPlacementCapCostTypeCumulative
7387+ "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY" -> Right PlanningPlacementCapCostTypeMonthly
7388+ "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" -> Right PlanningPlacementCapCostTypeNone
7389+ x -> Left ("Unable to parse PricingCapCostType from: " <> x)
73907390
7391−instance ToText PricingCapCostType where
7392− toText = \case
7391+instance ToHttpApiData PricingCapCostType where
7392+ toQueryParam = \case
73937393 PlanningPlacementCapCostTypeCumulative -> "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE"
73947394 PlanningPlacementCapCostTypeMonthly -> "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY"
73957395 PlanningPlacementCapCostTypeNone -> "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE"
@@ -7425,21 +7425,21 @@ data CreativeAssetDisplayType
74257425
74267426instance Hashable CreativeAssetDisplayType
74277427
7428−instance FromText CreativeAssetDisplayType where
7429− fromText = \case
7430− "ASSET_DISPLAY_TYPE_EXPANDING" -> Just AssetDisplayTypeExpanding
7431− "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH" -> Just AssetDisplayTypeFlashInFlash
7432− "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING" -> Just AssetDisplayTypeFlashInFlashExpanding
7433− "ASSET_DISPLAY_TYPE_FLOATING" -> Just AssetDisplayTypeFloating
7434− "ASSET_DISPLAY_TYPE_INPAGE" -> Just AssetDisplayTypeInpage
7435− "ASSET_DISPLAY_TYPE_OVERLAY" -> Just AssetDisplayTypeOverlay
7436− "ASSET_DISPLAY_TYPE_PEEL_DOWN" -> Just AssetDisplayTypePeelDown
7437− "ASSET_DISPLAY_TYPE_VPAID_LINEAR" -> Just AssetDisplayTypeVpaidLinear
7438− "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" -> Just AssetDisplayTypeVpaidNonLinear
7439− _ -> Nothing
7440−
7441−instance ToText CreativeAssetDisplayType where
7442− toText = \case
7428+instance FromHttpApiData CreativeAssetDisplayType where
7429+ parseQueryParam = \case
7430+ "ASSET_DISPLAY_TYPE_EXPANDING" -> Right AssetDisplayTypeExpanding
7431+ "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH" -> Right AssetDisplayTypeFlashInFlash
7432+ "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING" -> Right AssetDisplayTypeFlashInFlashExpanding
7433+ "ASSET_DISPLAY_TYPE_FLOATING" -> Right AssetDisplayTypeFloating
7434+ "ASSET_DISPLAY_TYPE_INPAGE" -> Right AssetDisplayTypeInpage
7435+ "ASSET_DISPLAY_TYPE_OVERLAY" -> Right AssetDisplayTypeOverlay
7436+ "ASSET_DISPLAY_TYPE_PEEL_DOWN" -> Right AssetDisplayTypePeelDown
7437+ "ASSET_DISPLAY_TYPE_VPAID_LINEAR" -> Right AssetDisplayTypeVpaidLinear
7438+ "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" -> Right AssetDisplayTypeVpaidNonLinear
7439+ x -> Left ("Unable to parse CreativeAssetDisplayType from: " <> x)
7440+
7441+instance ToHttpApiData CreativeAssetDisplayType where
7442+ toQueryParam = \case
74437443 AssetDisplayTypeExpanding -> "ASSET_DISPLAY_TYPE_EXPANDING"
74447444 AssetDisplayTypeFlashInFlash -> "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH"
74457445 AssetDisplayTypeFlashInFlashExpanding -> "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING"
@@ -7473,17 +7473,17 @@ data FloodlightActivityCountingMethod
74737473
74747474instance Hashable FloodlightActivityCountingMethod
74757475
7476−instance FromText FloodlightActivityCountingMethod where
7477− fromText = \case
7478− "ITEMS_SOLD_COUNTING" -> Just ItemsSoldCounting
7479− "SESSION_COUNTING" -> Just SessionCounting
7480− "STANDARD_COUNTING" -> Just StandardCounting
7481− "TRANSACTIONS_COUNTING" -> Just TransactionsCounting
7482− "UNIQUE_COUNTING" -> Just UniqueCounting
7483− _ -> Nothing
7484−
7485−instance ToText FloodlightActivityCountingMethod where
7486− toText = \case
7476+instance FromHttpApiData FloodlightActivityCountingMethod where
7477+ parseQueryParam = \case
7478+ "ITEMS_SOLD_COUNTING" -> Right ItemsSoldCounting
7479+ "SESSION_COUNTING" -> Right SessionCounting
7480+ "STANDARD_COUNTING" -> Right StandardCounting
7481+ "TRANSACTIONS_COUNTING" -> Right TransactionsCounting
7482+ "UNIQUE_COUNTING" -> Right UniqueCounting
7483+ x -> Left ("Unable to parse FloodlightActivityCountingMethod from: " <> x)
7484+
7485+instance ToHttpApiData FloodlightActivityCountingMethod where
7486+ toQueryParam = \case
74877487 ItemsSoldCounting -> "ITEMS_SOLD_COUNTING"
74887488 SessionCounting -> "SESSION_COUNTING"
74897489 StandardCounting -> "STANDARD_COUNTING"
@@ -7506,14 +7506,14 @@ data ContentCategoriesListSortOrder
75067506
75077507instance Hashable ContentCategoriesListSortOrder
75087508
7509−instance FromText ContentCategoriesListSortOrder where
7510− fromText = \case
7511− "ASCENDING" -> Just CCLSOAscending
7512− "DESCENDING" -> Just CCLSODescending
7513− _ -> Nothing
7509+instance FromHttpApiData ContentCategoriesListSortOrder where
7510+ parseQueryParam = \case
7511+ "ASCENDING" -> Right CCLSOAscending
7512+ "DESCENDING" -> Right CCLSODescending
7513+ x -> Left ("Unable to parse ContentCategoriesListSortOrder from: " <> x)
75147514
7515−instance ToText ContentCategoriesListSortOrder where
7516− toText = \case
7515+instance ToHttpApiData ContentCategoriesListSortOrder where
7516+ toQueryParam = \case
75177517 CCLSOAscending -> "ASCENDING"
75187518 CCLSODescending -> "DESCENDING"
75197519
@@ -7533,14 +7533,14 @@ data AdvertiserStatus
75337533
75347534instance Hashable AdvertiserStatus
75357535
7536−instance FromText AdvertiserStatus where
7537− fromText = \case
7538− "APPROVED" -> Just ASApproved
7539− "ON_HOLD" -> Just ASOnHold
7540− _ -> Nothing
7536+instance FromHttpApiData AdvertiserStatus where
7537+ parseQueryParam = \case
7538+ "APPROVED" -> Right ASApproved
7539+ "ON_HOLD" -> Right ASOnHold
7540+ x -> Left ("Unable to parse AdvertiserStatus from: " <> x)
75417541
7542−instance ToText AdvertiserStatus where
7543− toText = \case
7542+instance ToHttpApiData AdvertiserStatus where
7543+ toQueryParam = \case
75447544 ASApproved -> "APPROVED"
75457545 ASOnHold -> "ON_HOLD"
75467546
gogol-dns/gen/Network/Google/DNS/Types/Sum.hs+13−13
@@ -26,13 +26,13 @@ data ChangesListSortBy
2626
2727instance Hashable ChangesListSortBy
2828
29−instance FromText ChangesListSortBy where
30− fromText = \case
31− "changeSequence" -> Just ChangeSequence
32− _ -> Nothing
29+instance FromHttpApiData ChangesListSortBy where
30+ parseQueryParam = \case
31+ "changeSequence" -> Right ChangeSequence
32+ x -> Left ("Unable to parse ChangesListSortBy from: " <> x)
3333
34−instance ToText ChangesListSortBy where
35− toText = \case
34+instance ToHttpApiData ChangesListSortBy where
35+ toQueryParam = \case
3636 ChangeSequence -> "changeSequence"
3737
3838instance FromJSON ChangesListSortBy where
@@ -51,14 +51,14 @@ data ChangeStatus
5151
5252instance Hashable ChangeStatus
5353
54−instance FromText ChangeStatus where
55− fromText = \case
56− "done" -> Just Done
57− "pending" -> Just Pending
58− _ -> Nothing
54+instance FromHttpApiData ChangeStatus where
55+ parseQueryParam = \case
56+ "done" -> Right Done
57+ "pending" -> Right Pending
58+ x -> Left ("Unable to parse ChangeStatus from: " <> x)
5959
60−instance ToText ChangeStatus where
61− toText = \case
60+instance ToHttpApiData ChangeStatus where
61+ toQueryParam = \case
6262 Done -> "done"
6363 Pending -> "pending"
6464
gogol-doubleclick-bids/gen/Network/Google/DoubleClickBids/Types/Sum.hs+640−640
@@ -30,15 +30,15 @@ data QueryMetadataFormat
3030
3131instance Hashable QueryMetadataFormat
3232
33−instance FromText QueryMetadataFormat where
34− fromText = \case
35− "CSV" -> Just CSV
36− "EXCEL_CSV" -> Just ExcelCSV
37− "XLSX" -> Just Xlsx
38− _ -> Nothing
39−
40−instance ToText QueryMetadataFormat where
41− toText = \case
33+instance FromHttpApiData QueryMetadataFormat where
34+ parseQueryParam = \case
35+ "CSV" -> Right CSV
36+ "EXCEL_CSV" -> Right ExcelCSV
37+ "XLSX" -> Right Xlsx
38+ x -> Left ("Unable to parse QueryMetadataFormat from: " <> x)
39+
40+instance ToHttpApiData QueryMetadataFormat where
41+ toQueryParam = \case
4242 CSV -> "CSV"
4343 ExcelCSV -> "EXCEL_CSV"
4444 Xlsx -> "XLSX"
@@ -115,42 +115,42 @@ data ParametersType
115115
116116instance Hashable ParametersType
117117
118−instance FromText ParametersType where
119− fromText = \case
120− "TYPE_ACTIVE_GRP" -> Just TypeActiveGrp
121− "TYPE_AUDIENCE_COMPOSITION" -> Just TypeAudienceComPosition
122− "TYPE_AUDIENCE_PERFORMANCE" -> Just TypeAudiencePerformance
123− "TYPE_CLIENT_SAFE" -> Just TypeClientSafe
124− "TYPE_COMSCORE_VCE" -> Just TypeComscoreVce
125− "TYPE_CROSS_FEE" -> Just TypeCrossFee
126− "TYPE_CROSS_PARTNER" -> Just TypeCrossPartner
127− "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER" -> Just TypeCrossPartnerThirdPartyDataProvider
128− "TYPE_ESTIMATED_CONVERSION" -> Just TypeEstimatedConversion
129− "TYPE_FEE" -> Just TypeFee
130− "TYPE_GENERAL" -> Just TypeGeneral
131− "TYPE_INVENTORY_AVAILABILITY" -> Just TypeInventoryAvailability
132− "TYPE_KEYWORD" -> Just TypeKeyword
133− "TYPE_NIELSEN_AUDIENCE_PROFILE" -> Just TypeNielsenAudienceProFile
134− "TYPE_NIELSEN_DAILY_REACH_BUILD" -> Just TypeNielsenDailyReachBuild
135− "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET" -> Just TypeNielsenOnlineGlobalMarket
136− "TYPE_NIELSEN_SITE" -> Just TypeNielsenSite
137− "TYPE_NOT_SUPPORTED" -> Just TypeNotSupported
138− "TYPE_ORDER_ID" -> Just TypeOrderId
139− "TYPE_PAGE_CATEGORY" -> Just TypePageCategory
140− "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE" -> Just TypePetraNielsenAudienceProFile
141− "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD" -> Just TypePetraNielsenDailyReachBuild
142− "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET" -> Just TypePetraNielsenOnlineGlobalMarket
143− "TYPE_PIXEL_LOAD" -> Just TypePixelLoad
144− "TYPE_REACH_AND_FREQUENCY" -> Just TypeReachAndFrequency
145− "TYPE_THIRD_PARTY_DATA_PROVIDER" -> Just TypeThirdPartyDataProvider
146− "TYPE_TRUEVIEW" -> Just TypeTrueview
147− "TYPE_TRUEVIEW_IAR" -> Just TypeTrueviewIar
148− "TYPE_VERIFICATION" -> Just TypeVerification
149− "TYPE_YOUTUBE_VERTICAL" -> Just TypeYouTubeVertical
150− _ -> Nothing
151−
152−instance ToText ParametersType where
153− toText = \case
118+instance FromHttpApiData ParametersType where
119+ parseQueryParam = \case
120+ "TYPE_ACTIVE_GRP" -> Right TypeActiveGrp
121+ "TYPE_AUDIENCE_COMPOSITION" -> Right TypeAudienceComPosition
122+ "TYPE_AUDIENCE_PERFORMANCE" -> Right TypeAudiencePerformance
123+ "TYPE_CLIENT_SAFE" -> Right TypeClientSafe
124+ "TYPE_COMSCORE_VCE" -> Right TypeComscoreVce
125+ "TYPE_CROSS_FEE" -> Right TypeCrossFee
126+ "TYPE_CROSS_PARTNER" -> Right TypeCrossPartner
127+ "TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER" -> Right TypeCrossPartnerThirdPartyDataProvider
128+ "TYPE_ESTIMATED_CONVERSION" -> Right TypeEstimatedConversion
129+ "TYPE_FEE" -> Right TypeFee
130+ "TYPE_GENERAL" -> Right TypeGeneral
131+ "TYPE_INVENTORY_AVAILABILITY" -> Right TypeInventoryAvailability
132+ "TYPE_KEYWORD" -> Right TypeKeyword
133+ "TYPE_NIELSEN_AUDIENCE_PROFILE" -> Right TypeNielsenAudienceProFile
134+ "TYPE_NIELSEN_DAILY_REACH_BUILD" -> Right TypeNielsenDailyReachBuild
135+ "TYPE_NIELSEN_ONLINE_GLOBAL_MARKET" -> Right TypeNielsenOnlineGlobalMarket
136+ "TYPE_NIELSEN_SITE" -> Right TypeNielsenSite
137+ "TYPE_NOT_SUPPORTED" -> Right TypeNotSupported
138+ "TYPE_ORDER_ID" -> Right TypeOrderId
139+ "TYPE_PAGE_CATEGORY" -> Right TypePageCategory
140+ "TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE" -> Right TypePetraNielsenAudienceProFile
141+ "TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD" -> Right TypePetraNielsenDailyReachBuild
142+ "TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET" -> Right TypePetraNielsenOnlineGlobalMarket
143+ "TYPE_PIXEL_LOAD" -> Right TypePixelLoad
144+ "TYPE_REACH_AND_FREQUENCY" -> Right TypeReachAndFrequency
145+ "TYPE_THIRD_PARTY_DATA_PROVIDER" -> Right TypeThirdPartyDataProvider
146+ "TYPE_TRUEVIEW" -> Right TypeTrueview
147+ "TYPE_TRUEVIEW_IAR" -> Right TypeTrueviewIar
148+ "TYPE_VERIFICATION" -> Right TypeVerification
149+ "TYPE_YOUTUBE_VERTICAL" -> Right TypeYouTubeVertical
150+ x -> Left ("Unable to parse ParametersType from: " <> x)
151+
152+instance ToHttpApiData ParametersType where
153+ toQueryParam = \case
154154 TypeActiveGrp -> "TYPE_ACTIVE_GRP"
155155 TypeAudienceComPosition -> "TYPE_AUDIENCE_COMPOSITION"
156156 TypeAudiencePerformance -> "TYPE_AUDIENCE_PERFORMANCE"
@@ -200,15 +200,15 @@ data DownloadLineItemsRequestFilterType
200200
201201instance Hashable DownloadLineItemsRequestFilterType
202202
203−instance FromText DownloadLineItemsRequestFilterType where
204− fromText = \case
205− "ADVERTISER_ID" -> Just AdvertiserId
206− "INSERTION_ORDER_ID" -> Just InsertionOrderId
207− "LINE_ITEM_ID" -> Just LineItemId
208− _ -> Nothing
203+instance FromHttpApiData DownloadLineItemsRequestFilterType where
204+ parseQueryParam = \case
205+ "ADVERTISER_ID" -> Right AdvertiserId
206+ "INSERTION_ORDER_ID" -> Right InsertionOrderId
207+ "LINE_ITEM_ID" -> Right LineItemId
208+ x -> Left ("Unable to parse DownloadLineItemsRequestFilterType from: " <> x)
209209
210−instance ToText DownloadLineItemsRequestFilterType where
211− toText = \case
210+instance ToHttpApiData DownloadLineItemsRequestFilterType where
211+ toQueryParam = \case
212212 AdvertiserId -> "ADVERTISER_ID"
213213 InsertionOrderId -> "INSERTION_ORDER_ID"
214214 LineItemId -> "LINE_ITEM_ID"
@@ -261,30 +261,30 @@ data QueryMetadataDataRange
261261
262262instance Hashable QueryMetadataDataRange
263263
264−instance FromText QueryMetadataDataRange where
265− fromText = \case
266− "ALL_TIME" -> Just AllTime
267− "CURRENT_DAY" -> Just CurrentDay
268− "CUSTOM_DATES" -> Just CustomDates
269− "LAST_14_DAYS" -> Just Last14Days
270− "LAST_30_DAYS" -> Just Last30Days
271− "LAST_365_DAYS" -> Just Last365Days
272− "LAST_7_DAYS" -> Just Last7Days
273− "LAST_90_DAYS" -> Just Last90Days
274− "MONTH_TO_DATE" -> Just MonthToDate
275− "PREVIOUS_DAY" -> Just PreviousDay
276− "PREVIOUS_HALF_MONTH" -> Just PreviousHalfMonth
277− "PREVIOUS_MONTH" -> Just PreviousMonth
278− "PREVIOUS_QUARTER" -> Just PreviousQuarter
279− "PREVIOUS_WEEK" -> Just PreviousWeek
280− "PREVIOUS_YEAR" -> Just PreviousYear
281− "QUARTER_TO_DATE" -> Just QuarterToDate
282− "WEEK_TO_DATE" -> Just WeekToDate
283− "YEAR_TO_DATE" -> Just YearToDate
284− _ -> Nothing
285−
286−instance ToText QueryMetadataDataRange where
287− toText = \case
264+instance FromHttpApiData QueryMetadataDataRange where
265+ parseQueryParam = \case
266+ "ALL_TIME" -> Right AllTime
267+ "CURRENT_DAY" -> Right CurrentDay
268+ "CUSTOM_DATES" -> Right CustomDates
269+ "LAST_14_DAYS" -> Right Last14Days
270+ "LAST_30_DAYS" -> Right Last30Days
271+ "LAST_365_DAYS" -> Right Last365Days
272+ "LAST_7_DAYS" -> Right Last7Days
273+ "LAST_90_DAYS" -> Right Last90Days
274+ "MONTH_TO_DATE" -> Right MonthToDate
275+ "PREVIOUS_DAY" -> Right PreviousDay
276+ "PREVIOUS_HALF_MONTH" -> Right PreviousHalfMonth
277+ "PREVIOUS_MONTH" -> Right PreviousMonth
278+ "PREVIOUS_QUARTER" -> Right PreviousQuarter
279+ "PREVIOUS_WEEK" -> Right PreviousWeek
280+ "PREVIOUS_YEAR" -> Right PreviousYear
281+ "QUARTER_TO_DATE" -> Right QuarterToDate
282+ "WEEK_TO_DATE" -> Right WeekToDate
283+ "YEAR_TO_DATE" -> Right YearToDate
284+ x -> Left ("Unable to parse QueryMetadataDataRange from: " <> x)
285+
286+instance ToHttpApiData QueryMetadataDataRange where
287+ toQueryParam = \case
288288 AllTime -> "ALL_TIME"
289289 CurrentDay -> "CURRENT_DAY"
290290 CustomDates -> "CUSTOM_DATES"
@@ -859,284 +859,284 @@ data ParametersMetricsItem
859859
860860instance Hashable ParametersMetricsItem
861861
862−instance FromText ParametersMetricsItem where
863− fromText = \case
864− "METRIC_BID_REQUESTS" -> Just MetricBidRequests
865− "METRIC_BILLABLE_COST_ADVERTISER" -> Just MetricBillableCostAdvertiser
866− "METRIC_BILLABLE_COST_PARTNER" -> Just MetricBillableCostPartner
867− "METRIC_BILLABLE_COST_USD" -> Just MetricBillableCostUsd
868− "METRIC_CLICKS" -> Just MetricClicks
869− "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE" -> Just MetricClickToPostClickConversionRate
870− "METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY" -> Just MetricComscoreVceAudienceAvgFrequency
871− "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS" -> Just MetricComscoreVceAudienceImpressions
872− "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE" -> Just MetricComscoreVceAudienceImpressionsShare
873− "METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT" -> Just MetricComscoreVceAudienceReachPct
874− "METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT" -> Just MetricComscoreVceAudienceSharePct
875− "METRIC_COMSCORE_VCE_GROSS_RATING_POINTS" -> Just MetricComscoreVceGrossRatingPoints
876− "METRIC_COMSCORE_VCE_POPULATION" -> Just MetricComscoreVcePopulation
877− "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE" -> Just MetricComscoreVceUniqueAudience
878− "METRIC_CONVERSIONS_PER_MILLE" -> Just MetricConversionsPerMille
879− "METRIC_CPM_FEE1_ADVERTISER" -> Just MetricCpmFEE1Advertiser
880− "METRIC_CPM_FEE1_PARTNER" -> Just MetricCpmFEE1Partner
881− "METRIC_CPM_FEE1_USD" -> Just MetricCpmFEE1Usd
882− "METRIC_CPM_FEE2_ADVERTISER" -> Just MetricCpmFEE2Advertiser
883− "METRIC_CPM_FEE2_PARTNER" -> Just MetricCpmFEE2Partner
884− "METRIC_CPM_FEE2_USD" -> Just MetricCpmFEE2Usd
885− "METRIC_CPM_FEE3_ADVERTISER" -> Just MetricCpmFEE3Advertiser
886− "METRIC_CPM_FEE3_PARTNER" -> Just MetricCpmFEE3Partner
887− "METRIC_CPM_FEE3_USD" -> Just MetricCpmFEE3Usd
888− "METRIC_CPM_FEE4_ADVERTISER" -> Just MetricCpmFEE4Advertiser
889− "METRIC_CPM_FEE4_PARTNER" -> Just MetricCpmFEE4Partner
890− "METRIC_CPM_FEE4_USD" -> Just MetricCpmFEE4Usd
891− "METRIC_CPM_FEE5_ADVERTISER" -> Just MetricCpmFEE5Advertiser
892− "METRIC_CPM_FEE5_PARTNER" -> Just MetricCpmFEE5Partner
893− "METRIC_CPM_FEE5_USD" -> Just MetricCpmFEE5Usd
894− "METRIC_CTR" -> Just MetricCtr
895− "METRIC_DATA_COST_ADVERTISER" -> Just MetricDataCostAdvertiser
896− "METRIC_DATA_COST_PARTNER" -> Just MetricDataCostPartner
897− "METRIC_DATA_COST_USD" -> Just MetricDataCostUsd
898− "METRIC_FEE10_ADVERTISER" -> Just MetricFEE10Advertiser
899− "METRIC_FEE10_PARTNER" -> Just MetricFEE10Partner
900− "METRIC_FEE10_USD" -> Just MetricFEE10Usd
901− "METRIC_FEE11_ADVERTISER" -> Just MetricFEE11Advertiser
902− "METRIC_FEE11_PARTNER" -> Just MetricFEE11Partner
903− "METRIC_FEE11_USD" -> Just MetricFEE11Usd
904− "METRIC_FEE12_ADVERTISER" -> Just MetricFEE12Advertiser
905− "METRIC_FEE12_PARTNER" -> Just MetricFEE12Partner
906− "METRIC_FEE12_USD" -> Just MetricFEE12Usd
907− "METRIC_FEE13_ADVERTISER" -> Just MetricFEE13Advertiser
908− "METRIC_FEE13_PARTNER" -> Just MetricFEE13Partner
909− "METRIC_FEE13_USD" -> Just MetricFEE13Usd
910− "METRIC_FEE14_ADVERTISER" -> Just MetricFEE14Advertiser
911− "METRIC_FEE14_PARTNER" -> Just MetricFEE14Partner
912− "METRIC_FEE14_USD" -> Just MetricFEE14Usd
913− "METRIC_FEE15_ADVERTISER" -> Just MetricFEE15Advertiser
914− "METRIC_FEE15_PARTNER" -> Just MetricFEE15Partner
915− "METRIC_FEE15_USD" -> Just MetricFEE15Usd
916− "METRIC_FEE16_ADVERTISER" -> Just MetricFEE16Advertiser
917− "METRIC_FEE16_PARTNER" -> Just MetricFEE16Partner
918− "METRIC_FEE16_USD" -> Just MetricFEE16Usd
919− "METRIC_FEE17_ADVERTISER" -> Just MetricFEE17Advertiser
920− "METRIC_FEE17_PARTNER" -> Just MetricFEE17Partner
921− "METRIC_FEE17_USD" -> Just MetricFEE17Usd
922− "METRIC_FEE18_ADVERTISER" -> Just MetricFEE18Advertiser
923− "METRIC_FEE18_PARTNER" -> Just MetricFEE18Partner
924− "METRIC_FEE18_USD" -> Just MetricFEE18Usd
925− "METRIC_FEE19_ADVERTISER" -> Just MetricFEE19Advertiser
926− "METRIC_FEE19_PARTNER" -> Just MetricFEE19Partner
927− "METRIC_FEE19_USD" -> Just MetricFEE19Usd
928− "METRIC_FEE20_ADVERTISER" -> Just MetricFEE20Advertiser
929− "METRIC_FEE20_PARTNER" -> Just MetricFEE20Partner
930− "METRIC_FEE20_USD" -> Just MetricFEE20Usd
931− "METRIC_FEE21_ADVERTISER" -> Just MetricFEE21Advertiser
932− "METRIC_FEE21_PARTNER" -> Just MetricFEE21Partner
933− "METRIC_FEE21_USD" -> Just MetricFEE21Usd
934− "METRIC_FEE22_ADVERTISER" -> Just MetricFEE22Advertiser
935− "METRIC_FEE22_PARTNER" -> Just MetricFEE22Partner
936− "METRIC_FEE22_USD" -> Just MetricFEE22Usd
937− "METRIC_FEE2_ADVERTISER" -> Just MetricFEE2Advertiser
938− "METRIC_FEE2_PARTNER" -> Just MetricFEE2Partner
939− "METRIC_FEE2_USD" -> Just MetricFEE2Usd
940− "METRIC_FEE3_ADVERTISER" -> Just MetricFEE3Advertiser
941− "METRIC_FEE3_PARTNER" -> Just MetricFEE3Partner
942− "METRIC_FEE3_USD" -> Just MetricFEE3Usd
943− "METRIC_FEE4_ADVERTISER" -> Just MetricFEE4Advertiser
944− "METRIC_FEE4_PARTNER" -> Just MetricFEE4Partner
945− "METRIC_FEE4_USD" -> Just MetricFEE4Usd
946− "METRIC_FEE5_ADVERTISER" -> Just MetricFEE5Advertiser
947− "METRIC_FEE5_PARTNER" -> Just MetricFEE5Partner
948− "METRIC_FEE5_USD" -> Just MetricFEE5Usd
949− "METRIC_FEE6_ADVERTISER" -> Just MetricFEE6Advertiser
950− "METRIC_FEE6_PARTNER" -> Just MetricFEE6Partner
951− "METRIC_FEE6_USD" -> Just MetricFEE6Usd
952− "METRIC_FEE7_ADVERTISER" -> Just MetricFEE7Advertiser
953− "METRIC_FEE7_PARTNER" -> Just MetricFEE7Partner
954− "METRIC_FEE7_USD" -> Just MetricFEE7Usd
955− "METRIC_FEE8_ADVERTISER" -> Just MetricFEE8Advertiser
956− "METRIC_FEE8_PARTNER" -> Just MetricFEE8Partner
957− "METRIC_FEE8_USD" -> Just MetricFEE8Usd
958− "METRIC_FEE9_ADVERTISER" -> Just MetricFEE9Advertiser
959− "METRIC_FEE9_PARTNER" -> Just MetricFEE9Partner
960− "METRIC_FEE9_USD" -> Just MetricFEE9Usd
961− "METRIC_IMPRESSIONS" -> Just MetricImpressions
962− "METRIC_IMPRESSIONS_TO_CONVERSION_RATE" -> Just MetricImpressionsToConversionRate
963− "METRIC_LAST_CLICKS" -> Just MetricLastClicks
964− "METRIC_LAST_IMPRESSIONS" -> Just MetricLastImpressions
965− "METRIC_MEDIA_COST_ADVERTISER" -> Just MetricMediaCostAdvertiser
966− "METRIC_MEDIA_COST_ECPAPC_ADVERTISER" -> Just MetricMediaCostEcpapcAdvertiser
967− "METRIC_MEDIA_COST_ECPAPC_PARTNER" -> Just MetricMediaCostEcpapcPartner
968− "METRIC_MEDIA_COST_ECPAPC_USD" -> Just MetricMediaCostEcpapcUsd
969− "METRIC_MEDIA_COST_ECPAPV_ADVERTISER" -> Just MetricMediaCostEcpapvAdvertiser
970− "METRIC_MEDIA_COST_ECPAPV_PARTNER" -> Just MetricMediaCostEcpapvPartner
971− "METRIC_MEDIA_COST_ECPAPV_USD" -> Just MetricMediaCostEcpapvUsd
972− "METRIC_MEDIA_COST_ECPA_ADVERTISER" -> Just MetricMediaCostEcpaAdvertiser
973− "METRIC_MEDIA_COST_ECPA_PARTNER" -> Just MetricMediaCostEcpaPartner
974− "METRIC_MEDIA_COST_ECPA_USD" -> Just MetricMediaCostEcpaUsd
975− "METRIC_MEDIA_COST_ECPCV_ADVERTISER" -> Just MetricMediaCostEcpcvAdvertiser
976− "METRIC_MEDIA_COST_ECPCV_PARTNER" -> Just MetricMediaCostEcpcvPartner
977− "METRIC_MEDIA_COST_ECPCV_USD" -> Just MetricMediaCostEcpcvUsd
978− "METRIC_MEDIA_COST_ECPC_ADVERTISER" -> Just MetricMediaCostEcpcAdvertiser
979− "METRIC_MEDIA_COST_ECPC_PARTNER" -> Just MetricMediaCostEcpcPartner
980− "METRIC_MEDIA_COST_ECPC_USD" -> Just MetricMediaCostEcpcUsd
981− "METRIC_MEDIA_COST_ECPM_ADVERTISER" -> Just MetricMediaCostEcpmAdvertiser
982− "METRIC_MEDIA_COST_ECPM_PARTNER" -> Just MetricMediaCostEcpmPartner
983− "METRIC_MEDIA_COST_ECPM_USD" -> Just MetricMediaCostEcpmUsd
984− "METRIC_MEDIA_COST_PARTNER" -> Just MetricMediaCostPartner
985− "METRIC_MEDIA_COST_USD" -> Just MetricMediaCostUsd
986− "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" -> Just MetricMediaCostViewableEcpmAdvertiser
987− "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER" -> Just MetricMediaCostViewableEcpmPartner
988− "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD" -> Just MetricMediaCostViewableEcpmUsd
989− "METRIC_MEDIA_FEE1_ADVERTISER" -> Just MetricMediaFEE1Advertiser
990− "METRIC_MEDIA_FEE1_PARTNER" -> Just MetricMediaFEE1Partner
991− "METRIC_MEDIA_FEE1_USD" -> Just MetricMediaFEE1Usd
992− "METRIC_MEDIA_FEE2_ADVERTISER" -> Just MetricMediaFEE2Advertiser
993− "METRIC_MEDIA_FEE2_PARTNER" -> Just MetricMediaFEE2Partner
994− "METRIC_MEDIA_FEE2_USD" -> Just MetricMediaFEE2Usd
995− "METRIC_MEDIA_FEE3_ADVERTISER" -> Just MetricMediaFEE3Advertiser
996− "METRIC_MEDIA_FEE3_PARTNER" -> Just MetricMediaFEE3Partner
997− "METRIC_MEDIA_FEE3_USD" -> Just MetricMediaFEE3Usd
998− "METRIC_MEDIA_FEE4_ADVERTISER" -> Just MetricMediaFEE4Advertiser
999− "METRIC_MEDIA_FEE4_PARTNER" -> Just MetricMediaFEE4Partner
1000− "METRIC_MEDIA_FEE4_USD" -> Just MetricMediaFEE4Usd
1001− "METRIC_MEDIA_FEE5_ADVERTISER" -> Just MetricMediaFEE5Advertiser
1002− "METRIC_MEDIA_FEE5_PARTNER" -> Just MetricMediaFEE5Partner
1003− "METRIC_MEDIA_FEE5_USD" -> Just MetricMediaFEE5Usd
1004− "METRIC_PIXEL_LOADS" -> Just MetricPixelLoads
1005− "METRIC_PLATFORM_FEE_ADVERTISER" -> Just MetricPlatformFeeAdvertiser
1006− "METRIC_PLATFORM_FEE_PARTNER" -> Just MetricPlatformFeePartner
1007− "METRIC_PLATFORM_FEE_USD" -> Just MetricPlatformFeeUsd
1008− "METRIC_POST_CLICK_DFA_REVENUE" -> Just MetricPostClickDfaRevenue
1009− "METRIC_POST_VIEW_DFA_REVENUE" -> Just MetricPostViewDfaRevenue
1010− "METRIC_PROFIT_ADVERTISER" -> Just MetricProfitAdvertiser
1011− "METRIC_PROFIT_ECPAPC_ADVERTISER" -> Just MetricProfitEcpapcAdvertiser
1012− "METRIC_PROFIT_ECPAPC_PARTNER" -> Just MetricProfitEcpapcPartner
1013− "METRIC_PROFIT_ECPAPC_USD" -> Just MetricProfitEcpapcUsd
1014− "METRIC_PROFIT_ECPAPV_ADVERTISER" -> Just MetricProfitEcpapvAdvertiser
1015− "METRIC_PROFIT_ECPAPV_PARTNER" -> Just MetricProfitEcpapvPartner
1016− "METRIC_PROFIT_ECPAPV_USD" -> Just MetricProfitEcpapvUsd
1017− "METRIC_PROFIT_ECPA_ADVERTISER" -> Just MetricProfitEcpaAdvertiser
1018− "METRIC_PROFIT_ECPA_PARTNER" -> Just MetricProfitEcpaPartner
1019− "METRIC_PROFIT_ECPA_USD" -> Just MetricProfitEcpaUsd
1020− "METRIC_PROFIT_ECPC_ADVERTISER" -> Just MetricProfitEcpcAdvertiser
1021− "METRIC_PROFIT_ECPC_PARTNER" -> Just MetricProfitEcpcPartner
1022− "METRIC_PROFIT_ECPC_USD" -> Just MetricProfitEcpcUsd
1023− "METRIC_PROFIT_ECPM_ADVERTISER" -> Just MetricProfitEcpmAdvertiser
1024− "METRIC_PROFIT_ECPM_PARTNER" -> Just MetricProfitEcpmPartner
1025− "METRIC_PROFIT_ECPM_USD" -> Just MetricProfitEcpmUsd
1026− "METRIC_PROFIT_MARGIN" -> Just MetricProfitMargin
1027− "METRIC_PROFIT_PARTNER" -> Just MetricProfitPartner
1028− "METRIC_PROFIT_USD" -> Just MetricProfitUsd
1029− "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER" -> Just MetricProfitViewableEcpmAdvertiser
1030− "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER" -> Just MetricProfitViewableEcpmPartner
1031− "METRIC_PROFIT_VIEWABLE_ECPM_USD" -> Just MetricProfitViewableEcpmUsd
1032− "METRIC_REVENUE_ADVERTISER" -> Just MetricRevenueAdvertiser
1033− "METRIC_REVENUE_ECPAPC_ADVERTISER" -> Just MetricRevenueEcpapcAdvertiser
1034− "METRIC_REVENUE_ECPAPC_PARTNER" -> Just MetricRevenueEcpapcPartner
1035− "METRIC_REVENUE_ECPAPC_USD" -> Just MetricRevenueEcpapcUsd
1036− "METRIC_REVENUE_ECPAPV_ADVERTISER" -> Just MetricRevenueEcpapvAdvertiser
1037− "METRIC_REVENUE_ECPAPV_PARTNER" -> Just MetricRevenueEcpapvPartner
1038− "METRIC_REVENUE_ECPAPV_USD" -> Just MetricRevenueEcpapvUsd
1039− "METRIC_REVENUE_ECPA_ADVERTISER" -> Just MetricRevenueEcpaAdvertiser
1040− "METRIC_REVENUE_ECPA_PARTNER" -> Just MetricRevenueEcpaPartner
1041− "METRIC_REVENUE_ECPA_USD" -> Just MetricRevenueEcpaUsd
1042− "METRIC_REVENUE_ECPCV_ADVERTISER" -> Just MetricRevenueEcpcvAdvertiser
1043− "METRIC_REVENUE_ECPCV_PARTNER" -> Just MetricRevenueEcpcvPartner
1044− "METRIC_REVENUE_ECPCV_USD" -> Just MetricRevenueEcpcvUsd
1045− "METRIC_REVENUE_ECPC_ADVERTISER" -> Just MetricRevenueEcpcAdvertiser
1046− "METRIC_REVENUE_ECPC_PARTNER" -> Just MetricRevenueEcpcPartner
1047− "METRIC_REVENUE_ECPC_USD" -> Just MetricRevenueEcpcUsd
1048− "METRIC_REVENUE_ECPM_ADVERTISER" -> Just MetricRevenueEcpmAdvertiser
1049− "METRIC_REVENUE_ECPM_PARTNER" -> Just MetricRevenueEcpmPartner
1050− "METRIC_REVENUE_ECPM_USD" -> Just MetricRevenueEcpmUsd
1051− "METRIC_REVENUE_PARTNER" -> Just MetricRevenuePartner
1052− "METRIC_REVENUE_USD" -> Just MetricRevenueUsd
1053− "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER" -> Just MetricRevenueViewableEcpmAdvertiser
1054− "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER" -> Just MetricRevenueViewableEcpmPartner
1055− "METRIC_REVENUE_VIEWABLE_ECPM_USD" -> Just MetricRevenueViewableEcpmUsd
1056− "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS" -> Just MetricRichMediaVideoCompletions
1057− "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES" -> Just MetricRichMediaVideoFirstQuartileCompletes
1058− "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS" -> Just MetricRichMediaVideoFullScreens
1059− "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS" -> Just MetricRichMediaVideoMidpoints
1060− "METRIC_RICH_MEDIA_VIDEO_MUTES" -> Just MetricRichMediaVideoMutes
1061− "METRIC_RICH_MEDIA_VIDEO_PAUSES" -> Just MetricRichMediaVideoPauses
1062− "METRIC_RICH_MEDIA_VIDEO_PLAYS" -> Just MetricRichMediaVideoPlays
1063− "METRIC_RICH_MEDIA_VIDEO_SKIPS" -> Just MetricRichMediaVideoSkips
1064− "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES" -> Just MetricRichMediaVideoThirdQuartileCompletes
1065− "METRIC_TEA_TRUEVIEW_IMPRESSIONS" -> Just MetricTeaTrueviewImpressions
1066− "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES" -> Just MetricTeaTrueviewUniqueCookies
1067− "METRIC_TEA_TRUEVIEW_UNIQUE_PEOPLE" -> Just MetricTeaTrueviewUniquePeople
1068− "METRIC_TOTAL_CONVERSIONS" -> Just MetricTotalConversions
1069− "METRIC_TOTAL_MEDIA_COST_ADVERTISER" -> Just MetricTotalMediaCostAdvertiser
1070− "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER" -> Just MetricTotalMediaCostEcpapcAdvertiser
1071− "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER" -> Just MetricTotalMediaCostEcpapcPartner
1072− "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD" -> Just MetricTotalMediaCostEcpapcUsd
1073− "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER" -> Just MetricTotalMediaCostEcpapvAdvertiser
1074− "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER" -> Just MetricTotalMediaCostEcpapvPartner
1075− "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD" -> Just MetricTotalMediaCostEcpapvUsd
1076− "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER" -> Just MetricTotalMediaCostEcpaAdvertiser
1077− "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER" -> Just MetricTotalMediaCostEcpaPartner
1078− "METRIC_TOTAL_MEDIA_COST_ECPA_USD" -> Just MetricTotalMediaCostEcpaUsd
1079− "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER" -> Just MetricTotalMediaCostEcpcvAdvertiser
1080− "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER" -> Just MetricTotalMediaCostEcpcvPartner
1081− "METRIC_TOTAL_MEDIA_COST_ECPCV_USD" -> Just MetricTotalMediaCostEcpcvUsd
1082− "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER" -> Just MetricTotalMediaCostEcpcAdvertiser
1083− "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER" -> Just MetricTotalMediaCostEcpcPartner
1084− "METRIC_TOTAL_MEDIA_COST_ECPC_USD" -> Just MetricTotalMediaCostEcpcUsd
1085− "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER" -> Just MetricTotalMediaCostEcpmAdvertiser
1086− "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER" -> Just MetricTotalMediaCostEcpmPartner
1087− "METRIC_TOTAL_MEDIA_COST_ECPM_USD" -> Just MetricTotalMediaCostEcpmUsd
1088− "METRIC_TOTAL_MEDIA_COST_PARTNER" -> Just MetricTotalMediaCostPartner
1089− "METRIC_TOTAL_MEDIA_COST_USD" -> Just MetricTotalMediaCostUsd
1090− "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" -> Just MetricTotalMediaCostViewableEcpmAdvertiser
1091− "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER" -> Just MetricTotalMediaCostViewableEcpmPartner
1092− "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD" -> Just MetricTotalMediaCostViewableEcpmUsd
1093− "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER" -> Just MetricTrueviewConversionCostManyPerViewAdvertiser
1094− "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER" -> Just MetricTrueviewConversionCostManyPerViewPartner
1095− "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD" -> Just MetricTrueviewConversionCostManyPerViewUsd
1096− "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER" -> Just MetricTrueviewConversionCostOnePerViewAdvertiser
1097− "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER" -> Just MetricTrueviewConversionCostOnePerViewPartner
1098− "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD" -> Just MetricTrueviewConversionCostOnePerViewUsd
1099− "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW" -> Just MetricTrueviewConversionManyPerView
1100− "METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW" -> Just MetricTrueviewConversionOnePerView
1101− "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW" -> Just MetricTrueviewConversionRateOnePerView
1102− "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER" -> Just MetricTrueviewConversionValueManyPerViewAdvertiser
1103− "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER" -> Just MetricTrueviewConversionValueManyPerViewPartner
1104− "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD" -> Just MetricTrueviewConversionValueManyPerViewUsd
1105− "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER" -> Just MetricTrueviewConversionValueOnePerViewAdvertiser
1106− "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER" -> Just MetricTrueviewConversionValueOnePerViewPartner
1107− "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD" -> Just MetricTrueviewConversionValueOnePerViewUsd
1108− "METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO" -> Just MetricTrueviewCostConversionManyPerViewRatio
1109− "METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO" -> Just MetricTrueviewCostConversionOnePerViewRatio
1110− "METRIC_TRUEVIEW_CPV_ADVERTISER" -> Just MetricTrueviewCpvAdvertiser
1111− "METRIC_TRUEVIEW_CPV_PARTNER" -> Just MetricTrueviewCpvPartner
1112− "METRIC_TRUEVIEW_CPV_USD" -> Just MetricTrueviewCpvUsd
1113− "METRIC_TRUEVIEW_EARNED_LIKES" -> Just MetricTrueviewEarnedLikes
1114− "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS" -> Just MetricTrueviewEarnedPlayListAdditions
1115− "METRIC_TRUEVIEW_EARNED_SHARES" -> Just MetricTrueviewEarnedShares
1116− "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS" -> Just MetricTrueviewEarnedSubscribers
1117− "METRIC_TRUEVIEW_EARNED_VIEWS" -> Just MetricTrueviewEarnedViews
1118− "METRIC_TRUEVIEW_IMPRESSION_SHARE" -> Just MetricTrueviewImpressionShare
1119− "METRIC_TRUEVIEW_LOST_IS_BUDGET" -> Just MetricTrueviewLostIsBudget
1120− "METRIC_TRUEVIEW_LOST_IS_RANK" -> Just MetricTrueviewLostIsRank
1121− "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE" -> Just MetricTrueviewTotalConversionValue
1122− "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER" -> Just MetricTrueviewTotalConversionValuesAdvertiser
1123− "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER" -> Just MetricTrueviewTotalConversionValuesPartner
1124− "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD" -> Just MetricTrueviewTotalConversionValuesUsd
1125− "METRIC_TRUEVIEW_UNIQUE_VIEWERS" -> Just MetricTrueviewUniqueViewers
1126− "METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO" -> Just MetricTrueviewValueConversionManyPerViewRatio
1127− "METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO" -> Just MetricTrueviewValueConversionOnePerViewRatio
1128− "METRIC_TRUEVIEW_VIEWS" -> Just MetricTrueviewViews
1129− "METRIC_TRUEVIEW_VIEW_RATE" -> Just MetricTrueviewViewRate
1130− "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION" -> Just MetricTrueviewViewThroughConversion
1131− "METRIC_UNIQUE_VISITORS_COOKIES" -> Just MetricUniqueVisitorsCookies
1132− "METRIC_UNKNOWN" -> Just MetricUnknown
1133− "METRIC_VIDEO_COMPANION_CLICKS" -> Just MetricVideoCompanionClicks
1134− "METRIC_VIDEO_COMPANION_IMPRESSIONS" -> Just MetricVideoCompanionImpressions
1135− "METRIC_VIDEO_COMPLETION_RATE" -> Just MetricVideoCompletionRate
1136− _ -> Nothing
1137−
1138−instance ToText ParametersMetricsItem where
1139− toText = \case
862+instance FromHttpApiData ParametersMetricsItem where
863+ parseQueryParam = \case
864+ "METRIC_BID_REQUESTS" -> Right MetricBidRequests
865+ "METRIC_BILLABLE_COST_ADVERTISER" -> Right MetricBillableCostAdvertiser
866+ "METRIC_BILLABLE_COST_PARTNER" -> Right MetricBillableCostPartner
867+ "METRIC_BILLABLE_COST_USD" -> Right MetricBillableCostUsd
868+ "METRIC_CLICKS" -> Right MetricClicks
869+ "METRIC_CLICK_TO_POST_CLICK_CONVERSION_RATE" -> Right MetricClickToPostClickConversionRate
870+ "METRIC_COMSCORE_VCE_AUDIENCE_AVG_FREQUENCY" -> Right MetricComscoreVceAudienceAvgFrequency
871+ "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS" -> Right MetricComscoreVceAudienceImpressions
872+ "METRIC_COMSCORE_VCE_AUDIENCE_IMPRESSIONS_SHARE" -> Right MetricComscoreVceAudienceImpressionsShare
873+ "METRIC_COMSCORE_VCE_AUDIENCE_REACH_PCT" -> Right MetricComscoreVceAudienceReachPct
874+ "METRIC_COMSCORE_VCE_AUDIENCE_SHARE_PCT" -> Right MetricComscoreVceAudienceSharePct
875+ "METRIC_COMSCORE_VCE_GROSS_RATING_POINTS" -> Right MetricComscoreVceGrossRatingPoints
876+ "METRIC_COMSCORE_VCE_POPULATION" -> Right MetricComscoreVcePopulation
877+ "METRIC_COMSCORE_VCE_UNIQUE_AUDIENCE" -> Right MetricComscoreVceUniqueAudience
878+ "METRIC_CONVERSIONS_PER_MILLE" -> Right MetricConversionsPerMille
879+ "METRIC_CPM_FEE1_ADVERTISER" -> Right MetricCpmFEE1Advertiser
880+ "METRIC_CPM_FEE1_PARTNER" -> Right MetricCpmFEE1Partner
881+ "METRIC_CPM_FEE1_USD" -> Right MetricCpmFEE1Usd
882+ "METRIC_CPM_FEE2_ADVERTISER" -> Right MetricCpmFEE2Advertiser
883+ "METRIC_CPM_FEE2_PARTNER" -> Right MetricCpmFEE2Partner
884+ "METRIC_CPM_FEE2_USD" -> Right MetricCpmFEE2Usd
885+ "METRIC_CPM_FEE3_ADVERTISER" -> Right MetricCpmFEE3Advertiser
886+ "METRIC_CPM_FEE3_PARTNER" -> Right MetricCpmFEE3Partner
887+ "METRIC_CPM_FEE3_USD" -> Right MetricCpmFEE3Usd
888+ "METRIC_CPM_FEE4_ADVERTISER" -> Right MetricCpmFEE4Advertiser
889+ "METRIC_CPM_FEE4_PARTNER" -> Right MetricCpmFEE4Partner
890+ "METRIC_CPM_FEE4_USD" -> Right MetricCpmFEE4Usd
891+ "METRIC_CPM_FEE5_ADVERTISER" -> Right MetricCpmFEE5Advertiser
892+ "METRIC_CPM_FEE5_PARTNER" -> Right MetricCpmFEE5Partner
893+ "METRIC_CPM_FEE5_USD" -> Right MetricCpmFEE5Usd
894+ "METRIC_CTR" -> Right MetricCtr
895+ "METRIC_DATA_COST_ADVERTISER" -> Right MetricDataCostAdvertiser
896+ "METRIC_DATA_COST_PARTNER" -> Right MetricDataCostPartner
897+ "METRIC_DATA_COST_USD" -> Right MetricDataCostUsd
898+ "METRIC_FEE10_ADVERTISER" -> Right MetricFEE10Advertiser
899+ "METRIC_FEE10_PARTNER" -> Right MetricFEE10Partner
900+ "METRIC_FEE10_USD" -> Right MetricFEE10Usd
901+ "METRIC_FEE11_ADVERTISER" -> Right MetricFEE11Advertiser
902+ "METRIC_FEE11_PARTNER" -> Right MetricFEE11Partner
903+ "METRIC_FEE11_USD" -> Right MetricFEE11Usd
904+ "METRIC_FEE12_ADVERTISER" -> Right MetricFEE12Advertiser
905+ "METRIC_FEE12_PARTNER" -> Right MetricFEE12Partner
906+ "METRIC_FEE12_USD" -> Right MetricFEE12Usd
907+ "METRIC_FEE13_ADVERTISER" -> Right MetricFEE13Advertiser
908+ "METRIC_FEE13_PARTNER" -> Right MetricFEE13Partner
909+ "METRIC_FEE13_USD" -> Right MetricFEE13Usd
910+ "METRIC_FEE14_ADVERTISER" -> Right MetricFEE14Advertiser
911+ "METRIC_FEE14_PARTNER" -> Right MetricFEE14Partner
912+ "METRIC_FEE14_USD" -> Right MetricFEE14Usd
913+ "METRIC_FEE15_ADVERTISER" -> Right MetricFEE15Advertiser
914+ "METRIC_FEE15_PARTNER" -> Right MetricFEE15Partner
915+ "METRIC_FEE15_USD" -> Right MetricFEE15Usd
916+ "METRIC_FEE16_ADVERTISER" -> Right MetricFEE16Advertiser
917+ "METRIC_FEE16_PARTNER" -> Right MetricFEE16Partner
918+ "METRIC_FEE16_USD" -> Right MetricFEE16Usd
919+ "METRIC_FEE17_ADVERTISER" -> Right MetricFEE17Advertiser
920+ "METRIC_FEE17_PARTNER" -> Right MetricFEE17Partner
921+ "METRIC_FEE17_USD" -> Right MetricFEE17Usd
922+ "METRIC_FEE18_ADVERTISER" -> Right MetricFEE18Advertiser
923+ "METRIC_FEE18_PARTNER" -> Right MetricFEE18Partner
924+ "METRIC_FEE18_USD" -> Right MetricFEE18Usd
925+ "METRIC_FEE19_ADVERTISER" -> Right MetricFEE19Advertiser
926+ "METRIC_FEE19_PARTNER" -> Right MetricFEE19Partner
927+ "METRIC_FEE19_USD" -> Right MetricFEE19Usd
928+ "METRIC_FEE20_ADVERTISER" -> Right MetricFEE20Advertiser
929+ "METRIC_FEE20_PARTNER" -> Right MetricFEE20Partner
930+ "METRIC_FEE20_USD" -> Right MetricFEE20Usd
931+ "METRIC_FEE21_ADVERTISER" -> Right MetricFEE21Advertiser
932+ "METRIC_FEE21_PARTNER" -> Right MetricFEE21Partner
933+ "METRIC_FEE21_USD" -> Right MetricFEE21Usd
934+ "METRIC_FEE22_ADVERTISER" -> Right MetricFEE22Advertiser
935+ "METRIC_FEE22_PARTNER" -> Right MetricFEE22Partner
936+ "METRIC_FEE22_USD" -> Right MetricFEE22Usd
937+ "METRIC_FEE2_ADVERTISER" -> Right MetricFEE2Advertiser
938+ "METRIC_FEE2_PARTNER" -> Right MetricFEE2Partner
939+ "METRIC_FEE2_USD" -> Right MetricFEE2Usd
940+ "METRIC_FEE3_ADVERTISER" -> Right MetricFEE3Advertiser
941+ "METRIC_FEE3_PARTNER" -> Right MetricFEE3Partner
942+ "METRIC_FEE3_USD" -> Right MetricFEE3Usd
943+ "METRIC_FEE4_ADVERTISER" -> Right MetricFEE4Advertiser
944+ "METRIC_FEE4_PARTNER" -> Right MetricFEE4Partner
945+ "METRIC_FEE4_USD" -> Right MetricFEE4Usd
946+ "METRIC_FEE5_ADVERTISER" -> Right MetricFEE5Advertiser
947+ "METRIC_FEE5_PARTNER" -> Right MetricFEE5Partner
948+ "METRIC_FEE5_USD" -> Right MetricFEE5Usd
949+ "METRIC_FEE6_ADVERTISER" -> Right MetricFEE6Advertiser
950+ "METRIC_FEE6_PARTNER" -> Right MetricFEE6Partner
951+ "METRIC_FEE6_USD" -> Right MetricFEE6Usd
952+ "METRIC_FEE7_ADVERTISER" -> Right MetricFEE7Advertiser
953+ "METRIC_FEE7_PARTNER" -> Right MetricFEE7Partner
954+ "METRIC_FEE7_USD" -> Right MetricFEE7Usd
955+ "METRIC_FEE8_ADVERTISER" -> Right MetricFEE8Advertiser
956+ "METRIC_FEE8_PARTNER" -> Right MetricFEE8Partner
957+ "METRIC_FEE8_USD" -> Right MetricFEE8Usd
958+ "METRIC_FEE9_ADVERTISER" -> Right MetricFEE9Advertiser
959+ "METRIC_FEE9_PARTNER" -> Right MetricFEE9Partner
960+ "METRIC_FEE9_USD" -> Right MetricFEE9Usd
961+ "METRIC_IMPRESSIONS" -> Right MetricImpressions
962+ "METRIC_IMPRESSIONS_TO_CONVERSION_RATE" -> Right MetricImpressionsToConversionRate
963+ "METRIC_LAST_CLICKS" -> Right MetricLastClicks
964+ "METRIC_LAST_IMPRESSIONS" -> Right MetricLastImpressions
965+ "METRIC_MEDIA_COST_ADVERTISER" -> Right MetricMediaCostAdvertiser
966+ "METRIC_MEDIA_COST_ECPAPC_ADVERTISER" -> Right MetricMediaCostEcpapcAdvertiser
967+ "METRIC_MEDIA_COST_ECPAPC_PARTNER" -> Right MetricMediaCostEcpapcPartner
968+ "METRIC_MEDIA_COST_ECPAPC_USD" -> Right MetricMediaCostEcpapcUsd
969+ "METRIC_MEDIA_COST_ECPAPV_ADVERTISER" -> Right MetricMediaCostEcpapvAdvertiser
970+ "METRIC_MEDIA_COST_ECPAPV_PARTNER" -> Right MetricMediaCostEcpapvPartner
971+ "METRIC_MEDIA_COST_ECPAPV_USD" -> Right MetricMediaCostEcpapvUsd
972+ "METRIC_MEDIA_COST_ECPA_ADVERTISER" -> Right MetricMediaCostEcpaAdvertiser
973+ "METRIC_MEDIA_COST_ECPA_PARTNER" -> Right MetricMediaCostEcpaPartner
974+ "METRIC_MEDIA_COST_ECPA_USD" -> Right MetricMediaCostEcpaUsd
975+ "METRIC_MEDIA_COST_ECPCV_ADVERTISER" -> Right MetricMediaCostEcpcvAdvertiser
976+ "METRIC_MEDIA_COST_ECPCV_PARTNER" -> Right MetricMediaCostEcpcvPartner
977+ "METRIC_MEDIA_COST_ECPCV_USD" -> Right MetricMediaCostEcpcvUsd
978+ "METRIC_MEDIA_COST_ECPC_ADVERTISER" -> Right MetricMediaCostEcpcAdvertiser
979+ "METRIC_MEDIA_COST_ECPC_PARTNER" -> Right MetricMediaCostEcpcPartner
980+ "METRIC_MEDIA_COST_ECPC_USD" -> Right MetricMediaCostEcpcUsd
981+ "METRIC_MEDIA_COST_ECPM_ADVERTISER" -> Right MetricMediaCostEcpmAdvertiser
982+ "METRIC_MEDIA_COST_ECPM_PARTNER" -> Right MetricMediaCostEcpmPartner
983+ "METRIC_MEDIA_COST_ECPM_USD" -> Right MetricMediaCostEcpmUsd
984+ "METRIC_MEDIA_COST_PARTNER" -> Right MetricMediaCostPartner
985+ "METRIC_MEDIA_COST_USD" -> Right MetricMediaCostUsd
986+ "METRIC_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" -> Right MetricMediaCostViewableEcpmAdvertiser
987+ "METRIC_MEDIA_COST_VIEWABLE_ECPM_PARTNER" -> Right MetricMediaCostViewableEcpmPartner
988+ "METRIC_MEDIA_COST_VIEWABLE_ECPM_USD" -> Right MetricMediaCostViewableEcpmUsd
989+ "METRIC_MEDIA_FEE1_ADVERTISER" -> Right MetricMediaFEE1Advertiser
990+ "METRIC_MEDIA_FEE1_PARTNER" -> Right MetricMediaFEE1Partner
991+ "METRIC_MEDIA_FEE1_USD" -> Right MetricMediaFEE1Usd
992+ "METRIC_MEDIA_FEE2_ADVERTISER" -> Right MetricMediaFEE2Advertiser
993+ "METRIC_MEDIA_FEE2_PARTNER" -> Right MetricMediaFEE2Partner
994+ "METRIC_MEDIA_FEE2_USD" -> Right MetricMediaFEE2Usd
995+ "METRIC_MEDIA_FEE3_ADVERTISER" -> Right MetricMediaFEE3Advertiser
996+ "METRIC_MEDIA_FEE3_PARTNER" -> Right MetricMediaFEE3Partner
997+ "METRIC_MEDIA_FEE3_USD" -> Right MetricMediaFEE3Usd
998+ "METRIC_MEDIA_FEE4_ADVERTISER" -> Right MetricMediaFEE4Advertiser
999+ "METRIC_MEDIA_FEE4_PARTNER" -> Right MetricMediaFEE4Partner
1000+ "METRIC_MEDIA_FEE4_USD" -> Right MetricMediaFEE4Usd
1001+ "METRIC_MEDIA_FEE5_ADVERTISER" -> Right MetricMediaFEE5Advertiser
1002+ "METRIC_MEDIA_FEE5_PARTNER" -> Right MetricMediaFEE5Partner
1003+ "METRIC_MEDIA_FEE5_USD" -> Right MetricMediaFEE5Usd
1004+ "METRIC_PIXEL_LOADS" -> Right MetricPixelLoads
1005+ "METRIC_PLATFORM_FEE_ADVERTISER" -> Right MetricPlatformFeeAdvertiser
1006+ "METRIC_PLATFORM_FEE_PARTNER" -> Right MetricPlatformFeePartner
1007+ "METRIC_PLATFORM_FEE_USD" -> Right MetricPlatformFeeUsd
1008+ "METRIC_POST_CLICK_DFA_REVENUE" -> Right MetricPostClickDfaRevenue
1009+ "METRIC_POST_VIEW_DFA_REVENUE" -> Right MetricPostViewDfaRevenue
1010+ "METRIC_PROFIT_ADVERTISER" -> Right MetricProfitAdvertiser
1011+ "METRIC_PROFIT_ECPAPC_ADVERTISER" -> Right MetricProfitEcpapcAdvertiser
1012+ "METRIC_PROFIT_ECPAPC_PARTNER" -> Right MetricProfitEcpapcPartner
1013+ "METRIC_PROFIT_ECPAPC_USD" -> Right MetricProfitEcpapcUsd
1014+ "METRIC_PROFIT_ECPAPV_ADVERTISER" -> Right MetricProfitEcpapvAdvertiser
1015+ "METRIC_PROFIT_ECPAPV_PARTNER" -> Right MetricProfitEcpapvPartner
1016+ "METRIC_PROFIT_ECPAPV_USD" -> Right MetricProfitEcpapvUsd
1017+ "METRIC_PROFIT_ECPA_ADVERTISER" -> Right MetricProfitEcpaAdvertiser
1018+ "METRIC_PROFIT_ECPA_PARTNER" -> Right MetricProfitEcpaPartner
1019+ "METRIC_PROFIT_ECPA_USD" -> Right MetricProfitEcpaUsd
1020+ "METRIC_PROFIT_ECPC_ADVERTISER" -> Right MetricProfitEcpcAdvertiser
1021+ "METRIC_PROFIT_ECPC_PARTNER" -> Right MetricProfitEcpcPartner
1022+ "METRIC_PROFIT_ECPC_USD" -> Right MetricProfitEcpcUsd
1023+ "METRIC_PROFIT_ECPM_ADVERTISER" -> Right MetricProfitEcpmAdvertiser
1024+ "METRIC_PROFIT_ECPM_PARTNER" -> Right MetricProfitEcpmPartner
1025+ "METRIC_PROFIT_ECPM_USD" -> Right MetricProfitEcpmUsd
1026+ "METRIC_PROFIT_MARGIN" -> Right MetricProfitMargin
1027+ "METRIC_PROFIT_PARTNER" -> Right MetricProfitPartner
1028+ "METRIC_PROFIT_USD" -> Right MetricProfitUsd
1029+ "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER" -> Right MetricProfitViewableEcpmAdvertiser
1030+ "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER" -> Right MetricProfitViewableEcpmPartner
1031+ "METRIC_PROFIT_VIEWABLE_ECPM_USD" -> Right MetricProfitViewableEcpmUsd
1032+ "METRIC_REVENUE_ADVERTISER" -> Right MetricRevenueAdvertiser
1033+ "METRIC_REVENUE_ECPAPC_ADVERTISER" -> Right MetricRevenueEcpapcAdvertiser
1034+ "METRIC_REVENUE_ECPAPC_PARTNER" -> Right MetricRevenueEcpapcPartner
1035+ "METRIC_REVENUE_ECPAPC_USD" -> Right MetricRevenueEcpapcUsd
1036+ "METRIC_REVENUE_ECPAPV_ADVERTISER" -> Right MetricRevenueEcpapvAdvertiser
1037+ "METRIC_REVENUE_ECPAPV_PARTNER" -> Right MetricRevenueEcpapvPartner
1038+ "METRIC_REVENUE_ECPAPV_USD" -> Right MetricRevenueEcpapvUsd
1039+ "METRIC_REVENUE_ECPA_ADVERTISER" -> Right MetricRevenueEcpaAdvertiser
1040+ "METRIC_REVENUE_ECPA_PARTNER" -> Right MetricRevenueEcpaPartner
1041+ "METRIC_REVENUE_ECPA_USD" -> Right MetricRevenueEcpaUsd
1042+ "METRIC_REVENUE_ECPCV_ADVERTISER" -> Right MetricRevenueEcpcvAdvertiser
1043+ "METRIC_REVENUE_ECPCV_PARTNER" -> Right MetricRevenueEcpcvPartner
1044+ "METRIC_REVENUE_ECPCV_USD" -> Right MetricRevenueEcpcvUsd
1045+ "METRIC_REVENUE_ECPC_ADVERTISER" -> Right MetricRevenueEcpcAdvertiser
1046+ "METRIC_REVENUE_ECPC_PARTNER" -> Right MetricRevenueEcpcPartner
1047+ "METRIC_REVENUE_ECPC_USD" -> Right MetricRevenueEcpcUsd
1048+ "METRIC_REVENUE_ECPM_ADVERTISER" -> Right MetricRevenueEcpmAdvertiser
1049+ "METRIC_REVENUE_ECPM_PARTNER" -> Right MetricRevenueEcpmPartner
1050+ "METRIC_REVENUE_ECPM_USD" -> Right MetricRevenueEcpmUsd
1051+ "METRIC_REVENUE_PARTNER" -> Right MetricRevenuePartner
1052+ "METRIC_REVENUE_USD" -> Right MetricRevenueUsd
1053+ "METRIC_REVENUE_VIEWABLE_ECPM_ADVERTISER" -> Right MetricRevenueViewableEcpmAdvertiser
1054+ "METRIC_REVENUE_VIEWABLE_ECPM_PARTNER" -> Right MetricRevenueViewableEcpmPartner
1055+ "METRIC_REVENUE_VIEWABLE_ECPM_USD" -> Right MetricRevenueViewableEcpmUsd
1056+ "METRIC_RICH_MEDIA_VIDEO_COMPLETIONS" -> Right MetricRichMediaVideoCompletions
1057+ "METRIC_RICH_MEDIA_VIDEO_FIRST_QUARTILE_COMPLETES" -> Right MetricRichMediaVideoFirstQuartileCompletes
1058+ "METRIC_RICH_MEDIA_VIDEO_FULL_SCREENS" -> Right MetricRichMediaVideoFullScreens
1059+ "METRIC_RICH_MEDIA_VIDEO_MIDPOINTS" -> Right MetricRichMediaVideoMidpoints
1060+ "METRIC_RICH_MEDIA_VIDEO_MUTES" -> Right MetricRichMediaVideoMutes
1061+ "METRIC_RICH_MEDIA_VIDEO_PAUSES" -> Right MetricRichMediaVideoPauses
1062+ "METRIC_RICH_MEDIA_VIDEO_PLAYS" -> Right MetricRichMediaVideoPlays
1063+ "METRIC_RICH_MEDIA_VIDEO_SKIPS" -> Right MetricRichMediaVideoSkips
1064+ "METRIC_RICH_MEDIA_VIDEO_THIRD_QUARTILE_COMPLETES" -> Right MetricRichMediaVideoThirdQuartileCompletes
1065+ "METRIC_TEA_TRUEVIEW_IMPRESSIONS" -> Right MetricTeaTrueviewImpressions
1066+ "METRIC_TEA_TRUEVIEW_UNIQUE_COOKIES" -> Right MetricTeaTrueviewUniqueCookies
1067+ "METRIC_TEA_TRUEVIEW_UNIQUE_PEOPLE" -> Right MetricTeaTrueviewUniquePeople
1068+ "METRIC_TOTAL_CONVERSIONS" -> Right MetricTotalConversions
1069+ "METRIC_TOTAL_MEDIA_COST_ADVERTISER" -> Right MetricTotalMediaCostAdvertiser
1070+ "METRIC_TOTAL_MEDIA_COST_ECPAPC_ADVERTISER" -> Right MetricTotalMediaCostEcpapcAdvertiser
1071+ "METRIC_TOTAL_MEDIA_COST_ECPAPC_PARTNER" -> Right MetricTotalMediaCostEcpapcPartner
1072+ "METRIC_TOTAL_MEDIA_COST_ECPAPC_USD" -> Right MetricTotalMediaCostEcpapcUsd
1073+ "METRIC_TOTAL_MEDIA_COST_ECPAPV_ADVERTISER" -> Right MetricTotalMediaCostEcpapvAdvertiser
1074+ "METRIC_TOTAL_MEDIA_COST_ECPAPV_PARTNER" -> Right MetricTotalMediaCostEcpapvPartner
1075+ "METRIC_TOTAL_MEDIA_COST_ECPAPV_USD" -> Right MetricTotalMediaCostEcpapvUsd
1076+ "METRIC_TOTAL_MEDIA_COST_ECPA_ADVERTISER" -> Right MetricTotalMediaCostEcpaAdvertiser
1077+ "METRIC_TOTAL_MEDIA_COST_ECPA_PARTNER" -> Right MetricTotalMediaCostEcpaPartner
1078+ "METRIC_TOTAL_MEDIA_COST_ECPA_USD" -> Right MetricTotalMediaCostEcpaUsd
1079+ "METRIC_TOTAL_MEDIA_COST_ECPCV_ADVERTISER" -> Right MetricTotalMediaCostEcpcvAdvertiser
1080+ "METRIC_TOTAL_MEDIA_COST_ECPCV_PARTNER" -> Right MetricTotalMediaCostEcpcvPartner
1081+ "METRIC_TOTAL_MEDIA_COST_ECPCV_USD" -> Right MetricTotalMediaCostEcpcvUsd
1082+ "METRIC_TOTAL_MEDIA_COST_ECPC_ADVERTISER" -> Right MetricTotalMediaCostEcpcAdvertiser
1083+ "METRIC_TOTAL_MEDIA_COST_ECPC_PARTNER" -> Right MetricTotalMediaCostEcpcPartner
1084+ "METRIC_TOTAL_MEDIA_COST_ECPC_USD" -> Right MetricTotalMediaCostEcpcUsd
1085+ "METRIC_TOTAL_MEDIA_COST_ECPM_ADVERTISER" -> Right MetricTotalMediaCostEcpmAdvertiser
1086+ "METRIC_TOTAL_MEDIA_COST_ECPM_PARTNER" -> Right MetricTotalMediaCostEcpmPartner
1087+ "METRIC_TOTAL_MEDIA_COST_ECPM_USD" -> Right MetricTotalMediaCostEcpmUsd
1088+ "METRIC_TOTAL_MEDIA_COST_PARTNER" -> Right MetricTotalMediaCostPartner
1089+ "METRIC_TOTAL_MEDIA_COST_USD" -> Right MetricTotalMediaCostUsd
1090+ "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER" -> Right MetricTotalMediaCostViewableEcpmAdvertiser
1091+ "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER" -> Right MetricTotalMediaCostViewableEcpmPartner
1092+ "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD" -> Right MetricTotalMediaCostViewableEcpmUsd
1093+ "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionCostManyPerViewAdvertiser
1094+ "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionCostManyPerViewPartner
1095+ "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD" -> Right MetricTrueviewConversionCostManyPerViewUsd
1096+ "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionCostOnePerViewAdvertiser
1097+ "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionCostOnePerViewPartner
1098+ "METRIC_TRUEVIEW_CONVERSION_COST_ONE_PER_VIEW_USD" -> Right MetricTrueviewConversionCostOnePerViewUsd
1099+ "METRIC_TRUEVIEW_CONVERSION_MANY_PER_VIEW" -> Right MetricTrueviewConversionManyPerView
1100+ "METRIC_TRUEVIEW_CONVERSION_ONE_PER_VIEW" -> Right MetricTrueviewConversionOnePerView
1101+ "METRIC_TRUEVIEW_CONVERSION_RATE_ONE_PER_VIEW" -> Right MetricTrueviewConversionRateOnePerView
1102+ "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionValueManyPerViewAdvertiser
1103+ "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionValueManyPerViewPartner
1104+ "METRIC_TRUEVIEW_CONVERSION_VALUE_MANY_PER_VIEW_USD" -> Right MetricTrueviewConversionValueManyPerViewUsd
1105+ "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_ADVERTISER" -> Right MetricTrueviewConversionValueOnePerViewAdvertiser
1106+ "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_PARTNER" -> Right MetricTrueviewConversionValueOnePerViewPartner
1107+ "METRIC_TRUEVIEW_CONVERSION_VALUE_ONE_PER_VIEW_USD" -> Right MetricTrueviewConversionValueOnePerViewUsd
1108+ "METRIC_TRUEVIEW_COST_CONVERSION_MANY_PER_VIEW_RATIO" -> Right MetricTrueviewCostConversionManyPerViewRatio
1109+ "METRIC_TRUEVIEW_COST_CONVERSION_ONE_PER_VIEW_RATIO" -> Right MetricTrueviewCostConversionOnePerViewRatio
1110+ "METRIC_TRUEVIEW_CPV_ADVERTISER" -> Right MetricTrueviewCpvAdvertiser
1111+ "METRIC_TRUEVIEW_CPV_PARTNER" -> Right MetricTrueviewCpvPartner
1112+ "METRIC_TRUEVIEW_CPV_USD" -> Right MetricTrueviewCpvUsd
1113+ "METRIC_TRUEVIEW_EARNED_LIKES" -> Right MetricTrueviewEarnedLikes
1114+ "METRIC_TRUEVIEW_EARNED_PLAYLIST_ADDITIONS" -> Right MetricTrueviewEarnedPlayListAdditions
1115+ "METRIC_TRUEVIEW_EARNED_SHARES" -> Right MetricTrueviewEarnedShares
1116+ "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS" -> Right MetricTrueviewEarnedSubscribers
1117+ "METRIC_TRUEVIEW_EARNED_VIEWS" -> Right MetricTrueviewEarnedViews
1118+ "METRIC_TRUEVIEW_IMPRESSION_SHARE" -> Right MetricTrueviewImpressionShare
1119+ "METRIC_TRUEVIEW_LOST_IS_BUDGET" -> Right MetricTrueviewLostIsBudget
1120+ "METRIC_TRUEVIEW_LOST_IS_RANK" -> Right MetricTrueviewLostIsRank
1121+ "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUE" -> Right MetricTrueviewTotalConversionValue
1122+ "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_ADVERTISER" -> Right MetricTrueviewTotalConversionValuesAdvertiser
1123+ "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_PARTNER" -> Right MetricTrueviewTotalConversionValuesPartner
1124+ "METRIC_TRUEVIEW_TOTAL_CONVERSION_VALUES_USD" -> Right MetricTrueviewTotalConversionValuesUsd
1125+ "METRIC_TRUEVIEW_UNIQUE_VIEWERS" -> Right MetricTrueviewUniqueViewers
1126+ "METRIC_TRUEVIEW_VALUE_CONVERSION_MANY_PER_VIEW_RATIO" -> Right MetricTrueviewValueConversionManyPerViewRatio
1127+ "METRIC_TRUEVIEW_VALUE_CONVERSION_ONE_PER_VIEW_RATIO" -> Right MetricTrueviewValueConversionOnePerViewRatio
1128+ "METRIC_TRUEVIEW_VIEWS" -> Right MetricTrueviewViews
1129+ "METRIC_TRUEVIEW_VIEW_RATE" -> Right MetricTrueviewViewRate
1130+ "METRIC_TRUEVIEW_VIEW_THROUGH_CONVERSION" -> Right MetricTrueviewViewThroughConversion
1131+ "METRIC_UNIQUE_VISITORS_COOKIES" -> Right MetricUniqueVisitorsCookies
1132+ "METRIC_UNKNOWN" -> Right MetricUnknown
1133+ "METRIC_VIDEO_COMPANION_CLICKS" -> Right MetricVideoCompanionClicks
1134+ "METRIC_VIDEO_COMPANION_IMPRESSIONS" -> Right MetricVideoCompanionImpressions
1135+ "METRIC_VIDEO_COMPLETION_RATE" -> Right MetricVideoCompletionRate
1136+ x -> Left ("Unable to parse ParametersMetricsItem from: " <> x)
1137+
1138+instance ToHttpApiData ParametersMetricsItem where
1139+ toQueryParam = \case
11401140 MetricBidRequests -> "METRIC_BID_REQUESTS"
11411141 MetricBillableCostAdvertiser -> "METRIC_BILLABLE_COST_ADVERTISER"
11421142 MetricBillableCostPartner -> "METRIC_BILLABLE_COST_PARTNER"
@@ -1434,18 +1434,18 @@ data QueryScheduleFrequency
14341434
14351435instance Hashable QueryScheduleFrequency
14361436
1437−instance FromText QueryScheduleFrequency where
1438− fromText = \case
1439− "DAILY" -> Just Daily
1440− "MONTHLY" -> Just Monthly
1441− "ONE_TIME" -> Just OneTime
1442− "QUARTERLY" -> Just Quarterly
1443− "SEMI_MONTHLY" -> Just SemiMonthly
1444− "WEEKLY" -> Just Weekly
1445− _ -> Nothing
1446−
1447−instance ToText QueryScheduleFrequency where
1448− toText = \case
1437+instance FromHttpApiData QueryScheduleFrequency where
1438+ parseQueryParam = \case
1439+ "DAILY" -> Right Daily
1440+ "MONTHLY" -> Right Monthly
1441+ "ONE_TIME" -> Right OneTime
1442+ "QUARTERLY" -> Right Quarterly
1443+ "SEMI_MONTHLY" -> Right SemiMonthly
1444+ "WEEKLY" -> Right Weekly
1445+ x -> Left ("Unable to parse QueryScheduleFrequency from: " <> x)
1446+
1447+instance ToHttpApiData QueryScheduleFrequency where
1448+ toQueryParam = \case
14491449 Daily -> "DAILY"
14501450 Monthly -> "MONTHLY"
14511451 OneTime -> "ONE_TIME"
@@ -1470,14 +1470,14 @@ data DownloadLineItemsRequestFileSpec
14701470
14711471instance Hashable DownloadLineItemsRequestFileSpec
14721472
1473−instance FromText DownloadLineItemsRequestFileSpec where
1474− fromText = \case
1475− "EWF" -> Just Ewf
1476− "SDF" -> Just Sdf
1477− _ -> Nothing
1473+instance FromHttpApiData DownloadLineItemsRequestFileSpec where
1474+ parseQueryParam = \case
1475+ "EWF" -> Right Ewf
1476+ "SDF" -> Right Sdf
1477+ x -> Left ("Unable to parse DownloadLineItemsRequestFileSpec from: " <> x)
14781478
1479−instance ToText DownloadLineItemsRequestFileSpec where
1480− toText = \case
1479+instance ToHttpApiData DownloadLineItemsRequestFileSpec where
1480+ toQueryParam = \case
14811481 Ewf -> "EWF"
14821482 Sdf -> "SDF"
14831483
@@ -1495,13 +1495,13 @@ data UploadLineItemsRequestFormat
14951495
14961496instance Hashable UploadLineItemsRequestFormat
14971497
1498−instance FromText UploadLineItemsRequestFormat where
1499− fromText = \case
1500− "CSV" -> Just ULIRFCSV
1501− _ -> Nothing
1498+instance FromHttpApiData UploadLineItemsRequestFormat where
1499+ parseQueryParam = \case
1500+ "CSV" -> Right ULIRFCSV
1501+ x -> Left ("Unable to parse UploadLineItemsRequestFormat from: " <> x)
15021502
1503−instance ToText UploadLineItemsRequestFormat where
1504− toText = \case
1503+instance ToHttpApiData UploadLineItemsRequestFormat where
1504+ toQueryParam = \case
15051505 ULIRFCSV -> "CSV"
15061506
15071507instance FromJSON UploadLineItemsRequestFormat where
@@ -1694,101 +1694,101 @@ data FilterPairType
16941694
16951695instance Hashable FilterPairType
16961696
1697−instance FromText FilterPairType where
1698− fromText = \case
1699− "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY" -> Just FilterActiveViewExpectedViewability
1700− "FILTER_ACTIVITY_ID" -> Just FilterActivityId
1701− "FILTER_ADVERTISER" -> Just FilterAdvertiser
1702− "FILTER_ADVERTISER_CURRENCY" -> Just FilterAdvertiserCurrency
1703− "FILTER_ADVERTISER_TIMEZONE" -> Just FilterAdvertiserTimezone
1704− "FILTER_AD_POSITION" -> Just FilterAdPosition
1705− "FILTER_AGE" -> Just FilterAge
1706− "FILTER_BRANDSAFE_CHANNEL_ID" -> Just FilterBrandsafeChannelId
1707− "FILTER_BROWSER" -> Just FilterBrowser
1708− "FILTER_CAMPAIGN_DAILY_FREQUENCY" -> Just FilterCampaignDailyFrequency
1709− "FILTER_CARRIER" -> Just FilterCarrier
1710− "FILTER_CHANNEL_ID" -> Just FilterChannelId
1711− "FILTER_CITY" -> Just FilterCity
1712− "FILTER_CONVERSION_DELAY" -> Just FilterConversionDelay
1713− "FILTER_COUNTRY" -> Just FilterCountry
1714− "FILTER_CREATIVE_HEIGHT" -> Just FilterCreativeHeight
1715− "FILTER_CREATIVE_ID" -> Just FilterCreativeId
1716− "FILTER_CREATIVE_SIZE" -> Just FilterCreativeSize
1717− "FILTER_CREATIVE_TYPE" -> Just FilterCreativeType
1718− "FILTER_CREATIVE_WIDTH" -> Just FilterCreativeWidth
1719− "FILTER_DATA_PROVIDER" -> Just FilterDataProvider
1720− "FILTER_DATE" -> Just FilterDate
1721− "FILTER_DAY_OF_WEEK" -> Just FilterDayOfWeek
1722− "FILTER_DFP_ORDER_ID" -> Just FilterDfpOrderId
1723− "FILTER_DMA" -> Just FilterDma
1724− "FILTER_EXCHANGE_ID" -> Just FilterExchangeId
1725− "FILTER_FLOODLIGHT_PIXEL_ID" -> Just FilterFloodlightPixelId
1726− "FILTER_GENDER" -> Just FilterGender
1727− "FILTER_INSERTION_ORDER" -> Just FilterInsertionOrder
1728− "FILTER_INVENTORY_FORMAT" -> Just FilterInventoryFormat
1729− "FILTER_INVENTORY_SOURCE" -> Just FilterInventorySource
1730− "FILTER_INVENTORY_SOURCE_TYPE" -> Just FilterInventorySourceType
1731− "FILTER_KEYWORD" -> Just FilterKeyword
1732− "FILTER_LINE_ITEM" -> Just FilterLineItem
1733− "FILTER_LINE_ITEM_DAILY_FREQUENCY" -> Just FilterLineItemDailyFrequency
1734− "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" -> Just FilterLineItemLifetimeFrequency
1735− "FILTER_LINE_ITEM_TYPE" -> Just FilterLineItemType
1736− "FILTER_MOBILE_DEVICE_MAKE" -> Just FilterMobileDeviceMake
1737− "FILTER_MOBILE_DEVICE_MAKE_MODEL" -> Just FilterMobileDeviceMakeModel
1738− "FILTER_MOBILE_DEVICE_TYPE" -> Just FilterMobileDeviceType
1739− "FILTER_MOBILE_GEO" -> Just FilterMobileGeo
1740− "FILTER_MONTH" -> Just FilterMonth
1741− "FILTER_MRAID_SUPPORT" -> Just FilterMraidSupport
1742− "FILTER_NIELSEN_AGE" -> Just FilterNielsenAge
1743− "FILTER_NIELSEN_COUNTRY_CODE" -> Just FilterNielsenCountryCode
1744− "FILTER_NIELSEN_DEVICE_ID" -> Just FilterNielsenDeviceId
1745− "FILTER_NIELSEN_GENDER" -> Just FilterNielsenGender
1746− "FILTER_ORDER_ID" -> Just FilterOrderId
1747− "FILTER_OS" -> Just FilterOS
1748− "FILTER_PAGE_CATEGORY" -> Just FilterPageCategory
1749− "FILTER_PAGE_LAYOUT" -> Just FilterPageLayout
1750− "FILTER_PARTNER" -> Just FilterPartner
1751− "FILTER_PARTNER_CURRENCY" -> Just FilterPartnerCurrency
1752− "FILTER_PUBLIC_INVENTORY" -> Just FilterPublicInventory
1753− "FILTER_QUARTER" -> Just FilterQuarter
1754− "FILTER_REGION" -> Just FilterRegion
1755− "FILTER_REGULAR_CHANNEL_ID" -> Just FilterRegularChannelId
1756− "FILTER_SITE_ID" -> Just FilterSiteId
1757− "FILTER_SITE_LANGUAGE" -> Just FilterSiteLanguage
1758− "FILTER_TARGETED_USER_LIST" -> Just FilterTargetedUserList
1759− "FILTER_TIME_OF_DAY" -> Just FilterTimeOfDay
1760− "FILTER_TRUEVIEW_AD_GROUP_AD_ID" -> Just FilterTrueviewAdGroupAdId
1761− "FILTER_TRUEVIEW_AD_GROUP_ID" -> Just FilterTrueviewAdGroupId
1762− "FILTER_TRUEVIEW_AGE" -> Just FilterTrueviewAge
1763− "FILTER_TRUEVIEW_CONVERSION_TYPE" -> Just FilterTrueviewConversionType
1764− "FILTER_TRUEVIEW_GENDER" -> Just FilterTrueviewGender
1765− "FILTER_TRUEVIEW_INTEREST" -> Just FilterTrueviewInterest
1766− "FILTER_TRUEVIEW_PARENTAL_STATUS" -> Just FilterTrueviewParentalStatus
1767− "FILTER_TRUEVIEW_REMARKETING_LIST" -> Just FilterTrueviewRemarketingList
1768− "FILTER_UNKNOWN" -> Just FilterUnknown
1769− "FILTER_USER_LIST" -> Just FilterUserList
1770− "FILTER_USER_LIST_FIRST_PARTY" -> Just FilterUserListFirstParty
1771− "FILTER_USER_LIST_THIRD_PARTY" -> Just FilterUserListThirdParty
1772− "FILTER_VIDEO_AD_POSITION_IN_STREAM" -> Just FilterVideoAdPositionInStream
1773− "FILTER_VIDEO_COMPANION_SIZE" -> Just FilterVideoCompanionSize
1774− "FILTER_VIDEO_COMPANION_TYPE" -> Just FilterVideoCompanionType
1775− "FILTER_VIDEO_CREATIVE_DURATION" -> Just FilterVideoCreativeDuration
1776− "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" -> Just FilterVideoCreativeDurationSkippable
1777− "FILTER_VIDEO_DURATION_SECONDS" -> Just FilterVideoDurationSeconds
1778− "FILTER_VIDEO_FORMAT_SUPPORT" -> Just FilterVideoFormatSupport
1779− "FILTER_VIDEO_INVENTORY_TYPE" -> Just FilterVideoInventoryType
1780− "FILTER_VIDEO_PLAYER_SIZE" -> Just FilterVideoPlayerSize
1781− "FILTER_VIDEO_RATING_TIER" -> Just FilterVideoRatingTier
1782− "FILTER_VIDEO_SKIPPABLE_SUPPORT" -> Just FilterVideoSkippableSupport
1783− "FILTER_VIDEO_VPAID_SUPPORT" -> Just FilterVideoVpaidSupport
1784− "FILTER_WEEK" -> Just FilterWeek
1785− "FILTER_YEAR" -> Just FilterYear
1786− "FILTER_YOUTUBE_VERTICAL" -> Just FilterYouTubeVertical
1787− "FILTER_ZIP_CODE" -> Just FilterZipCode
1788− _ -> Nothing
1789−
1790−instance ToText FilterPairType where
1791− toText = \case
1697+instance FromHttpApiData FilterPairType where
1698+ parseQueryParam = \case
1699+ "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY" -> Right FilterActiveViewExpectedViewability
1700+ "FILTER_ACTIVITY_ID" -> Right FilterActivityId
1701+ "FILTER_ADVERTISER" -> Right FilterAdvertiser
1702+ "FILTER_ADVERTISER_CURRENCY" -> Right FilterAdvertiserCurrency
1703+ "FILTER_ADVERTISER_TIMEZONE" -> Right FilterAdvertiserTimezone
1704+ "FILTER_AD_POSITION" -> Right FilterAdPosition
1705+ "FILTER_AGE" -> Right FilterAge
1706+ "FILTER_BRANDSAFE_CHANNEL_ID" -> Right FilterBrandsafeChannelId
1707+ "FILTER_BROWSER" -> Right FilterBrowser
1708+ "FILTER_CAMPAIGN_DAILY_FREQUENCY" -> Right FilterCampaignDailyFrequency
1709+ "FILTER_CARRIER" -> Right FilterCarrier
1710+ "FILTER_CHANNEL_ID" -> Right FilterChannelId
1711+ "FILTER_CITY" -> Right FilterCity
1712+ "FILTER_CONVERSION_DELAY" -> Right FilterConversionDelay
1713+ "FILTER_COUNTRY" -> Right FilterCountry
1714+ "FILTER_CREATIVE_HEIGHT" -> Right FilterCreativeHeight
1715+ "FILTER_CREATIVE_ID" -> Right FilterCreativeId
1716+ "FILTER_CREATIVE_SIZE" -> Right FilterCreativeSize
1717+ "FILTER_CREATIVE_TYPE" -> Right FilterCreativeType
1718+ "FILTER_CREATIVE_WIDTH" -> Right FilterCreativeWidth
1719+ "FILTER_DATA_PROVIDER" -> Right FilterDataProvider
1720+ "FILTER_DATE" -> Right FilterDate
1721+ "FILTER_DAY_OF_WEEK" -> Right FilterDayOfWeek
1722+ "FILTER_DFP_ORDER_ID" -> Right FilterDfpOrderId
1723+ "FILTER_DMA" -> Right FilterDma
1724+ "FILTER_EXCHANGE_ID" -> Right FilterExchangeId
1725+ "FILTER_FLOODLIGHT_PIXEL_ID" -> Right FilterFloodlightPixelId
1726+ "FILTER_GENDER" -> Right FilterGender
1727+ "FILTER_INSERTION_ORDER" -> Right FilterInsertionOrder
1728+ "FILTER_INVENTORY_FORMAT" -> Right FilterInventoryFormat
1729+ "FILTER_INVENTORY_SOURCE" -> Right FilterInventorySource
1730+ "FILTER_INVENTORY_SOURCE_TYPE" -> Right FilterInventorySourceType
1731+ "FILTER_KEYWORD" -> Right FilterKeyword
1732+ "FILTER_LINE_ITEM" -> Right FilterLineItem
1733+ "FILTER_LINE_ITEM_DAILY_FREQUENCY" -> Right FilterLineItemDailyFrequency
1734+ "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" -> Right FilterLineItemLifetimeFrequency
1735+ "FILTER_LINE_ITEM_TYPE" -> Right FilterLineItemType
1736+ "FILTER_MOBILE_DEVICE_MAKE" -> Right FilterMobileDeviceMake
1737+ "FILTER_MOBILE_DEVICE_MAKE_MODEL" -> Right FilterMobileDeviceMakeModel
1738+ "FILTER_MOBILE_DEVICE_TYPE" -> Right FilterMobileDeviceType
1739+ "FILTER_MOBILE_GEO" -> Right FilterMobileGeo
1740+ "FILTER_MONTH" -> Right FilterMonth
1741+ "FILTER_MRAID_SUPPORT" -> Right FilterMraidSupport
1742+ "FILTER_NIELSEN_AGE" -> Right FilterNielsenAge
1743+ "FILTER_NIELSEN_COUNTRY_CODE" -> Right FilterNielsenCountryCode
1744+ "FILTER_NIELSEN_DEVICE_ID" -> Right FilterNielsenDeviceId
1745+ "FILTER_NIELSEN_GENDER" -> Right FilterNielsenGender
1746+ "FILTER_ORDER_ID" -> Right FilterOrderId
1747+ "FILTER_OS" -> Right FilterOS
1748+ "FILTER_PAGE_CATEGORY" -> Right FilterPageCategory
1749+ "FILTER_PAGE_LAYOUT" -> Right FilterPageLayout
1750+ "FILTER_PARTNER" -> Right FilterPartner
1751+ "FILTER_PARTNER_CURRENCY" -> Right FilterPartnerCurrency
1752+ "FILTER_PUBLIC_INVENTORY" -> Right FilterPublicInventory
1753+ "FILTER_QUARTER" -> Right FilterQuarter
1754+ "FILTER_REGION" -> Right FilterRegion
1755+ "FILTER_REGULAR_CHANNEL_ID" -> Right FilterRegularChannelId
1756+ "FILTER_SITE_ID" -> Right FilterSiteId
1757+ "FILTER_SITE_LANGUAGE" -> Right FilterSiteLanguage
1758+ "FILTER_TARGETED_USER_LIST" -> Right FilterTargetedUserList
1759+ "FILTER_TIME_OF_DAY" -> Right FilterTimeOfDay
1760+ "FILTER_TRUEVIEW_AD_GROUP_AD_ID" -> Right FilterTrueviewAdGroupAdId
1761+ "FILTER_TRUEVIEW_AD_GROUP_ID" -> Right FilterTrueviewAdGroupId
1762+ "FILTER_TRUEVIEW_AGE" -> Right FilterTrueviewAge
1763+ "FILTER_TRUEVIEW_CONVERSION_TYPE" -> Right FilterTrueviewConversionType
1764+ "FILTER_TRUEVIEW_GENDER" -> Right FilterTrueviewGender
1765+ "FILTER_TRUEVIEW_INTEREST" -> Right FilterTrueviewInterest
1766+ "FILTER_TRUEVIEW_PARENTAL_STATUS" -> Right FilterTrueviewParentalStatus
1767+ "FILTER_TRUEVIEW_REMARKETING_LIST" -> Right FilterTrueviewRemarketingList
1768+ "FILTER_UNKNOWN" -> Right FilterUnknown
1769+ "FILTER_USER_LIST" -> Right FilterUserList
1770+ "FILTER_USER_LIST_FIRST_PARTY" -> Right FilterUserListFirstParty
1771+ "FILTER_USER_LIST_THIRD_PARTY" -> Right FilterUserListThirdParty
1772+ "FILTER_VIDEO_AD_POSITION_IN_STREAM" -> Right FilterVideoAdPositionInStream
1773+ "FILTER_VIDEO_COMPANION_SIZE" -> Right FilterVideoCompanionSize
1774+ "FILTER_VIDEO_COMPANION_TYPE" -> Right FilterVideoCompanionType
1775+ "FILTER_VIDEO_CREATIVE_DURATION" -> Right FilterVideoCreativeDuration
1776+ "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" -> Right FilterVideoCreativeDurationSkippable
1777+ "FILTER_VIDEO_DURATION_SECONDS" -> Right FilterVideoDurationSeconds
1778+ "FILTER_VIDEO_FORMAT_SUPPORT" -> Right FilterVideoFormatSupport
1779+ "FILTER_VIDEO_INVENTORY_TYPE" -> Right FilterVideoInventoryType
1780+ "FILTER_VIDEO_PLAYER_SIZE" -> Right FilterVideoPlayerSize
1781+ "FILTER_VIDEO_RATING_TIER" -> Right FilterVideoRatingTier
1782+ "FILTER_VIDEO_SKIPPABLE_SUPPORT" -> Right FilterVideoSkippableSupport
1783+ "FILTER_VIDEO_VPAID_SUPPORT" -> Right FilterVideoVpaidSupport
1784+ "FILTER_WEEK" -> Right FilterWeek
1785+ "FILTER_YEAR" -> Right FilterYear
1786+ "FILTER_YOUTUBE_VERTICAL" -> Right FilterYouTubeVertical
1787+ "FILTER_ZIP_CODE" -> Right FilterZipCode
1788+ x -> Left ("Unable to parse FilterPairType from: " <> x)
1789+
1790+instance ToHttpApiData FilterPairType where
1791+ toQueryParam = \case
17921792 FilterActiveViewExpectedViewability -> "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY"
17931793 FilterActivityId -> "FILTER_ACTIVITY_ID"
17941794 FilterAdvertiser -> "FILTER_ADVERTISER"
@@ -1927,30 +1927,30 @@ data RunQueryRequestDataRange
19271927
19281928instance Hashable RunQueryRequestDataRange
19291929
1930−instance FromText RunQueryRequestDataRange where
1931− fromText = \case
1932− "ALL_TIME" -> Just RQRDRAllTime
1933− "CURRENT_DAY" -> Just RQRDRCurrentDay
1934− "CUSTOM_DATES" -> Just RQRDRCustomDates
1935− "LAST_14_DAYS" -> Just RQRDRLast14Days
1936− "LAST_30_DAYS" -> Just RQRDRLast30Days
1937− "LAST_365_DAYS" -> Just RQRDRLast365Days
1938− "LAST_7_DAYS" -> Just RQRDRLast7Days
1939− "LAST_90_DAYS" -> Just RQRDRLast90Days
1940− "MONTH_TO_DATE" -> Just RQRDRMonthToDate
1941− "PREVIOUS_DAY" -> Just RQRDRPreviousDay
1942− "PREVIOUS_HALF_MONTH" -> Just RQRDRPreviousHalfMonth
1943− "PREVIOUS_MONTH" -> Just RQRDRPreviousMonth
1944− "PREVIOUS_QUARTER" -> Just RQRDRPreviousQuarter
1945− "PREVIOUS_WEEK" -> Just RQRDRPreviousWeek
1946− "PREVIOUS_YEAR" -> Just RQRDRPreviousYear
1947− "QUARTER_TO_DATE" -> Just RQRDRQuarterToDate
1948− "WEEK_TO_DATE" -> Just RQRDRWeekToDate
1949− "YEAR_TO_DATE" -> Just RQRDRYearToDate
1950− _ -> Nothing
1951−
1952−instance ToText RunQueryRequestDataRange where
1953− toText = \case
1930+instance FromHttpApiData RunQueryRequestDataRange where
1931+ parseQueryParam = \case
1932+ "ALL_TIME" -> Right RQRDRAllTime
1933+ "CURRENT_DAY" -> Right RQRDRCurrentDay
1934+ "CUSTOM_DATES" -> Right RQRDRCustomDates
1935+ "LAST_14_DAYS" -> Right RQRDRLast14Days
1936+ "LAST_30_DAYS" -> Right RQRDRLast30Days
1937+ "LAST_365_DAYS" -> Right RQRDRLast365Days
1938+ "LAST_7_DAYS" -> Right RQRDRLast7Days
1939+ "LAST_90_DAYS" -> Right RQRDRLast90Days
1940+ "MONTH_TO_DATE" -> Right RQRDRMonthToDate
1941+ "PREVIOUS_DAY" -> Right RQRDRPreviousDay
1942+ "PREVIOUS_HALF_MONTH" -> Right RQRDRPreviousHalfMonth
1943+ "PREVIOUS_MONTH" -> Right RQRDRPreviousMonth
1944+ "PREVIOUS_QUARTER" -> Right RQRDRPreviousQuarter
1945+ "PREVIOUS_WEEK" -> Right RQRDRPreviousWeek
1946+ "PREVIOUS_YEAR" -> Right RQRDRPreviousYear
1947+ "QUARTER_TO_DATE" -> Right RQRDRQuarterToDate
1948+ "WEEK_TO_DATE" -> Right RQRDRWeekToDate
1949+ "YEAR_TO_DATE" -> Right RQRDRYearToDate
1950+ x -> Left ("Unable to parse RunQueryRequestDataRange from: " <> x)
1951+
1952+instance ToHttpApiData RunQueryRequestDataRange where
1953+ toQueryParam = \case
19541954 RQRDRAllTime -> "ALL_TIME"
19551955 RQRDRCurrentDay -> "CURRENT_DAY"
19561956 RQRDRCustomDates -> "CUSTOM_DATES"
@@ -1988,15 +1988,15 @@ data ReportStatusState
19881988
19891989instance Hashable ReportStatusState
19901990
1991−instance FromText ReportStatusState where
1992− fromText = \case
1993− "DONE" -> Just Done
1994− "FAILED" -> Just Failed
1995− "RUNNING" -> Just Running
1996− _ -> Nothing
1991+instance FromHttpApiData ReportStatusState where
1992+ parseQueryParam = \case
1993+ "DONE" -> Right Done
1994+ "FAILED" -> Right Failed
1995+ "RUNNING" -> Right Running
1996+ x -> Left ("Unable to parse ReportStatusState from: " <> x)
19971997
1998−instance ToText ReportStatusState where
1999− toText = \case
1998+instance ToHttpApiData ReportStatusState where
1999+ toQueryParam = \case
20002000 Done -> "DONE"
20012001 Failed -> "FAILED"
20022002 Running -> "RUNNING"
@@ -2190,101 +2190,101 @@ data ParametersGroupBysItem
21902190
21912191instance Hashable ParametersGroupBysItem
21922192
2193−instance FromText ParametersGroupBysItem where
2194− fromText = \case
2195− "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY" -> Just PGBIFilterActiveViewExpectedViewability
2196− "FILTER_ACTIVITY_ID" -> Just PGBIFilterActivityId
2197− "FILTER_ADVERTISER" -> Just PGBIFilterAdvertiser
2198− "FILTER_ADVERTISER_CURRENCY" -> Just PGBIFilterAdvertiserCurrency
2199− "FILTER_ADVERTISER_TIMEZONE" -> Just PGBIFilterAdvertiserTimezone
2200− "FILTER_AD_POSITION" -> Just PGBIFilterAdPosition
2201− "FILTER_AGE" -> Just PGBIFilterAge
2202− "FILTER_BRANDSAFE_CHANNEL_ID" -> Just PGBIFilterBrandsafeChannelId
2203− "FILTER_BROWSER" -> Just PGBIFilterBrowser
2204− "FILTER_CAMPAIGN_DAILY_FREQUENCY" -> Just PGBIFilterCampaignDailyFrequency
2205− "FILTER_CARRIER" -> Just PGBIFilterCarrier
2206− "FILTER_CHANNEL_ID" -> Just PGBIFilterChannelId
2207− "FILTER_CITY" -> Just PGBIFilterCity
2208− "FILTER_CONVERSION_DELAY" -> Just PGBIFilterConversionDelay
2209− "FILTER_COUNTRY" -> Just PGBIFilterCountry
2210− "FILTER_CREATIVE_HEIGHT" -> Just PGBIFilterCreativeHeight
2211− "FILTER_CREATIVE_ID" -> Just PGBIFilterCreativeId
2212− "FILTER_CREATIVE_SIZE" -> Just PGBIFilterCreativeSize
2213− "FILTER_CREATIVE_TYPE" -> Just PGBIFilterCreativeType
2214− "FILTER_CREATIVE_WIDTH" -> Just PGBIFilterCreativeWidth
2215− "FILTER_DATA_PROVIDER" -> Just PGBIFilterDataProvider
2216− "FILTER_DATE" -> Just PGBIFilterDate
2217− "FILTER_DAY_OF_WEEK" -> Just PGBIFilterDayOfWeek
2218− "FILTER_DFP_ORDER_ID" -> Just PGBIFilterDfpOrderId
2219− "FILTER_DMA" -> Just PGBIFilterDma
2220− "FILTER_EXCHANGE_ID" -> Just PGBIFilterExchangeId
2221− "FILTER_FLOODLIGHT_PIXEL_ID" -> Just PGBIFilterFloodlightPixelId
2222− "FILTER_GENDER" -> Just PGBIFilterGender
2223− "FILTER_INSERTION_ORDER" -> Just PGBIFilterInsertionOrder
2224− "FILTER_INVENTORY_FORMAT" -> Just PGBIFilterInventoryFormat
2225− "FILTER_INVENTORY_SOURCE" -> Just PGBIFilterInventorySource
2226− "FILTER_INVENTORY_SOURCE_TYPE" -> Just PGBIFilterInventorySourceType
2227− "FILTER_KEYWORD" -> Just PGBIFilterKeyword
2228− "FILTER_LINE_ITEM" -> Just PGBIFilterLineItem
2229− "FILTER_LINE_ITEM_DAILY_FREQUENCY" -> Just PGBIFilterLineItemDailyFrequency
2230− "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" -> Just PGBIFilterLineItemLifetimeFrequency
2231− "FILTER_LINE_ITEM_TYPE" -> Just PGBIFilterLineItemType
2232− "FILTER_MOBILE_DEVICE_MAKE" -> Just PGBIFilterMobileDeviceMake
2233− "FILTER_MOBILE_DEVICE_MAKE_MODEL" -> Just PGBIFilterMobileDeviceMakeModel
2234− "FILTER_MOBILE_DEVICE_TYPE" -> Just PGBIFilterMobileDeviceType
2235− "FILTER_MOBILE_GEO" -> Just PGBIFilterMobileGeo
2236− "FILTER_MONTH" -> Just PGBIFilterMonth
2237− "FILTER_MRAID_SUPPORT" -> Just PGBIFilterMraidSupport
2238− "FILTER_NIELSEN_AGE" -> Just PGBIFilterNielsenAge
2239− "FILTER_NIELSEN_COUNTRY_CODE" -> Just PGBIFilterNielsenCountryCode
2240− "FILTER_NIELSEN_DEVICE_ID" -> Just PGBIFilterNielsenDeviceId
2241− "FILTER_NIELSEN_GENDER" -> Just PGBIFilterNielsenGender
2242− "FILTER_ORDER_ID" -> Just PGBIFilterOrderId
2243− "FILTER_OS" -> Just PGBIFilterOS
2244− "FILTER_PAGE_CATEGORY" -> Just PGBIFilterPageCategory
2245− "FILTER_PAGE_LAYOUT" -> Just PGBIFilterPageLayout
2246− "FILTER_PARTNER" -> Just PGBIFilterPartner
2247− "FILTER_PARTNER_CURRENCY" -> Just PGBIFilterPartnerCurrency
2248− "FILTER_PUBLIC_INVENTORY" -> Just PGBIFilterPublicInventory
2249− "FILTER_QUARTER" -> Just PGBIFilterQuarter
2250− "FILTER_REGION" -> Just PGBIFilterRegion
2251− "FILTER_REGULAR_CHANNEL_ID" -> Just PGBIFilterRegularChannelId
2252− "FILTER_SITE_ID" -> Just PGBIFilterSiteId
2253− "FILTER_SITE_LANGUAGE" -> Just PGBIFilterSiteLanguage
2254− "FILTER_TARGETED_USER_LIST" -> Just PGBIFilterTargetedUserList
2255− "FILTER_TIME_OF_DAY" -> Just PGBIFilterTimeOfDay
2256− "FILTER_TRUEVIEW_AD_GROUP_AD_ID" -> Just PGBIFilterTrueviewAdGroupAdId
2257− "FILTER_TRUEVIEW_AD_GROUP_ID" -> Just PGBIFilterTrueviewAdGroupId
2258− "FILTER_TRUEVIEW_AGE" -> Just PGBIFilterTrueviewAge
2259− "FILTER_TRUEVIEW_CONVERSION_TYPE" -> Just PGBIFilterTrueviewConversionType
2260− "FILTER_TRUEVIEW_GENDER" -> Just PGBIFilterTrueviewGender
2261− "FILTER_TRUEVIEW_INTEREST" -> Just PGBIFilterTrueviewInterest
2262− "FILTER_TRUEVIEW_PARENTAL_STATUS" -> Just PGBIFilterTrueviewParentalStatus
2263− "FILTER_TRUEVIEW_REMARKETING_LIST" -> Just PGBIFilterTrueviewRemarketingList
2264− "FILTER_UNKNOWN" -> Just PGBIFilterUnknown
2265− "FILTER_USER_LIST" -> Just PGBIFilterUserList
2266− "FILTER_USER_LIST_FIRST_PARTY" -> Just PGBIFilterUserListFirstParty
2267− "FILTER_USER_LIST_THIRD_PARTY" -> Just PGBIFilterUserListThirdParty
2268− "FILTER_VIDEO_AD_POSITION_IN_STREAM" -> Just PGBIFilterVideoAdPositionInStream
2269− "FILTER_VIDEO_COMPANION_SIZE" -> Just PGBIFilterVideoCompanionSize
2270− "FILTER_VIDEO_COMPANION_TYPE" -> Just PGBIFilterVideoCompanionType
2271− "FILTER_VIDEO_CREATIVE_DURATION" -> Just PGBIFilterVideoCreativeDuration
2272− "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" -> Just PGBIFilterVideoCreativeDurationSkippable
2273− "FILTER_VIDEO_DURATION_SECONDS" -> Just PGBIFilterVideoDurationSeconds
2274− "FILTER_VIDEO_FORMAT_SUPPORT" -> Just PGBIFilterVideoFormatSupport
2275− "FILTER_VIDEO_INVENTORY_TYPE" -> Just PGBIFilterVideoInventoryType
2276− "FILTER_VIDEO_PLAYER_SIZE" -> Just PGBIFilterVideoPlayerSize
2277− "FILTER_VIDEO_RATING_TIER" -> Just PGBIFilterVideoRatingTier
2278− "FILTER_VIDEO_SKIPPABLE_SUPPORT" -> Just PGBIFilterVideoSkippableSupport
2279− "FILTER_VIDEO_VPAID_SUPPORT" -> Just PGBIFilterVideoVpaidSupport
2280− "FILTER_WEEK" -> Just PGBIFilterWeek
2281− "FILTER_YEAR" -> Just PGBIFilterYear
2282− "FILTER_YOUTUBE_VERTICAL" -> Just PGBIFilterYouTubeVertical
2283− "FILTER_ZIP_CODE" -> Just PGBIFilterZipCode
2284− _ -> Nothing
2285−
2286−instance ToText ParametersGroupBysItem where
2287− toText = \case
2193+instance FromHttpApiData ParametersGroupBysItem where
2194+ parseQueryParam = \case
2195+ "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY" -> Right PGBIFilterActiveViewExpectedViewability
2196+ "FILTER_ACTIVITY_ID" -> Right PGBIFilterActivityId
2197+ "FILTER_ADVERTISER" -> Right PGBIFilterAdvertiser
2198+ "FILTER_ADVERTISER_CURRENCY" -> Right PGBIFilterAdvertiserCurrency
2199+ "FILTER_ADVERTISER_TIMEZONE" -> Right PGBIFilterAdvertiserTimezone
2200+ "FILTER_AD_POSITION" -> Right PGBIFilterAdPosition
2201+ "FILTER_AGE" -> Right PGBIFilterAge
2202+ "FILTER_BRANDSAFE_CHANNEL_ID" -> Right PGBIFilterBrandsafeChannelId
2203+ "FILTER_BROWSER" -> Right PGBIFilterBrowser
2204+ "FILTER_CAMPAIGN_DAILY_FREQUENCY" -> Right PGBIFilterCampaignDailyFrequency
2205+ "FILTER_CARRIER" -> Right PGBIFilterCarrier
2206+ "FILTER_CHANNEL_ID" -> Right PGBIFilterChannelId
2207+ "FILTER_CITY" -> Right PGBIFilterCity
2208+ "FILTER_CONVERSION_DELAY" -> Right PGBIFilterConversionDelay
2209+ "FILTER_COUNTRY" -> Right PGBIFilterCountry
2210+ "FILTER_CREATIVE_HEIGHT" -> Right PGBIFilterCreativeHeight
2211+ "FILTER_CREATIVE_ID" -> Right PGBIFilterCreativeId
2212+ "FILTER_CREATIVE_SIZE" -> Right PGBIFilterCreativeSize
2213+ "FILTER_CREATIVE_TYPE" -> Right PGBIFilterCreativeType
2214+ "FILTER_CREATIVE_WIDTH" -> Right PGBIFilterCreativeWidth
2215+ "FILTER_DATA_PROVIDER" -> Right PGBIFilterDataProvider
2216+ "FILTER_DATE" -> Right PGBIFilterDate
2217+ "FILTER_DAY_OF_WEEK" -> Right PGBIFilterDayOfWeek
2218+ "FILTER_DFP_ORDER_ID" -> Right PGBIFilterDfpOrderId
2219+ "FILTER_DMA" -> Right PGBIFilterDma
2220+ "FILTER_EXCHANGE_ID" -> Right PGBIFilterExchangeId
2221+ "FILTER_FLOODLIGHT_PIXEL_ID" -> Right PGBIFilterFloodlightPixelId
2222+ "FILTER_GENDER" -> Right PGBIFilterGender
2223+ "FILTER_INSERTION_ORDER" -> Right PGBIFilterInsertionOrder
2224+ "FILTER_INVENTORY_FORMAT" -> Right PGBIFilterInventoryFormat
2225+ "FILTER_INVENTORY_SOURCE" -> Right PGBIFilterInventorySource
2226+ "FILTER_INVENTORY_SOURCE_TYPE" -> Right PGBIFilterInventorySourceType
2227+ "FILTER_KEYWORD" -> Right PGBIFilterKeyword
2228+ "FILTER_LINE_ITEM" -> Right PGBIFilterLineItem
2229+ "FILTER_LINE_ITEM_DAILY_FREQUENCY" -> Right PGBIFilterLineItemDailyFrequency
2230+ "FILTER_LINE_ITEM_LIFETIME_FREQUENCY" -> Right PGBIFilterLineItemLifetimeFrequency
2231+ "FILTER_LINE_ITEM_TYPE" -> Right PGBIFilterLineItemType
2232+ "FILTER_MOBILE_DEVICE_MAKE" -> Right PGBIFilterMobileDeviceMake
2233+ "FILTER_MOBILE_DEVICE_MAKE_MODEL" -> Right PGBIFilterMobileDeviceMakeModel
2234+ "FILTER_MOBILE_DEVICE_TYPE" -> Right PGBIFilterMobileDeviceType
2235+ "FILTER_MOBILE_GEO" -> Right PGBIFilterMobileGeo
2236+ "FILTER_MONTH" -> Right PGBIFilterMonth
2237+ "FILTER_MRAID_SUPPORT" -> Right PGBIFilterMraidSupport
2238+ "FILTER_NIELSEN_AGE" -> Right PGBIFilterNielsenAge
2239+ "FILTER_NIELSEN_COUNTRY_CODE" -> Right PGBIFilterNielsenCountryCode
2240+ "FILTER_NIELSEN_DEVICE_ID" -> Right PGBIFilterNielsenDeviceId
2241+ "FILTER_NIELSEN_GENDER" -> Right PGBIFilterNielsenGender
2242+ "FILTER_ORDER_ID" -> Right PGBIFilterOrderId
2243+ "FILTER_OS" -> Right PGBIFilterOS
2244+ "FILTER_PAGE_CATEGORY" -> Right PGBIFilterPageCategory
2245+ "FILTER_PAGE_LAYOUT" -> Right PGBIFilterPageLayout
2246+ "FILTER_PARTNER" -> Right PGBIFilterPartner
2247+ "FILTER_PARTNER_CURRENCY" -> Right PGBIFilterPartnerCurrency
2248+ "FILTER_PUBLIC_INVENTORY" -> Right PGBIFilterPublicInventory
2249+ "FILTER_QUARTER" -> Right PGBIFilterQuarter
2250+ "FILTER_REGION" -> Right PGBIFilterRegion
2251+ "FILTER_REGULAR_CHANNEL_ID" -> Right PGBIFilterRegularChannelId
2252+ "FILTER_SITE_ID" -> Right PGBIFilterSiteId
2253+ "FILTER_SITE_LANGUAGE" -> Right PGBIFilterSiteLanguage
2254+ "FILTER_TARGETED_USER_LIST" -> Right PGBIFilterTargetedUserList
2255+ "FILTER_TIME_OF_DAY" -> Right PGBIFilterTimeOfDay
2256+ "FILTER_TRUEVIEW_AD_GROUP_AD_ID" -> Right PGBIFilterTrueviewAdGroupAdId
2257+ "FILTER_TRUEVIEW_AD_GROUP_ID" -> Right PGBIFilterTrueviewAdGroupId
2258+ "FILTER_TRUEVIEW_AGE" -> Right PGBIFilterTrueviewAge
2259+ "FILTER_TRUEVIEW_CONVERSION_TYPE" -> Right PGBIFilterTrueviewConversionType
2260+ "FILTER_TRUEVIEW_GENDER" -> Right PGBIFilterTrueviewGender
2261+ "FILTER_TRUEVIEW_INTEREST" -> Right PGBIFilterTrueviewInterest
2262+ "FILTER_TRUEVIEW_PARENTAL_STATUS" -> Right PGBIFilterTrueviewParentalStatus
2263+ "FILTER_TRUEVIEW_REMARKETING_LIST" -> Right PGBIFilterTrueviewRemarketingList
2264+ "FILTER_UNKNOWN" -> Right PGBIFilterUnknown
2265+ "FILTER_USER_LIST" -> Right PGBIFilterUserList
2266+ "FILTER_USER_LIST_FIRST_PARTY" -> Right PGBIFilterUserListFirstParty
2267+ "FILTER_USER_LIST_THIRD_PARTY" -> Right PGBIFilterUserListThirdParty
2268+ "FILTER_VIDEO_AD_POSITION_IN_STREAM" -> Right PGBIFilterVideoAdPositionInStream
2269+ "FILTER_VIDEO_COMPANION_SIZE" -> Right PGBIFilterVideoCompanionSize
2270+ "FILTER_VIDEO_COMPANION_TYPE" -> Right PGBIFilterVideoCompanionType
2271+ "FILTER_VIDEO_CREATIVE_DURATION" -> Right PGBIFilterVideoCreativeDuration
2272+ "FILTER_VIDEO_CREATIVE_DURATION_SKIPPABLE" -> Right PGBIFilterVideoCreativeDurationSkippable
2273+ "FILTER_VIDEO_DURATION_SECONDS" -> Right PGBIFilterVideoDurationSeconds
2274+ "FILTER_VIDEO_FORMAT_SUPPORT" -> Right PGBIFilterVideoFormatSupport
2275+ "FILTER_VIDEO_INVENTORY_TYPE" -> Right PGBIFilterVideoInventoryType
2276+ "FILTER_VIDEO_PLAYER_SIZE" -> Right PGBIFilterVideoPlayerSize
2277+ "FILTER_VIDEO_RATING_TIER" -> Right PGBIFilterVideoRatingTier
2278+ "FILTER_VIDEO_SKIPPABLE_SUPPORT" -> Right PGBIFilterVideoSkippableSupport
2279+ "FILTER_VIDEO_VPAID_SUPPORT" -> Right PGBIFilterVideoVpaidSupport
2280+ "FILTER_WEEK" -> Right PGBIFilterWeek
2281+ "FILTER_YEAR" -> Right PGBIFilterYear
2282+ "FILTER_YOUTUBE_VERTICAL" -> Right PGBIFilterYouTubeVertical
2283+ "FILTER_ZIP_CODE" -> Right PGBIFilterZipCode
2284+ x -> Left ("Unable to parse ParametersGroupBysItem from: " <> x)
2285+
2286+instance ToHttpApiData ParametersGroupBysItem where
2287+ toQueryParam = \case
22882288 PGBIFilterActiveViewExpectedViewability -> "FILTER_ACTIVE_VIEW_EXPECTED_VIEWABILITY"
22892289 PGBIFilterActivityId -> "FILTER_ACTIVITY_ID"
22902290 PGBIFilterAdvertiser -> "FILTER_ADVERTISER"
@@ -2423,30 +2423,30 @@ data ReportFailureErrorCode
24232423
24242424instance Hashable ReportFailureErrorCode
24252425
2426−instance FromText ReportFailureErrorCode where
2427− fromText = \case
2428− "AUTHENTICATION_ERROR" -> Just AuthenticationError
2429− "DEPRECATED_REPORTING_INVALID_QUERY" -> Just DeprecatedReportingInvalidQuery
2430− "REPORTING_BUCKET_NOT_FOUND" -> Just ReportingBucketNotFound
2431− "REPORTING_CREATE_BUCKET_FAILED" -> Just ReportingCreateBucketFailed
2432− "REPORTING_DELETE_BUCKET_FAILED" -> Just ReportingDeleteBucketFailed
2433− "REPORTING_FATAL_ERROR" -> Just ReportingFatalError
2434− "REPORTING_ILLEGAL_FILENAME" -> Just ReportingIllegalFilename
2435− "REPORTING_IMCOMPATIBLE_METRICS" -> Just ReportingImcompatibleMetrics
2436− "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS" -> Just ReportingInvalidQueryMissingPartnerAndAdvertiserFilters
2437− "REPORTING_INVALID_QUERY_TITLE_MISSING" -> Just ReportingInvalidQueryTitleMissing
2438− "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS" -> Just ReportingInvalidQueryTooManyUnfilteredLargeGroupBys
2439− "REPORTING_QUERY_NOT_FOUND" -> Just ReportingQueryNotFound
2440− "REPORTING_TRANSIENT_ERROR" -> Just ReportingTransientError
2441− "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED" -> Just ReportingUpdateBucketPermissionFailed
2442− "REPORTING_WRITE_BUCKET_OBJECT_FAILED" -> Just ReportingWriteBucketObjectFailed
2443− "SERVER_ERROR" -> Just ServerError
2444− "UNAUTHORIZED_API_ACCESS" -> Just UnauthorizedAPIAccess
2445− "VALIDATION_ERROR" -> Just ValidationError
2446− _ -> Nothing
2447−
2448−instance ToText ReportFailureErrorCode where
2449− toText = \case
2426+instance FromHttpApiData ReportFailureErrorCode where
2427+ parseQueryParam = \case
2428+ "AUTHENTICATION_ERROR" -> Right AuthenticationError
2429+ "DEPRECATED_REPORTING_INVALID_QUERY" -> Right DeprecatedReportingInvalidQuery
2430+ "REPORTING_BUCKET_NOT_FOUND" -> Right ReportingBucketNotFound
2431+ "REPORTING_CREATE_BUCKET_FAILED" -> Right ReportingCreateBucketFailed
2432+ "REPORTING_DELETE_BUCKET_FAILED" -> Right ReportingDeleteBucketFailed
2433+ "REPORTING_FATAL_ERROR" -> Right ReportingFatalError
2434+ "REPORTING_ILLEGAL_FILENAME" -> Right ReportingIllegalFilename
2435+ "REPORTING_IMCOMPATIBLE_METRICS" -> Right ReportingImcompatibleMetrics
2436+ "REPORTING_INVALID_QUERY_MISSING_PARTNER_AND_ADVERTISER_FILTERS" -> Right ReportingInvalidQueryMissingPartnerAndAdvertiserFilters
2437+ "REPORTING_INVALID_QUERY_TITLE_MISSING" -> Right ReportingInvalidQueryTitleMissing
2438+ "REPORTING_INVALID_QUERY_TOO_MANY_UNFILTERED_LARGE_GROUP_BYS" -> Right ReportingInvalidQueryTooManyUnfilteredLargeGroupBys
2439+ "REPORTING_QUERY_NOT_FOUND" -> Right ReportingQueryNotFound
2440+ "REPORTING_TRANSIENT_ERROR" -> Right ReportingTransientError
2441+ "REPORTING_UPDATE_BUCKET_PERMISSION_FAILED" -> Right ReportingUpdateBucketPermissionFailed
2442+ "REPORTING_WRITE_BUCKET_OBJECT_FAILED" -> Right ReportingWriteBucketObjectFailed
2443+ "SERVER_ERROR" -> Right ServerError
2444+ "UNAUTHORIZED_API_ACCESS" -> Right UnauthorizedAPIAccess
2445+ "VALIDATION_ERROR" -> Right ValidationError
2446+ x -> Left ("Unable to parse ReportFailureErrorCode from: " <> x)
2447+
2448+instance ToHttpApiData ReportFailureErrorCode where
2449+ toQueryParam = \case
24502450 AuthenticationError -> "AUTHENTICATION_ERROR"
24512451 DeprecatedReportingInvalidQuery -> "DEPRECATED_REPORTING_INVALID_QUERY"
24522452 ReportingBucketNotFound -> "REPORTING_BUCKET_NOT_FOUND"
@@ -2480,13 +2480,13 @@ data DownloadLineItemsRequestFormat
24802480
24812481instance Hashable DownloadLineItemsRequestFormat
24822482
2483−instance FromText DownloadLineItemsRequestFormat where
2484− fromText = \case
2485− "CSV" -> Just DLIRFCSV
2486− _ -> Nothing
2483+instance FromHttpApiData DownloadLineItemsRequestFormat where
2484+ parseQueryParam = \case
2485+ "CSV" -> Right DLIRFCSV
2486+ x -> Left ("Unable to parse DownloadLineItemsRequestFormat from: " <> x)
24872487
2488−instance ToText DownloadLineItemsRequestFormat where
2489− toText = \case
2488+instance ToHttpApiData DownloadLineItemsRequestFormat where
2489+ toQueryParam = \case
24902490 DLIRFCSV -> "CSV"
24912491
24922492instance FromJSON DownloadLineItemsRequestFormat where
@@ -2507,15 +2507,15 @@ data ReportStatusFormat
25072507
25082508instance Hashable ReportStatusFormat
25092509
2510−instance FromText ReportStatusFormat where
2511− fromText = \case
2512− "CSV" -> Just RSFCSV
2513− "EXCEL_CSV" -> Just RSFExcelCSV
2514− "XLSX" -> Just RSFXlsx
2515− _ -> Nothing
2510+instance FromHttpApiData ReportStatusFormat where
2511+ parseQueryParam = \case
2512+ "CSV" -> Right RSFCSV
2513+ "EXCEL_CSV" -> Right RSFExcelCSV
2514+ "XLSX" -> Right RSFXlsx
2515+ x -> Left ("Unable to parse ReportStatusFormat from: " <> x)
25162516
2517−instance ToText ReportStatusFormat where
2518− toText = \case
2517+instance ToHttpApiData ReportStatusFormat where
2518+ toQueryParam = \case
25192519 RSFCSV -> "CSV"
25202520 RSFExcelCSV -> "EXCEL_CSV"
25212521 RSFXlsx -> "XLSX"
gogol-drive/gen/Network/Google/Drive/Types/Sum.hs+8−8
@@ -30,14 +30,14 @@ data FilesListCorpus
3030
3131instance Hashable FilesListCorpus
3232
33−instance FromText FilesListCorpus where
34− fromText = \case
35− "domain" -> Just FLCDomain
36− "user" -> Just FLCUser
37− _ -> Nothing
38−
39−instance ToText FilesListCorpus where
40− toText = \case
33+instance FromHttpApiData FilesListCorpus where
34+ parseQueryParam = \case
35+ "domain" -> Right FLCDomain
36+ "user" -> Right FLCUser
37+ x -> Left ("Unable to parse FilesListCorpus from: " <> x)
38+
39+instance ToHttpApiData FilesListCorpus where
40+ toQueryParam = \case
4141 FLCDomain -> "domain"
4242 FLCUser -> "user"
4343
gogol-fitness/gen/Network/Google/Fitness/Types/Sum.hs+43−43
@@ -35,17 +35,17 @@ data AggregateBucketType
3535
3636instance Hashable AggregateBucketType
3737
38−instance FromText AggregateBucketType where
39− fromText = \case
40− "activitySegment" -> Just ABTActivitySegment
41− "activityType" -> Just ABTActivityType
42− "session" -> Just ABTSession
43− "time" -> Just ABTTime
44− "unknown" -> Just ABTUnknown
45− _ -> Nothing
46−
47−instance ToText AggregateBucketType where
48− toText = \case
38+instance FromHttpApiData AggregateBucketType where
39+ parseQueryParam = \case
40+ "activitySegment" -> Right ABTActivitySegment
41+ "activityType" -> Right ABTActivityType
42+ "session" -> Right ABTSession
43+ "time" -> Right ABTTime
44+ "unknown" -> Right ABTUnknown
45+ x -> Left ("Unable to parse AggregateBucketType from: " <> x)
46+
47+instance ToHttpApiData AggregateBucketType where
48+ toQueryParam = \case
4949 ABTActivitySegment -> "activitySegment"
5050 ABTActivityType -> "activityType"
5151 ABTSession -> "session"
@@ -69,14 +69,14 @@ data DataSourceType
6969
7070instance Hashable DataSourceType
7171
72−instance FromText DataSourceType where
73− fromText = \case
74− "derived" -> Just Derived
75− "raw" -> Just Raw
76− _ -> Nothing
72+instance FromHttpApiData DataSourceType where
73+ parseQueryParam = \case
74+ "derived" -> Right Derived
75+ "raw" -> Right Raw
76+ x -> Left ("Unable to parse DataSourceType from: " <> x)
7777
78−instance ToText DataSourceType where
79− toText = \case
78+instance ToHttpApiData DataSourceType where
79+ toQueryParam = \case
8080 Derived -> "derived"
8181 Raw -> "raw"
8282
@@ -104,18 +104,18 @@ data DeviceType
104104
105105instance Hashable DeviceType
106106
107−instance FromText DeviceType where
108− fromText = \case
109− "chestStrap" -> Just ChestStrap
110− "phone" -> Just Phone
111− "scale" -> Just Scale
112− "tablet" -> Just Tablet
113− "unknown" -> Just Unknown
114− "watch" -> Just Watch
115− _ -> Nothing
116−
117−instance ToText DeviceType where
118− toText = \case
107+instance FromHttpApiData DeviceType where
108+ parseQueryParam = \case
109+ "chestStrap" -> Right ChestStrap
110+ "phone" -> Right Phone
111+ "scale" -> Right Scale
112+ "tablet" -> Right Tablet
113+ "unknown" -> Right Unknown
114+ "watch" -> Right Watch
115+ x -> Left ("Unable to parse DeviceType from: " <> x)
116+
117+instance ToHttpApiData DeviceType where
118+ toQueryParam = \case
119119 ChestStrap -> "chestStrap"
120120 Phone -> "phone"
121121 Scale -> "scale"
@@ -149,19 +149,19 @@ data DataTypeFieldFormat
149149
150150instance Hashable DataTypeFieldFormat
151151
152−instance FromText DataTypeFieldFormat where
153− fromText = \case
154− "blob" -> Just Blob
155− "floatList" -> Just FloatList
156− "floatPoint" -> Just FloatPoint
157− "integer" -> Just Integer
158− "integerList" -> Just IntegerList
159− "map" -> Just Map
160− "string" -> Just String
161− _ -> Nothing
162−
163−instance ToText DataTypeFieldFormat where
164− toText = \case
152+instance FromHttpApiData DataTypeFieldFormat where
153+ parseQueryParam = \case
154+ "blob" -> Right Blob
155+ "floatList" -> Right FloatList
156+ "floatPoint" -> Right FloatPoint
157+ "integer" -> Right Integer
158+ "integerList" -> Right IntegerList
159+ "map" -> Right Map
160+ "string" -> Right String
161+ x -> Left ("Unable to parse DataTypeFieldFormat from: " <> x)
162+
163+instance ToHttpApiData DataTypeFieldFormat where
164+ toQueryParam = \case
165165 Blob -> "blob"
166166 FloatList -> "floatList"
167167 FloatPoint -> "floatPoint"
gogol-fonts/gen/Network/Google/Fonts/Types/Sum.hs+11−11
@@ -39,17 +39,17 @@ data WebfontsListSort
3939
4040instance Hashable WebfontsListSort
4141
42−instance FromText WebfontsListSort where
43− fromText = \case
44− "alpha" -> Just Alpha
45− "date" -> Just Date
46− "popularity" -> Just Popularity
47− "style" -> Just Style
48− "trending" -> Just Trending
49− _ -> Nothing
50−
51−instance ToText WebfontsListSort where
52− toText = \case
42+instance FromHttpApiData WebfontsListSort where
43+ parseQueryParam = \case
44+ "alpha" -> Right Alpha
45+ "date" -> Right Date
46+ "popularity" -> Right Popularity
47+ "style" -> Right Style
48+ "trending" -> Right Trending
49+ x -> Left ("Unable to parse WebfontsListSort from: " <> x)
50+
51+instance ToHttpApiData WebfontsListSort where
52+ toQueryParam = \case
5353 Alpha -> "alpha"
5454 Date -> "date"
5555 Popularity -> "popularity"
gogol-freebasesearch/gen/Network/Google/FreebaseSearch/Types/Sum.hs+43−43
@@ -42,18 +42,18 @@ data FreebaseSearchFormat
4242
4343instance Hashable FreebaseSearchFormat
4444
45−instance FromText FreebaseSearchFormat where
46− fromText = \case
47− "ac" -> Just AC
48− "classic" -> Just Classic
49− "entity" -> Just Entity
50− "guids" -> Just Guids
51− "ids" -> Just Ids
52− "mids" -> Just Mids
53− _ -> Nothing
54−
55−instance ToText FreebaseSearchFormat where
56− toText = \case
45+instance FromHttpApiData FreebaseSearchFormat where
46+ parseQueryParam = \case
47+ "ac" -> Right AC
48+ "classic" -> Right Classic
49+ "entity" -> Right Entity
50+ "guids" -> Right Guids
51+ "ids" -> Right Ids
52+ "mids" -> Right Mids
53+ x -> Left ("Unable to parse FreebaseSearchFormat from: " <> x)
54+
55+instance ToHttpApiData FreebaseSearchFormat where
56+ toQueryParam = \case
5757 AC -> "ac"
5858 Classic -> "classic"
5959 Entity -> "entity"
@@ -82,15 +82,15 @@ data FreebaseSearchScoring
8282
8383instance Hashable FreebaseSearchScoring
8484
85−instance FromText FreebaseSearchScoring where
86− fromText = \case
87− "entity" -> Just FSSEntity
88− "freebase" -> Just FSSFreebase
89− "schema" -> Just FSSSchema
90− _ -> Nothing
85+instance FromHttpApiData FreebaseSearchScoring where
86+ parseQueryParam = \case
87+ "entity" -> Right FSSEntity
88+ "freebase" -> Right FSSFreebase
89+ "schema" -> Right FSSSchema
90+ x -> Left ("Unable to parse FreebaseSearchScoring from: " <> x)
9191
92−instance ToText FreebaseSearchScoring where
93− toText = \case
92+instance ToHttpApiData FreebaseSearchScoring where
93+ toQueryParam = \case
9494 FSSEntity -> "entity"
9595 FSSFreebase -> "freebase"
9696 FSSSchema -> "schema"
@@ -116,14 +116,14 @@ data FreebaseSearchEncode
116116
117117instance Hashable FreebaseSearchEncode
118118
119−instance FromText FreebaseSearchEncode where
120− fromText = \case
121− "html" -> Just HTML
122− "off" -> Just Off
123− _ -> Nothing
119+instance FromHttpApiData FreebaseSearchEncode where
120+ parseQueryParam = \case
121+ "html" -> Right HTML
122+ "off" -> Right Off
123+ x -> Left ("Unable to parse FreebaseSearchEncode from: " <> x)
124124
125−instance ToText FreebaseSearchEncode where
126− toText = \case
125+instance ToHttpApiData FreebaseSearchEncode where
126+ toQueryParam = \case
127127 HTML -> "html"
128128 Off -> "off"
129129
@@ -150,15 +150,15 @@ data FreebaseSearchHelp
150150
151151instance Hashable FreebaseSearchHelp
152152
153−instance FromText FreebaseSearchHelp where
154− fromText = \case
155− "langs" -> Just Langs
156− "mappings" -> Just MAppings
157− "predicates" -> Just Predicates
158− _ -> Nothing
153+instance FromHttpApiData FreebaseSearchHelp where
154+ parseQueryParam = \case
155+ "langs" -> Right Langs
156+ "mappings" -> Right MAppings
157+ "predicates" -> Right Predicates
158+ x -> Left ("Unable to parse FreebaseSearchHelp from: " <> x)
159159
160−instance ToText FreebaseSearchHelp where
161− toText = \case
160+instance ToHttpApiData FreebaseSearchHelp where
161+ toQueryParam = \case
162162 Langs -> "langs"
163163 MAppings -> "mappings"
164164 Predicates -> "predicates"
@@ -185,15 +185,15 @@ data FreebaseSearchSpell
185185
186186instance Hashable FreebaseSearchSpell
187187
188−instance FromText FreebaseSearchSpell where
189− fromText = \case
190− "always" -> Just Always
191− "no_results" -> Just NoResults
192− "no_spelling" -> Just NoSpelling
193− _ -> Nothing
188+instance FromHttpApiData FreebaseSearchSpell where
189+ parseQueryParam = \case
190+ "always" -> Right Always
191+ "no_results" -> Right NoResults
192+ "no_spelling" -> Right NoSpelling
193+ x -> Left ("Unable to parse FreebaseSearchSpell from: " <> x)
194194
195−instance ToText FreebaseSearchSpell where
196− toText = \case
195+instance ToHttpApiData FreebaseSearchSpell where
196+ toQueryParam = \case
197197 Always -> "always"
198198 NoResults -> "no_results"
199199 NoSpelling -> "no_spelling"
gogol-games-configuration/gen/Network/Google/GamesConfiguration/Types/Sum.hs+8−8
@@ -30,14 +30,14 @@ data ImageConfigurationsUploadImageType
3030
3131instance Hashable ImageConfigurationsUploadImageType
3232
33−instance FromText ImageConfigurationsUploadImageType where
34− fromText = \case
35− "ACHIEVEMENT_ICON" -> Just AchievementIcon
36− "LEADERBOARD_ICON" -> Just LeaderboardIcon
37− _ -> Nothing
38−
39−instance ToText ImageConfigurationsUploadImageType where
40− toText = \case
33+instance FromHttpApiData ImageConfigurationsUploadImageType where
34+ parseQueryParam = \case
35+ "ACHIEVEMENT_ICON" -> Right AchievementIcon
36+ "LEADERBOARD_ICON" -> Right LeaderboardIcon
37+ x -> Left ("Unable to parse ImageConfigurationsUploadImageType from: " <> x)
38+
39+instance ToHttpApiData ImageConfigurationsUploadImageType where
40+ toQueryParam = \case
4141 AchievementIcon -> "ACHIEVEMENT_ICON"
4242 LeaderboardIcon -> "LEADERBOARD_ICON"
4343
gogol-games/gen/Network/Google/Games/Types/Sum.hs+78−78
@@ -28,13 +28,13 @@ data PlayersListCollection
2828
2929instance Hashable PlayersListCollection
3030
31−instance FromText PlayersListCollection where
32− fromText = \case
33− "played_with" -> Just PlayedWith
34− _ -> Nothing
31+instance FromHttpApiData PlayersListCollection where
32+ parseQueryParam = \case
33+ "played_with" -> Right PlayedWith
34+ x -> Left ("Unable to parse PlayersListCollection from: " <> x)
3535
36−instance ToText PlayersListCollection where
37− toText = \case
36+instance ToHttpApiData PlayersListCollection where
37+ toQueryParam = \case
3838 PlayedWith -> "played_with"
3939
4040instance FromJSON PlayersListCollection where
@@ -58,15 +58,15 @@ data ScoresListCollection
5858
5959instance Hashable ScoresListCollection
6060
61−instance FromText ScoresListCollection where
62− fromText = \case
63− "PUBLIC" -> Just Public
64− "SOCIAL" -> Just Social
65− "SOCIAL_1P" -> Just Social1P
66− _ -> Nothing
61+instance FromHttpApiData ScoresListCollection where
62+ parseQueryParam = \case
63+ "PUBLIC" -> Right Public
64+ "SOCIAL" -> Right Social
65+ "SOCIAL_1P" -> Right Social1P
66+ x -> Left ("Unable to parse ScoresListCollection from: " <> x)
6767
68−instance ToText ScoresListCollection where
69− toText = \case
68+instance ToHttpApiData ScoresListCollection where
69+ toQueryParam = \case
7070 Public -> "PUBLIC"
7171 Social -> "SOCIAL"
7272 Social1P -> "SOCIAL_1P"
@@ -92,15 +92,15 @@ data ApplicationsGetPlatformType
9292
9393instance Hashable ApplicationsGetPlatformType
9494
95−instance FromText ApplicationsGetPlatformType where
96− fromText = \case
97− "ANDROID" -> Just Android
98− "IOS" -> Just Ios
99− "WEB_APP" -> Just WebApp
100− _ -> Nothing
95+instance FromHttpApiData ApplicationsGetPlatformType where
96+ parseQueryParam = \case
97+ "ANDROID" -> Right Android
98+ "IOS" -> Right Ios
99+ "WEB_APP" -> Right WebApp
100+ x -> Left ("Unable to parse ApplicationsGetPlatformType from: " <> x)
101101
102−instance ToText ApplicationsGetPlatformType where
103− toText = \case
102+instance ToHttpApiData ApplicationsGetPlatformType where
103+ toQueryParam = \case
104104 Android -> "ANDROID"
105105 Ios -> "IOS"
106106 WebApp -> "WEB_APP"
@@ -126,15 +126,15 @@ data ScoresListWindowCollection
126126
127127instance Hashable ScoresListWindowCollection
128128
129−instance FromText ScoresListWindowCollection where
130− fromText = \case
131− "PUBLIC" -> Just SLWCPublic
132− "SOCIAL" -> Just SLWCSocial
133− "SOCIAL_1P" -> Just SLWCSocial1P
134− _ -> Nothing
129+instance FromHttpApiData ScoresListWindowCollection where
130+ parseQueryParam = \case
131+ "PUBLIC" -> Right SLWCPublic
132+ "SOCIAL" -> Right SLWCSocial
133+ "SOCIAL_1P" -> Right SLWCSocial1P
134+ x -> Left ("Unable to parse ScoresListWindowCollection from: " <> x)
135135
136−instance ToText ScoresListWindowCollection where
137− toText = \case
136+instance ToHttpApiData ScoresListWindowCollection where
137+ toQueryParam = \case
138138 SLWCPublic -> "PUBLIC"
139139 SLWCSocial -> "SOCIAL"
140140 SLWCSocial1P -> "SOCIAL_1P"
@@ -160,15 +160,15 @@ data ScoresListWindowTimeSpan
160160
161161instance Hashable ScoresListWindowTimeSpan
162162
163−instance FromText ScoresListWindowTimeSpan where
164− fromText = \case
165− "ALL_TIME" -> Just AllTime
166− "DAILY" -> Just Daily
167− "WEEKLY" -> Just Weekly
168− _ -> Nothing
163+instance FromHttpApiData ScoresListWindowTimeSpan where
164+ parseQueryParam = \case
165+ "ALL_TIME" -> Right AllTime
166+ "DAILY" -> Right Daily
167+ "WEEKLY" -> Right Weekly
168+ x -> Left ("Unable to parse ScoresListWindowTimeSpan from: " <> x)
169169
170−instance ToText ScoresListWindowTimeSpan where
171− toText = \case
170+instance ToHttpApiData ScoresListWindowTimeSpan where
171+ toQueryParam = \case
172172 AllTime -> "ALL_TIME"
173173 Daily -> "DAILY"
174174 Weekly -> "WEEKLY"
@@ -198,16 +198,16 @@ data ScoresGetTimeSpan
198198
199199instance Hashable ScoresGetTimeSpan
200200
201−instance FromText ScoresGetTimeSpan where
202− fromText = \case
203− "ALL" -> Just SGTSAll
204− "ALL_TIME" -> Just SGTSAllTime
205− "DAILY" -> Just SGTSDaily
206− "WEEKLY" -> Just SGTSWeekly
207− _ -> Nothing
201+instance FromHttpApiData ScoresGetTimeSpan where
202+ parseQueryParam = \case
203+ "ALL" -> Right SGTSAll
204+ "ALL_TIME" -> Right SGTSAllTime
205+ "DAILY" -> Right SGTSDaily
206+ "WEEKLY" -> Right SGTSWeekly
207+ x -> Left ("Unable to parse ScoresGetTimeSpan from: " <> x)
208208
209−instance ToText ScoresGetTimeSpan where
210− toText = \case
209+instance ToHttpApiData ScoresGetTimeSpan where
210+ toQueryParam = \case
211211 SGTSAll -> "ALL"
212212 SGTSAllTime -> "ALL_TIME"
213213 SGTSDaily -> "DAILY"
@@ -236,15 +236,15 @@ data ScoresGetIncludeRankType
236236
237237instance Hashable ScoresGetIncludeRankType
238238
239−instance FromText ScoresGetIncludeRankType where
240− fromText = \case
241− "ALL" -> Just SGIRTAll
242− "PUBLIC" -> Just SGIRTPublic
243− "SOCIAL" -> Just SGIRTSocial
244− _ -> Nothing
239+instance FromHttpApiData ScoresGetIncludeRankType where
240+ parseQueryParam = \case
241+ "ALL" -> Right SGIRTAll
242+ "PUBLIC" -> Right SGIRTPublic
243+ "SOCIAL" -> Right SGIRTSocial
244+ x -> Left ("Unable to parse ScoresGetIncludeRankType from: " <> x)
245245
246−instance ToText ScoresGetIncludeRankType where
247− toText = \case
246+instance ToHttpApiData ScoresGetIncludeRankType where
247+ toQueryParam = \case
248248 SGIRTAll -> "ALL"
249249 SGIRTPublic -> "PUBLIC"
250250 SGIRTSocial -> "SOCIAL"
@@ -270,15 +270,15 @@ data ScoresListTimeSpan
270270
271271instance Hashable ScoresListTimeSpan
272272
273−instance FromText ScoresListTimeSpan where
274− fromText = \case
275− "ALL_TIME" -> Just SLTSAllTime
276− "DAILY" -> Just SLTSDaily
277− "WEEKLY" -> Just SLTSWeekly
278− _ -> Nothing
273+instance FromHttpApiData ScoresListTimeSpan where
274+ parseQueryParam = \case
275+ "ALL_TIME" -> Right SLTSAllTime
276+ "DAILY" -> Right SLTSDaily
277+ "WEEKLY" -> Right SLTSWeekly
278+ x -> Left ("Unable to parse ScoresListTimeSpan from: " <> x)
279279
280−instance ToText ScoresListTimeSpan where
281− toText = \case
280+instance ToHttpApiData ScoresListTimeSpan where
281+ toQueryParam = \case
282282 SLTSAllTime -> "ALL_TIME"
283283 SLTSDaily -> "DAILY"
284284 SLTSWeekly -> "WEEKLY"
@@ -298,13 +298,13 @@ data MetagameListCategoriesByPlayerCollection
298298
299299instance Hashable MetagameListCategoriesByPlayerCollection
300300
301−instance FromText MetagameListCategoriesByPlayerCollection where
302− fromText = \case
303− "all" -> Just All
304− _ -> Nothing
301+instance FromHttpApiData MetagameListCategoriesByPlayerCollection where
302+ parseQueryParam = \case
303+ "all" -> Right All
304+ x -> Left ("Unable to parse MetagameListCategoriesByPlayerCollection from: " <> x)
305305
306−instance ToText MetagameListCategoriesByPlayerCollection where
307− toText = \case
306+instance ToHttpApiData MetagameListCategoriesByPlayerCollection where
307+ toQueryParam = \case
308308 All -> "all"
309309
310310instance FromJSON MetagameListCategoriesByPlayerCollection where
@@ -332,16 +332,16 @@ data AchievementsListState
332332
333333instance Hashable AchievementsListState
334334
335−instance FromText AchievementsListState where
336− fromText = \case
337− "ALL" -> Just ALSAll
338− "HIDDEN" -> Just ALSHidden
339− "REVEALED" -> Just ALSRevealed
340− "UNLOCKED" -> Just ALSUnlocked
341− _ -> Nothing
335+instance FromHttpApiData AchievementsListState where
336+ parseQueryParam = \case
337+ "ALL" -> Right ALSAll
338+ "HIDDEN" -> Right ALSHidden
339+ "REVEALED" -> Right ALSRevealed
340+ "UNLOCKED" -> Right ALSUnlocked
341+ x -> Left ("Unable to parse AchievementsListState from: " <> x)
342342
343−instance ToText AchievementsListState where
344− toText = \case
343+instance ToHttpApiData AchievementsListState where
344+ toQueryParam = \case
345345 ALSAll -> "ALL"
346346 ALSHidden -> "HIDDEN"
347347 ALSRevealed -> "REVEALED"
gogol-gmail/gen/Network/Google/Gmail/Types/Sum.hs+70−70
@@ -32,16 +32,16 @@ data UsersMessagesGetFormat
3232
3333instance Hashable UsersMessagesGetFormat
3434
35−instance FromText UsersMessagesGetFormat where
36− fromText = \case
37− "full" -> Just Full
38− "metadata" -> Just Metadata
39− "minimal" -> Just Minimal
40− "raw" -> Just Raw
41− _ -> Nothing
42−
43−instance ToText UsersMessagesGetFormat where
44− toText = \case
35+instance FromHttpApiData UsersMessagesGetFormat where
36+ parseQueryParam = \case
37+ "full" -> Right Full
38+ "metadata" -> Right Metadata
39+ "minimal" -> Right Minimal
40+ "raw" -> Right Raw
41+ x -> Left ("Unable to parse UsersMessagesGetFormat from: " <> x)
42+
43+instance ToHttpApiData UsersMessagesGetFormat where
44+ toQueryParam = \case
4545 Full -> "full"
4646 Metadata -> "metadata"
4747 Minimal -> "minimal"
@@ -70,14 +70,14 @@ data LabelType
7070
7171instance Hashable LabelType
7272
73−instance FromText LabelType where
74− fromText = \case
75− "system" -> Just System
76− "user" -> Just User
77− _ -> Nothing
73+instance FromHttpApiData LabelType where
74+ parseQueryParam = \case
75+ "system" -> Right System
76+ "user" -> Right User
77+ x -> Left ("Unable to parse LabelType from: " <> x)
7878
79−instance ToText LabelType where
80− toText = \case
79+instance ToHttpApiData LabelType where
80+ toQueryParam = \case
8181 System -> "system"
8282 User -> "user"
8383
@@ -101,16 +101,16 @@ data UsersDraftsGetFormat
101101
102102instance Hashable UsersDraftsGetFormat
103103
104−instance FromText UsersDraftsGetFormat where
105− fromText = \case
106− "full" -> Just UDGFFull
107− "metadata" -> Just UDGFMetadata
108− "minimal" -> Just UDGFMinimal
109− "raw" -> Just UDGFRaw
110− _ -> Nothing
104+instance FromHttpApiData UsersDraftsGetFormat where
105+ parseQueryParam = \case
106+ "full" -> Right UDGFFull
107+ "metadata" -> Right UDGFMetadata
108+ "minimal" -> Right UDGFMinimal
109+ "raw" -> Right UDGFRaw
110+ x -> Left ("Unable to parse UsersDraftsGetFormat from: " <> x)
111111
112−instance ToText UsersDraftsGetFormat where
113− toText = \case
112+instance ToHttpApiData UsersDraftsGetFormat where
113+ toQueryParam = \case
114114 UDGFFull -> "full"
115115 UDGFMetadata -> "metadata"
116116 UDGFMinimal -> "minimal"
@@ -132,14 +132,14 @@ data UsersMessagesImportInternalDateSource
132132
133133instance Hashable UsersMessagesImportInternalDateSource
134134
135−instance FromText UsersMessagesImportInternalDateSource where
136− fromText = \case
137− "dateHeader" -> Just DateHeader
138− "receivedTime" -> Just ReceivedTime
139− _ -> Nothing
135+instance FromHttpApiData UsersMessagesImportInternalDateSource where
136+ parseQueryParam = \case
137+ "dateHeader" -> Right DateHeader
138+ "receivedTime" -> Right ReceivedTime
139+ x -> Left ("Unable to parse UsersMessagesImportInternalDateSource from: " <> x)
140140
141−instance ToText UsersMessagesImportInternalDateSource where
142− toText = \case
141+instance ToHttpApiData UsersMessagesImportInternalDateSource where
142+ toQueryParam = \case
143143 DateHeader -> "dateHeader"
144144 ReceivedTime -> "receivedTime"
145145
@@ -160,14 +160,14 @@ data LabelMessageListVisibility
160160
161161instance Hashable LabelMessageListVisibility
162162
163−instance FromText LabelMessageListVisibility where
164− fromText = \case
165− "hide" -> Just Hide
166− "show" -> Just Show
167− _ -> Nothing
163+instance FromHttpApiData LabelMessageListVisibility where
164+ parseQueryParam = \case
165+ "hide" -> Right Hide
166+ "show" -> Right Show
167+ x -> Left ("Unable to parse LabelMessageListVisibility from: " <> x)
168168
169−instance ToText LabelMessageListVisibility where
170− toText = \case
169+instance ToHttpApiData LabelMessageListVisibility where
170+ toQueryParam = \case
171171 Hide -> "hide"
172172 Show -> "show"
173173
@@ -190,15 +190,15 @@ data LabelLabelListVisibility
190190
191191instance Hashable LabelLabelListVisibility
192192
193−instance FromText LabelLabelListVisibility where
194− fromText = \case
195− "labelHide" -> Just LabelHide
196− "labelShow" -> Just LabelShow
197− "labelShowIfUnread" -> Just LabelShowIfUnread
198− _ -> Nothing
193+instance FromHttpApiData LabelLabelListVisibility where
194+ parseQueryParam = \case
195+ "labelHide" -> Right LabelHide
196+ "labelShow" -> Right LabelShow
197+ "labelShowIfUnread" -> Right LabelShowIfUnread
198+ x -> Left ("Unable to parse LabelLabelListVisibility from: " <> x)
199199
200−instance ToText LabelLabelListVisibility where
201− toText = \case
200+instance ToHttpApiData LabelLabelListVisibility where
201+ toQueryParam = \case
202202 LabelHide -> "labelHide"
203203 LabelShow -> "labelShow"
204204 LabelShowIfUnread -> "labelShowIfUnread"
@@ -221,15 +221,15 @@ data UsersThreadsGetFormat
221221
222222instance Hashable UsersThreadsGetFormat
223223
224−instance FromText UsersThreadsGetFormat where
225− fromText = \case
226− "full" -> Just UTGFFull
227− "metadata" -> Just UTGFMetadata
228− "minimal" -> Just UTGFMinimal
229− _ -> Nothing
224+instance FromHttpApiData UsersThreadsGetFormat where
225+ parseQueryParam = \case
226+ "full" -> Right UTGFFull
227+ "metadata" -> Right UTGFMetadata
228+ "minimal" -> Right UTGFMinimal
229+ x -> Left ("Unable to parse UsersThreadsGetFormat from: " <> x)
230230
231−instance ToText UsersThreadsGetFormat where
232− toText = \case
231+instance ToHttpApiData UsersThreadsGetFormat where
232+ toQueryParam = \case
233233 UTGFFull -> "full"
234234 UTGFMetadata -> "metadata"
235235 UTGFMinimal -> "minimal"
@@ -250,14 +250,14 @@ data WatchRequestLabelFilterAction
250250
251251instance Hashable WatchRequestLabelFilterAction
252252
253−instance FromText WatchRequestLabelFilterAction where
254− fromText = \case
255− "exclude" -> Just Exclude
256− "include" -> Just Include
257− _ -> Nothing
253+instance FromHttpApiData WatchRequestLabelFilterAction where
254+ parseQueryParam = \case
255+ "exclude" -> Right Exclude
256+ "include" -> Right Include
257+ x -> Left ("Unable to parse WatchRequestLabelFilterAction from: " <> x)
258258
259−instance ToText WatchRequestLabelFilterAction where
260− toText = \case
259+instance ToHttpApiData WatchRequestLabelFilterAction where
260+ toQueryParam = \case
261261 Exclude -> "exclude"
262262 Include -> "include"
263263
@@ -277,14 +277,14 @@ data UsersMessagesInsertInternalDateSource
277277
278278instance Hashable UsersMessagesInsertInternalDateSource
279279
280−instance FromText UsersMessagesInsertInternalDateSource where
281− fromText = \case
282− "dateHeader" -> Just UMIIDSDateHeader
283− "receivedTime" -> Just UMIIDSReceivedTime
284− _ -> Nothing
280+instance FromHttpApiData UsersMessagesInsertInternalDateSource where
281+ parseQueryParam = \case
282+ "dateHeader" -> Right UMIIDSDateHeader
283+ "receivedTime" -> Right UMIIDSReceivedTime
284+ x -> Left ("Unable to parse UsersMessagesInsertInternalDateSource from: " <> x)
285285
286−instance ToText UsersMessagesInsertInternalDateSource where
287− toText = \case
286+instance ToHttpApiData UsersMessagesInsertInternalDateSource where
287+ toQueryParam = \case
288288 UMIIDSDateHeader -> "dateHeader"
289289 UMIIDSReceivedTime -> "receivedTime"
290290
gogol-maps-coordinate/gen/Network/Google/MapsCoordinate/Types/Sum.hs+20−20
@@ -39,17 +39,17 @@ data JobsPatchProgress
3939
4040instance Hashable JobsPatchProgress
4141
42−instance FromText JobsPatchProgress where
43− fromText = \case
44− "COMPLETED" -> Just Completed
45− "IN_PROGRESS" -> Just InProgress
46− "NOT_ACCEPTED" -> Just NotAccepted
47− "NOT_STARTED" -> Just NotStarted
48− "OBSOLETE" -> Just Obsolete
49− _ -> Nothing
42+instance FromHttpApiData JobsPatchProgress where
43+ parseQueryParam = \case
44+ "COMPLETED" -> Right Completed
45+ "IN_PROGRESS" -> Right InProgress
46+ "NOT_ACCEPTED" -> Right NotAccepted
47+ "NOT_STARTED" -> Right NotStarted
48+ "OBSOLETE" -> Right Obsolete
49+ x -> Left ("Unable to parse JobsPatchProgress from: " <> x)
5050
51−instance ToText JobsPatchProgress where
52− toText = \case
51+instance ToHttpApiData JobsPatchProgress where
52+ toQueryParam = \case
5353 Completed -> "COMPLETED"
5454 InProgress -> "IN_PROGRESS"
5555 NotAccepted -> "NOT_ACCEPTED"
@@ -83,17 +83,17 @@ data JobsUpdateProgress
8383
8484instance Hashable JobsUpdateProgress
8585
86−instance FromText JobsUpdateProgress where
87− fromText = \case
88− "COMPLETED" -> Just JUPCompleted
89− "IN_PROGRESS" -> Just JUPInProgress
90− "NOT_ACCEPTED" -> Just JUPNotAccepted
91− "NOT_STARTED" -> Just JUPNotStarted
92− "OBSOLETE" -> Just JUPObsolete
93− _ -> Nothing
86+instance FromHttpApiData JobsUpdateProgress where
87+ parseQueryParam = \case
88+ "COMPLETED" -> Right JUPCompleted
89+ "IN_PROGRESS" -> Right JUPInProgress
90+ "NOT_ACCEPTED" -> Right JUPNotAccepted
91+ "NOT_STARTED" -> Right JUPNotStarted
92+ "OBSOLETE" -> Right JUPObsolete
93+ x -> Left ("Unable to parse JobsUpdateProgress from: " <> x)
9494
95−instance ToText JobsUpdateProgress where
96− toText = \case
95+instance ToHttpApiData JobsUpdateProgress where
96+ toQueryParam = \case
9797 JUPCompleted -> "COMPLETED"
9898 JUPInProgress -> "IN_PROGRESS"
9999 JUPNotAccepted -> "NOT_ACCEPTED"
gogol-maps-engine/gen/Network/Google/MapsEngine/Types/Sum.hs+417−417
@@ -34,17 +34,17 @@ data RasterProcessingStatus
3434
3535instance Hashable RasterProcessingStatus
3636
37−instance FromText RasterProcessingStatus where
38− fromText = \case
39− "complete" -> Just Complete
40− "failed" -> Just Failed
41− "notReady" -> Just NotReady
42− "processing" -> Just Processing
43− "ready" -> Just Ready
44− _ -> Nothing
45−
46−instance ToText RasterProcessingStatus where
47− toText = \case
37+instance FromHttpApiData RasterProcessingStatus where
38+ parseQueryParam = \case
39+ "complete" -> Right Complete
40+ "failed" -> Right Failed
41+ "notReady" -> Right NotReady
42+ "processing" -> Right Processing
43+ "ready" -> Right Ready
44+ x -> Left ("Unable to parse RasterProcessingStatus from: " <> x)
45+
46+instance ToHttpApiData RasterProcessingStatus where
47+ toQueryParam = \case
4848 Complete -> "complete"
4949 Failed -> "failed"
5050 NotReady -> "notReady"
@@ -73,17 +73,17 @@ data LayerProcessingStatus
7373
7474instance Hashable LayerProcessingStatus
7575
76−instance FromText LayerProcessingStatus where
77− fromText = \case
78− "complete" -> Just LPSComplete
79− "failed" -> Just LPSFailed
80− "notReady" -> Just LPSNotReady
81− "processing" -> Just LPSProcessing
82− "ready" -> Just LPSReady
83− _ -> Nothing
84−
85−instance ToText LayerProcessingStatus where
86− toText = \case
76+instance FromHttpApiData LayerProcessingStatus where
77+ parseQueryParam = \case
78+ "complete" -> Right LPSComplete
79+ "failed" -> Right LPSFailed
80+ "notReady" -> Right LPSNotReady
81+ "processing" -> Right LPSProcessing
82+ "ready" -> Right LPSReady
83+ x -> Left ("Unable to parse LayerProcessingStatus from: " <> x)
84+
85+instance ToHttpApiData LayerProcessingStatus where
86+ toQueryParam = \case
8787 LPSComplete -> "complete"
8888 LPSFailed -> "failed"
8989 LPSNotReady -> "notReady"
@@ -104,13 +104,13 @@ data ScaledShapeShape
104104
105105instance Hashable ScaledShapeShape
106106
107−instance FromText ScaledShapeShape where
108− fromText = \case
109− "circle" -> Just Circle
110− _ -> Nothing
107+instance FromHttpApiData ScaledShapeShape where
108+ parseQueryParam = \case
109+ "circle" -> Right Circle
110+ x -> Left ("Unable to parse ScaledShapeShape from: " <> x)
111111
112−instance ToText ScaledShapeShape where
113− toText = \case
112+instance ToHttpApiData ScaledShapeShape where
113+ toQueryParam = \case
114114 Circle -> "circle"
115115
116116instance FromJSON ScaledShapeShape where
@@ -127,13 +127,13 @@ data GeoJSONMultiLineStringType
127127
128128instance Hashable GeoJSONMultiLineStringType
129129
130−instance FromText GeoJSONMultiLineStringType where
131− fromText = \case
132− "MultiLineString" -> Just MultiLineString
133− _ -> Nothing
130+instance FromHttpApiData GeoJSONMultiLineStringType where
131+ parseQueryParam = \case
132+ "MultiLineString" -> Right MultiLineString
133+ x -> Left ("Unable to parse GeoJSONMultiLineStringType from: " <> x)
134134
135−instance ToText GeoJSONMultiLineStringType where
136− toText = \case
135+instance ToHttpApiData GeoJSONMultiLineStringType where
136+ toQueryParam = \case
137137 MultiLineString -> "MultiLineString"
138138
139139instance FromJSON GeoJSONMultiLineStringType where
@@ -156,16 +156,16 @@ data PermissionRole
156156
157157instance Hashable PermissionRole
158158
159−instance FromText PermissionRole where
160− fromText = \case
161− "owner" -> Just Owner
162− "reader" -> Just Reader
163− "viewer" -> Just Viewer
164− "writer" -> Just Writer
165− _ -> Nothing
159+instance FromHttpApiData PermissionRole where
160+ parseQueryParam = \case
161+ "owner" -> Right Owner
162+ "reader" -> Right Reader
163+ "viewer" -> Right Viewer
164+ "writer" -> Right Writer
165+ x -> Left ("Unable to parse PermissionRole from: " <> x)
166166
167−instance ToText PermissionRole where
168− toText = \case
167+instance ToHttpApiData PermissionRole where
168+ toQueryParam = \case
169169 Owner -> "owner"
170170 Reader -> "reader"
171171 Viewer -> "viewer"
@@ -195,18 +195,18 @@ data AcquisitionTimePrecision
195195
196196instance Hashable AcquisitionTimePrecision
197197
198−instance FromText AcquisitionTimePrecision where
199− fromText = \case
200− "day" -> Just Day
201− "hour" -> Just Hour
202− "minute" -> Just Minute
203− "month" -> Just Month
204− "second" -> Just Second
205− "year" -> Just Year
206− _ -> Nothing
207−
208−instance ToText AcquisitionTimePrecision where
209− toText = \case
198+instance FromHttpApiData AcquisitionTimePrecision where
199+ parseQueryParam = \case
200+ "day" -> Right Day
201+ "hour" -> Right Hour
202+ "minute" -> Right Minute
203+ "month" -> Right Month
204+ "second" -> Right Second
205+ "year" -> Right Year
206+ x -> Left ("Unable to parse AcquisitionTimePrecision from: " <> x)
207+
208+instance ToHttpApiData AcquisitionTimePrecision where
209+ toQueryParam = \case
210210 Day -> "day"
211211 Hour -> "hour"
212212 Minute -> "minute"
@@ -231,14 +231,14 @@ data ScalingFunctionScalingType
231231
232232instance Hashable ScalingFunctionScalingType
233233
234−instance FromText ScalingFunctionScalingType where
235− fromText = \case
236− "linear" -> Just Linear
237− "sqrt" -> Just Sqrt
238− _ -> Nothing
234+instance FromHttpApiData ScalingFunctionScalingType where
235+ parseQueryParam = \case
236+ "linear" -> Right Linear
237+ "sqrt" -> Right Sqrt
238+ x -> Left ("Unable to parse ScalingFunctionScalingType from: " <> x)
239239
240−instance ToText ScalingFunctionScalingType where
241− toText = \case
240+instance ToHttpApiData ScalingFunctionScalingType where
241+ toQueryParam = \case
242242 Linear -> "linear"
243243 Sqrt -> "sqrt"
244244
@@ -264,15 +264,15 @@ data AssetsListRole
264264
265265instance Hashable AssetsListRole
266266
267−instance FromText AssetsListRole where
268− fromText = \case
269− "owner" -> Just ALROwner
270− "reader" -> Just ALRReader
271− "writer" -> Just ALRWriter
272− _ -> Nothing
267+instance FromHttpApiData AssetsListRole where
268+ parseQueryParam = \case
269+ "owner" -> Right ALROwner
270+ "reader" -> Right ALRReader
271+ "writer" -> Right ALRWriter
272+ x -> Left ("Unable to parse AssetsListRole from: " <> x)
273273
274−instance ToText AssetsListRole where
275− toText = \case
274+instance ToHttpApiData AssetsListRole where
275+ toQueryParam = \case
276276 ALROwner -> "owner"
277277 ALRReader -> "reader"
278278 ALRWriter -> "writer"
@@ -303,17 +303,17 @@ data RastersListProcessingStatus
303303
304304instance Hashable RastersListProcessingStatus
305305
306−instance FromText RastersListProcessingStatus where
307− fromText = \case
308− "complete" -> Just RLPSComplete
309− "failed" -> Just RLPSFailed
310− "notReady" -> Just RLPSNotReady
311− "processing" -> Just RLPSProcessing
312− "ready" -> Just RLPSReady
313− _ -> Nothing
314−
315−instance ToText RastersListProcessingStatus where
316− toText = \case
306+instance FromHttpApiData RastersListProcessingStatus where
307+ parseQueryParam = \case
308+ "complete" -> Right RLPSComplete
309+ "failed" -> Right RLPSFailed
310+ "notReady" -> Right RLPSNotReady
311+ "processing" -> Right RLPSProcessing
312+ "ready" -> Right RLPSReady
313+ x -> Left ("Unable to parse RastersListProcessingStatus from: " <> x)
314+
315+instance ToHttpApiData RastersListProcessingStatus where
316+ toQueryParam = \case
317317 RLPSComplete -> "complete"
318318 RLPSFailed -> "failed"
319319 RLPSNotReady -> "notReady"
@@ -346,17 +346,17 @@ data LayersListProcessingStatus
346346
347347instance Hashable LayersListProcessingStatus
348348
349−instance FromText LayersListProcessingStatus where
350− fromText = \case
351− "complete" -> Just LLPSComplete
352− "failed" -> Just LLPSFailed
353− "notReady" -> Just LLPSNotReady
354− "processing" -> Just LLPSProcessing
355− "ready" -> Just LLPSReady
356− _ -> Nothing
357−
358−instance ToText LayersListProcessingStatus where
359− toText = \case
349+instance FromHttpApiData LayersListProcessingStatus where
350+ parseQueryParam = \case
351+ "complete" -> Right LLPSComplete
352+ "failed" -> Right LLPSFailed
353+ "notReady" -> Right LLPSNotReady
354+ "processing" -> Right LLPSProcessing
355+ "ready" -> Right LLPSReady
356+ x -> Left ("Unable to parse LayersListProcessingStatus from: " <> x)
357+
358+instance ToHttpApiData LayersListProcessingStatus where
359+ toQueryParam = \case
360360 LLPSComplete -> "complete"
361361 LLPSFailed -> "failed"
362362 LLPSNotReady -> "notReady"
@@ -385,15 +385,15 @@ data RasterCollectionsRastersListRole
385385
386386instance Hashable RasterCollectionsRastersListRole
387387
388−instance FromText RasterCollectionsRastersListRole where
389− fromText = \case
390− "owner" -> Just RCRLROwner
391− "reader" -> Just RCRLRReader
392− "writer" -> Just RCRLRWriter
393− _ -> Nothing
388+instance FromHttpApiData RasterCollectionsRastersListRole where
389+ parseQueryParam = \case
390+ "owner" -> Right RCRLROwner
391+ "reader" -> Right RCRLRReader
392+ "writer" -> Right RCRLRWriter
393+ x -> Left ("Unable to parse RasterCollectionsRastersListRole from: " <> x)
394394
395−instance ToText RasterCollectionsRastersListRole where
396− toText = \case
395+instance ToHttpApiData RasterCollectionsRastersListRole where
396+ toQueryParam = \case
397397 RCRLROwner -> "owner"
398398 RCRLRReader -> "reader"
399399 RCRLRWriter -> "writer"
@@ -412,13 +412,13 @@ data GeoJSONMultiPolygonType
412412
413413instance Hashable GeoJSONMultiPolygonType
414414
415−instance FromText GeoJSONMultiPolygonType where
416− fromText = \case
417− "MultiPolygon" -> Just MultiPolygon
418− _ -> Nothing
415+instance FromHttpApiData GeoJSONMultiPolygonType where
416+ parseQueryParam = \case
417+ "MultiPolygon" -> Right MultiPolygon
418+ x -> Left ("Unable to parse GeoJSONMultiPolygonType from: " <> x)
419419
420−instance ToText GeoJSONMultiPolygonType where
421− toText = \case
420+instance ToHttpApiData GeoJSONMultiPolygonType where
421+ toQueryParam = \case
422422 MultiPolygon -> "MultiPolygon"
423423
424424instance FromJSON GeoJSONMultiPolygonType where
@@ -435,13 +435,13 @@ data GeoJSONMultiPointType
435435
436436instance Hashable GeoJSONMultiPointType
437437
438−instance FromText GeoJSONMultiPointType where
439− fromText = \case
440− "MultiPoint" -> Just MultiPoint
441− _ -> Nothing
438+instance FromHttpApiData GeoJSONMultiPointType where
439+ parseQueryParam = \case
440+ "MultiPoint" -> Right MultiPoint
441+ x -> Left ("Unable to parse GeoJSONMultiPointType from: " <> x)
442442
443−instance ToText GeoJSONMultiPointType where
444− toText = \case
443+instance ToHttpApiData GeoJSONMultiPointType where
444+ toQueryParam = \case
445445 MultiPoint -> "MultiPoint"
446446
447447instance FromJSON GeoJSONMultiPointType where
@@ -462,14 +462,14 @@ data PublishedLayerLayerType
462462
463463instance Hashable PublishedLayerLayerType
464464
465−instance FromText PublishedLayerLayerType where
466− fromText = \case
467− "image" -> Just Image
468− "vector" -> Just Vector
469− _ -> Nothing
465+instance FromHttpApiData PublishedLayerLayerType where
466+ parseQueryParam = \case
467+ "image" -> Right Image
468+ "vector" -> Right Vector
469+ x -> Left ("Unable to parse PublishedLayerLayerType from: " <> x)
470470
471−instance ToText PublishedLayerLayerType where
472− toText = \case
471+instance ToHttpApiData PublishedLayerLayerType where
472+ toQueryParam = \case
473473 Image -> "image"
474474 Vector -> "vector"
475475
@@ -499,17 +499,17 @@ data TablesListProcessingStatus
499499
500500instance Hashable TablesListProcessingStatus
501501
502−instance FromText TablesListProcessingStatus where
503− fromText = \case
504− "complete" -> Just TLPSComplete
505− "failed" -> Just TLPSFailed
506− "notReady" -> Just TLPSNotReady
507− "processing" -> Just TLPSProcessing
508− "ready" -> Just TLPSReady
509− _ -> Nothing
510−
511−instance ToText TablesListProcessingStatus where
512− toText = \case
502+instance FromHttpApiData TablesListProcessingStatus where
503+ parseQueryParam = \case
504+ "complete" -> Right TLPSComplete
505+ "failed" -> Right TLPSFailed
506+ "notReady" -> Right TLPSNotReady
507+ "processing" -> Right TLPSProcessing
508+ "ready" -> Right TLPSReady
509+ x -> Left ("Unable to parse TablesListProcessingStatus from: " <> x)
510+
511+instance ToHttpApiData TablesListProcessingStatus where
512+ toQueryParam = \case
513513 TLPSComplete -> "complete"
514514 TLPSFailed -> "failed"
515515 TLPSNotReady -> "notReady"
@@ -534,14 +534,14 @@ data LayerLayerType
534534
535535instance Hashable LayerLayerType
536536
537−instance FromText LayerLayerType where
538− fromText = \case
539− "image" -> Just LLTImage
540− "vector" -> Just LLTVector
541− _ -> Nothing
537+instance FromHttpApiData LayerLayerType where
538+ parseQueryParam = \case
539+ "image" -> Right LLTImage
540+ "vector" -> Right LLTVector
541+ x -> Left ("Unable to parse LayerLayerType from: " <> x)
542542
543−instance ToText LayerLayerType where
544− toText = \case
543+instance ToHttpApiData LayerLayerType where
544+ toQueryParam = \case
545545 LLTImage -> "image"
546546 LLTVector -> "vector"
547547
@@ -563,15 +563,15 @@ data PermissionType
563563
564564instance Hashable PermissionType
565565
566−instance FromText PermissionType where
567− fromText = \case
568− "anyone" -> Just Anyone
569− "group" -> Just Group
570− "user" -> Just User
571− _ -> Nothing
566+instance FromHttpApiData PermissionType where
567+ parseQueryParam = \case
568+ "anyone" -> Right Anyone
569+ "group" -> Right Group
570+ "user" -> Right User
571+ x -> Left ("Unable to parse PermissionType from: " <> x)
572572
573−instance ToText PermissionType where
574− toText = \case
573+instance ToHttpApiData PermissionType where
574+ toQueryParam = \case
575575 Anyone -> "anyone"
576576 Group -> "group"
577577 User -> "user"
@@ -599,17 +599,17 @@ data MapProcessingStatus
599599
600600instance Hashable MapProcessingStatus
601601
602−instance FromText MapProcessingStatus where
603− fromText = \case
604− "complete" -> Just MPSComplete
605− "failed" -> Just MPSFailed
606− "notReady" -> Just MPSNotReady
607− "processing" -> Just MPSProcessing
608− "ready" -> Just MPSReady
609− _ -> Nothing
610−
611−instance ToText MapProcessingStatus where
612− toText = \case
602+instance FromHttpApiData MapProcessingStatus where
603+ parseQueryParam = \case
604+ "complete" -> Right MPSComplete
605+ "failed" -> Right MPSFailed
606+ "notReady" -> Right MPSNotReady
607+ "processing" -> Right MPSProcessing
608+ "ready" -> Right MPSReady
609+ x -> Left ("Unable to parse MapProcessingStatus from: " <> x)
610+
611+instance ToHttpApiData MapProcessingStatus where
612+ toQueryParam = \case
613613 MPSComplete -> "complete"
614614 MPSFailed -> "failed"
615615 MPSNotReady -> "notReady"
@@ -637,14 +637,14 @@ data MapsGetVersion
637637
638638instance Hashable MapsGetVersion
639639
640−instance FromText MapsGetVersion where
641− fromText = \case
642− "draft" -> Just Draft
643− "published" -> Just Published
644− _ -> Nothing
640+instance FromHttpApiData MapsGetVersion where
641+ parseQueryParam = \case
642+ "draft" -> Right Draft
643+ "published" -> Right Published
644+ x -> Left ("Unable to parse MapsGetVersion from: " <> x)
645645
646−instance ToText MapsGetVersion where
647− toText = \case
646+instance ToHttpApiData MapsGetVersion where
647+ toQueryParam = \case
648648 Draft -> "draft"
649649 Published -> "published"
650650
@@ -670,15 +670,15 @@ data TablesListRole
670670
671671instance Hashable TablesListRole
672672
673−instance FromText TablesListRole where
674− fromText = \case
675− "owner" -> Just TLROwner
676− "reader" -> Just TLRReader
677− "writer" -> Just TLRWriter
678− _ -> Nothing
673+instance FromHttpApiData TablesListRole where
674+ parseQueryParam = \case
675+ "owner" -> Right TLROwner
676+ "reader" -> Right TLRReader
677+ "writer" -> Right TLRWriter
678+ x -> Left ("Unable to parse TablesListRole from: " <> x)
679679
680−instance ToText TablesListRole where
681− toText = \case
680+instance ToHttpApiData TablesListRole where
681+ toQueryParam = \case
682682 TLROwner -> "owner"
683683 TLRReader -> "reader"
684684 TLRWriter -> "writer"
@@ -697,13 +697,13 @@ data VectorStyleType
697697
698698instance Hashable VectorStyleType
699699
700−instance FromText VectorStyleType where
701− fromText = \case
702− "displayRule" -> Just VSTDisplayRule
703− _ -> Nothing
700+instance FromHttpApiData VectorStyleType where
701+ parseQueryParam = \case
702+ "displayRule" -> Right VSTDisplayRule
703+ x -> Left ("Unable to parse VectorStyleType from: " <> x)
704704
705−instance ToText VectorStyleType where
706− toText = \case
705+instance ToHttpApiData VectorStyleType where
706+ toQueryParam = \case
707707 VSTDisplayRule -> "displayRule"
708708
709709instance FromJSON VectorStyleType where
@@ -720,13 +720,13 @@ data GeoJSONLineStringType
720720
721721instance Hashable GeoJSONLineStringType
722722
723−instance FromText GeoJSONLineStringType where
724− fromText = \case
725− "LineString" -> Just LineString
726− _ -> Nothing
723+instance FromHttpApiData GeoJSONLineStringType where
724+ parseQueryParam = \case
725+ "LineString" -> Right LineString
726+ x -> Left ("Unable to parse GeoJSONLineStringType from: " <> x)
727727
728−instance ToText GeoJSONLineStringType where
729− toText = \case
728+instance ToHttpApiData GeoJSONLineStringType where
729+ toQueryParam = \case
730730 LineString -> "LineString"
731731
732732instance FromJSON GeoJSONLineStringType where
@@ -745,14 +745,14 @@ data LayerPublishingStatus
745745
746746instance Hashable LayerPublishingStatus
747747
748−instance FromText LayerPublishingStatus where
749− fromText = \case
750− "notPublished" -> Just LPSNotPublished
751− "published" -> Just LPSPublished
752− _ -> Nothing
748+instance FromHttpApiData LayerPublishingStatus where
749+ parseQueryParam = \case
750+ "notPublished" -> Right LPSNotPublished
751+ "published" -> Right LPSPublished
752+ x -> Left ("Unable to parse LayerPublishingStatus from: " <> x)
753753
754−instance ToText LayerPublishingStatus where
755− toText = \case
754+instance ToHttpApiData LayerPublishingStatus where
755+ toQueryParam = \case
756756 LPSNotPublished -> "notPublished"
757757 LPSPublished -> "published"
758758
@@ -770,13 +770,13 @@ data MapKmlLinkType
770770
771771instance Hashable MapKmlLinkType
772772
773−instance FromText MapKmlLinkType where
774− fromText = \case
775− "kmlLink" -> Just KmlLink
776− _ -> Nothing
773+instance FromHttpApiData MapKmlLinkType where
774+ parseQueryParam = \case
775+ "kmlLink" -> Right KmlLink
776+ x -> Left ("Unable to parse MapKmlLinkType from: " <> x)
777777
778−instance ToText MapKmlLinkType where
779− toText = \case
778+instance ToHttpApiData MapKmlLinkType where
779+ toQueryParam = \case
780780 KmlLink -> "kmlLink"
781781
782782instance FromJSON MapKmlLinkType where
@@ -797,14 +797,14 @@ data LayerDatasourceType
797797
798798instance Hashable LayerDatasourceType
799799
800−instance FromText LayerDatasourceType where
801− fromText = \case
802− "image" -> Just LDTImage
803− "table" -> Just LDTTable
804− _ -> Nothing
800+instance FromHttpApiData LayerDatasourceType where
801+ parseQueryParam = \case
802+ "image" -> Right LDTImage
803+ "table" -> Right LDTTable
804+ x -> Left ("Unable to parse LayerDatasourceType from: " <> x)
805805
806−instance ToText LayerDatasourceType where
807− toText = \case
806+instance ToHttpApiData LayerDatasourceType where
807+ toQueryParam = \case
808808 LDTImage -> "image"
809809 LDTTable -> "table"
810810
@@ -822,13 +822,13 @@ data GeoJSONGeometryCollectionType
822822
823823instance Hashable GeoJSONGeometryCollectionType
824824
825−instance FromText GeoJSONGeometryCollectionType where
826− fromText = \case
827− "GeometryCollection" -> Just GeometryCollection
828− _ -> Nothing
825+instance FromHttpApiData GeoJSONGeometryCollectionType where
826+ parseQueryParam = \case
827+ "GeometryCollection" -> Right GeometryCollection
828+ x -> Left ("Unable to parse GeoJSONGeometryCollectionType from: " <> x)
829829
830−instance ToText GeoJSONGeometryCollectionType where
831− toText = \case
830+instance ToHttpApiData GeoJSONGeometryCollectionType where
831+ toQueryParam = \case
832832 GeometryCollection -> "GeometryCollection"
833833
834834instance FromJSON GeoJSONGeometryCollectionType where
@@ -845,13 +845,13 @@ data GeoJSONPointType
845845
846846instance Hashable GeoJSONPointType
847847
848−instance FromText GeoJSONPointType where
849− fromText = \case
850− "Point" -> Just Point
851− _ -> Nothing
848+instance FromHttpApiData GeoJSONPointType where
849+ parseQueryParam = \case
850+ "Point" -> Right Point
851+ x -> Left ("Unable to parse GeoJSONPointType from: " <> x)
852852
853−instance ToText GeoJSONPointType where
854− toText = \case
853+instance ToHttpApiData GeoJSONPointType where
854+ toQueryParam = \case
855855 Point -> "Point"
856856
857857instance FromJSON GeoJSONPointType where
@@ -868,13 +868,13 @@ data GeoJSONPolygonType
868868
869869instance Hashable GeoJSONPolygonType
870870
871−instance FromText GeoJSONPolygonType where
872− fromText = \case
873− "Polygon" -> Just Polygon
874− _ -> Nothing
871+instance FromHttpApiData GeoJSONPolygonType where
872+ parseQueryParam = \case
873+ "Polygon" -> Right Polygon
874+ x -> Left ("Unable to parse GeoJSONPolygonType from: " <> x)
875875
876−instance ToText GeoJSONPolygonType where
877− toText = \case
876+instance ToHttpApiData GeoJSONPolygonType where
877+ toQueryParam = \case
878878 Polygon -> "Polygon"
879879
880880instance FromJSON GeoJSONPolygonType where
@@ -898,14 +898,14 @@ data LayersGetVersion
898898
899899instance Hashable LayersGetVersion
900900
901−instance FromText LayersGetVersion where
902− fromText = \case
903− "draft" -> Just LGVDraft
904− "published" -> Just LGVPublished
905− _ -> Nothing
901+instance FromHttpApiData LayersGetVersion where
902+ parseQueryParam = \case
903+ "draft" -> Right LGVDraft
904+ "published" -> Right LGVPublished
905+ x -> Left ("Unable to parse LayersGetVersion from: " <> x)
906906
907−instance ToText LayersGetVersion where
908− toText = \case
907+instance ToHttpApiData LayersGetVersion where
908+ toQueryParam = \case
909909 LGVDraft -> "draft"
910910 LGVPublished -> "published"
911911
@@ -923,13 +923,13 @@ data MapLayerType
923923
924924instance Hashable MapLayerType
925925
926−instance FromText MapLayerType where
927− fromText = \case
928− "layer" -> Just MLTLayer
929− _ -> Nothing
926+instance FromHttpApiData MapLayerType where
927+ parseQueryParam = \case
928+ "layer" -> Right MLTLayer
929+ x -> Left ("Unable to parse MapLayerType from: " <> x)
930930
931−instance ToText MapLayerType where
932− toText = \case
931+instance ToHttpApiData MapLayerType where
932+ toQueryParam = \case
933933 MLTLayer -> "layer"
934934
935935instance FromJSON MapLayerType where
@@ -948,14 +948,14 @@ data LabelStyleFontWeight
948948
949949instance Hashable LabelStyleFontWeight
950950
951−instance FromText LabelStyleFontWeight where
952− fromText = \case
953− "bold" -> Just Bold
954− "normal" -> Just Normal
955− _ -> Nothing
951+instance FromHttpApiData LabelStyleFontWeight where
952+ parseQueryParam = \case
953+ "bold" -> Right Bold
954+ "normal" -> Right Normal
955+ x -> Left ("Unable to parse LabelStyleFontWeight from: " <> x)
956956
957−instance ToText LabelStyleFontWeight where
958− toText = \case
957+instance ToHttpApiData LabelStyleFontWeight where
958+ toQueryParam = \case
959959 Bold -> "bold"
960960 Normal -> "normal"
961961
@@ -973,13 +973,13 @@ data MapFolderType
973973
974974instance Hashable MapFolderType
975975
976−instance FromText MapFolderType where
977− fromText = \case
978− "folder" -> Just Folder
979− _ -> Nothing
976+instance FromHttpApiData MapFolderType where
977+ parseQueryParam = \case
978+ "folder" -> Right Folder
979+ x -> Left ("Unable to parse MapFolderType from: " <> x)
980980
981−instance ToText MapFolderType where
982− toText = \case
981+instance ToHttpApiData MapFolderType where
982+ toQueryParam = \case
983983 Folder -> "folder"
984984
985985instance FromJSON MapFolderType where
@@ -1004,17 +1004,17 @@ data RasterCollectionProcessingStatus
10041004
10051005instance Hashable RasterCollectionProcessingStatus
10061006
1007−instance FromText RasterCollectionProcessingStatus where
1008− fromText = \case
1009− "complete" -> Just RCPSComplete
1010− "failed" -> Just RCPSFailed
1011− "notReady" -> Just RCPSNotReady
1012− "processing" -> Just RCPSProcessing
1013− "ready" -> Just RCPSReady
1014− _ -> Nothing
1015−
1016−instance ToText RasterCollectionProcessingStatus where
1017− toText = \case
1007+instance FromHttpApiData RasterCollectionProcessingStatus where
1008+ parseQueryParam = \case
1009+ "complete" -> Right RCPSComplete
1010+ "failed" -> Right RCPSFailed
1011+ "notReady" -> Right RCPSNotReady
1012+ "processing" -> Right RCPSProcessing
1013+ "ready" -> Right RCPSReady
1014+ x -> Left ("Unable to parse RasterCollectionProcessingStatus from: " <> x)
1015+
1016+instance ToHttpApiData RasterCollectionProcessingStatus where
1017+ toQueryParam = \case
10181018 RCPSComplete -> "complete"
10191019 RCPSFailed -> "failed"
10201020 RCPSNotReady -> "notReady"
@@ -1039,14 +1039,14 @@ data TablesFeaturesListVersion
10391039
10401040instance Hashable TablesFeaturesListVersion
10411041
1042−instance FromText TablesFeaturesListVersion where
1043− fromText = \case
1044− "draft" -> Just TFLVDraft
1045− "published" -> Just TFLVPublished
1046− _ -> Nothing
1042+instance FromHttpApiData TablesFeaturesListVersion where
1043+ parseQueryParam = \case
1044+ "draft" -> Right TFLVDraft
1045+ "published" -> Right TFLVPublished
1046+ x -> Left ("Unable to parse TablesFeaturesListVersion from: " <> x)
10471047
1048−instance ToText TablesFeaturesListVersion where
1049− toText = \case
1048+instance ToHttpApiData TablesFeaturesListVersion where
1049+ toQueryParam = \case
10501050 TFLVDraft -> "draft"
10511051 TFLVPublished -> "published"
10521052
@@ -1073,16 +1073,16 @@ data MapsListProcessingStatus
10731073
10741074instance Hashable MapsListProcessingStatus
10751075
1076−instance FromText MapsListProcessingStatus where
1077− fromText = \case
1078− "complete" -> Just MLPSComplete
1079− "failed" -> Just MLPSFailed
1080− "notReady" -> Just MLPSNotReady
1081− "processing" -> Just MLPSProcessing
1082− _ -> Nothing
1076+instance FromHttpApiData MapsListProcessingStatus where
1077+ parseQueryParam = \case
1078+ "complete" -> Right MLPSComplete
1079+ "failed" -> Right MLPSFailed
1080+ "notReady" -> Right MLPSNotReady
1081+ "processing" -> Right MLPSProcessing
1082+ x -> Left ("Unable to parse MapsListProcessingStatus from: " <> x)
10831083
1084−instance ToText MapsListProcessingStatus where
1085− toText = \case
1084+instance ToHttpApiData MapsListProcessingStatus where
1085+ toQueryParam = \case
10861086 MLPSComplete -> "complete"
10871087 MLPSFailed -> "failed"
10881088 MLPSNotReady -> "notReady"
@@ -1104,14 +1104,14 @@ data LabelStyleFontStyle
11041104
11051105instance Hashable LabelStyleFontStyle
11061106
1107−instance FromText LabelStyleFontStyle where
1108− fromText = \case
1109− "italic" -> Just LSFSItalic
1110− "normal" -> Just LSFSNormal
1111− _ -> Nothing
1107+instance FromHttpApiData LabelStyleFontStyle where
1108+ parseQueryParam = \case
1109+ "italic" -> Right LSFSItalic
1110+ "normal" -> Right LSFSNormal
1111+ x -> Left ("Unable to parse LabelStyleFontStyle from: " <> x)
11121112
1113−instance ToText LabelStyleFontStyle where
1114− toText = \case
1113+instance ToHttpApiData LabelStyleFontStyle where
1114+ toQueryParam = \case
11151115 LSFSItalic -> "italic"
11161116 LSFSNormal -> "normal"
11171117
@@ -1138,17 +1138,17 @@ data AssetType
11381138
11391139instance Hashable AssetType
11401140
1141−instance FromText AssetType where
1142− fromText = \case
1143− "layer" -> Just ATLayer
1144− "map" -> Just ATMap
1145− "raster" -> Just ATRaster
1146− "rasterCollection" -> Just ATRasterCollection
1147− "table" -> Just ATTable
1148− _ -> Nothing
1149−
1150−instance ToText AssetType where
1151− toText = \case
1141+instance FromHttpApiData AssetType where
1142+ parseQueryParam = \case
1143+ "layer" -> Right ATLayer
1144+ "map" -> Right ATMap
1145+ "raster" -> Right ATRaster
1146+ "rasterCollection" -> Right ATRasterCollection
1147+ "table" -> Right ATTable
1148+ x -> Left ("Unable to parse AssetType from: " <> x)
1149+
1150+instance ToHttpApiData AssetType where
1151+ toQueryParam = \case
11521152 ATLayer -> "layer"
11531153 ATMap -> "map"
11541154 ATRaster -> "raster"
@@ -1169,13 +1169,13 @@ data RasterRasterType
11691169
11701170instance Hashable RasterRasterType
11711171
1172−instance FromText RasterRasterType where
1173− fromText = \case
1174− "image" -> Just RRTImage
1175− _ -> Nothing
1172+instance FromHttpApiData RasterRasterType where
1173+ parseQueryParam = \case
1174+ "image" -> Right RRTImage
1175+ x -> Left ("Unable to parse RasterRasterType from: " <> x)
11761176
1177−instance ToText RasterRasterType where
1178− toText = \case
1177+instance ToHttpApiData RasterRasterType where
1178+ toQueryParam = \case
11791179 RRTImage -> "image"
11801180
11811181instance FromJSON RasterRasterType where
@@ -1200,15 +1200,15 @@ data RasterCollectionsListRole
12001200
12011201instance Hashable RasterCollectionsListRole
12021202
1203−instance FromText RasterCollectionsListRole where
1204− fromText = \case
1205− "owner" -> Just RCLROwner
1206− "reader" -> Just RCLRReader
1207− "writer" -> Just RCLRWriter
1208− _ -> Nothing
1203+instance FromHttpApiData RasterCollectionsListRole where
1204+ parseQueryParam = \case
1205+ "owner" -> Right RCLROwner
1206+ "reader" -> Right RCLRReader
1207+ "writer" -> Right RCLRWriter
1208+ x -> Left ("Unable to parse RasterCollectionsListRole from: " <> x)
12091209
1210−instance ToText RasterCollectionsListRole where
1211− toText = \case
1210+instance ToHttpApiData RasterCollectionsListRole where
1211+ toQueryParam = \case
12121212 RCLROwner -> "owner"
12131213 RCLRReader -> "reader"
12141214 RCLRWriter -> "writer"
@@ -1243,21 +1243,21 @@ data FilterOperator
12431243
12441244instance Hashable FilterOperator
12451245
1246−instance FromText FilterOperator where
1247− fromText = \case
1248− "!=" -> Just NotEqual
1249− "<" -> Just Less
1250− "<=" -> Just LessOrEqual
1251− "==" -> Just Equal
1252− ">" -> Just Greater
1253− ">=" -> Just GreaterEqual
1254− "contains" -> Just Contains
1255− "endsWith" -> Just EndsWith
1256− "startsWith" -> Just StartsWith
1257− _ -> Nothing
1258−
1259−instance ToText FilterOperator where
1260− toText = \case
1246+instance FromHttpApiData FilterOperator where
1247+ parseQueryParam = \case
1248+ "!=" -> Right NotEqual
1249+ "<" -> Right Less
1250+ "<=" -> Right LessOrEqual
1251+ "==" -> Right Equal
1252+ ">" -> Right Greater
1253+ ">=" -> Right GreaterEqual
1254+ "contains" -> Right Contains
1255+ "endsWith" -> Right EndsWith
1256+ "startsWith" -> Right StartsWith
1257+ x -> Left ("Unable to parse FilterOperator from: " <> x)
1258+
1259+instance ToHttpApiData FilterOperator where
1260+ toQueryParam = \case
12611261 NotEqual -> "!="
12621262 Less -> "<"
12631263 LessOrEqual -> "<="
@@ -1296,20 +1296,20 @@ data TableColumnType
12961296
12971297instance Hashable TableColumnType
12981298
1299−instance FromText TableColumnType where
1300− fromText = \case
1301− "datetime" -> Just Datetime
1302− "double" -> Just Double
1303− "integer" -> Just Integer
1304− "lineStrings" -> Just LineStrings
1305− "mixedGeometry" -> Just MixedGeometry
1306− "points" -> Just Points
1307− "polygons" -> Just Polygons
1308− "string" -> Just String
1309− _ -> Nothing
1310−
1311−instance ToText TableColumnType where
1312− toText = \case
1299+instance FromHttpApiData TableColumnType where
1300+ parseQueryParam = \case
1301+ "datetime" -> Right Datetime
1302+ "double" -> Right Double
1303+ "integer" -> Right Integer
1304+ "lineStrings" -> Right LineStrings
1305+ "mixedGeometry" -> Right MixedGeometry
1306+ "points" -> Right Points
1307+ "polygons" -> Right Polygons
1308+ "string" -> Right String
1309+ x -> Left ("Unable to parse TableColumnType from: " <> x)
1310+
1311+instance ToHttpApiData TableColumnType where
1312+ toQueryParam = \case
13131313 Datetime -> "datetime"
13141314 Double -> "double"
13151315 Integer -> "integer"
@@ -1345,17 +1345,17 @@ data RasterCollectionsListProcessingStatus
13451345
13461346instance Hashable RasterCollectionsListProcessingStatus
13471347
1348−instance FromText RasterCollectionsListProcessingStatus where
1349− fromText = \case
1350− "complete" -> Just RCLPSComplete
1351− "failed" -> Just RCLPSFailed
1352− "notReady" -> Just RCLPSNotReady
1353− "processing" -> Just RCLPSProcessing
1354− "ready" -> Just RCLPSReady
1355− _ -> Nothing
1356−
1357−instance ToText RasterCollectionsListProcessingStatus where
1358− toText = \case
1348+instance FromHttpApiData RasterCollectionsListProcessingStatus where
1349+ parseQueryParam = \case
1350+ "complete" -> Right RCLPSComplete
1351+ "failed" -> Right RCLPSFailed
1352+ "notReady" -> Right RCLPSNotReady
1353+ "processing" -> Right RCLPSProcessing
1354+ "ready" -> Right RCLPSReady
1355+ x -> Left ("Unable to parse RasterCollectionsListProcessingStatus from: " <> x)
1356+
1357+instance ToHttpApiData RasterCollectionsListProcessingStatus where
1358+ toQueryParam = \case
13591359 RCLPSComplete -> "complete"
13601360 RCLPSFailed -> "failed"
13611361 RCLPSNotReady -> "notReady"
@@ -1384,15 +1384,15 @@ data LayersListRole
13841384
13851385instance Hashable LayersListRole
13861386
1387−instance FromText LayersListRole where
1388− fromText = \case
1389− "owner" -> Just LLROwner
1390− "reader" -> Just LLRReader
1391− "writer" -> Just LLRWriter
1392− _ -> Nothing
1387+instance FromHttpApiData LayersListRole where
1388+ parseQueryParam = \case
1389+ "owner" -> Right LLROwner
1390+ "reader" -> Right LLRReader
1391+ "writer" -> Right LLRWriter
1392+ x -> Left ("Unable to parse LayersListRole from: " <> x)
13931393
1394−instance ToText LayersListRole where
1395− toText = \case
1394+instance ToHttpApiData LayersListRole where
1395+ toQueryParam = \case
13961396 LLROwner -> "owner"
13971397 LLRReader -> "reader"
13981398 LLRWriter -> "writer"
@@ -1415,14 +1415,14 @@ data TablesFeaturesGetVersion
14151415
14161416instance Hashable TablesFeaturesGetVersion
14171417
1418−instance FromText TablesFeaturesGetVersion where
1419− fromText = \case
1420− "draft" -> Just TFGVDraft
1421− "published" -> Just TFGVPublished
1422− _ -> Nothing
1418+instance FromHttpApiData TablesFeaturesGetVersion where
1419+ parseQueryParam = \case
1420+ "draft" -> Right TFGVDraft
1421+ "published" -> Right TFGVPublished
1422+ x -> Left ("Unable to parse TablesFeaturesGetVersion from: " <> x)
14231423
1424−instance ToText TablesFeaturesGetVersion where
1425− toText = \case
1424+instance ToHttpApiData TablesFeaturesGetVersion where
1425+ toQueryParam = \case
14261426 TFGVDraft -> "draft"
14271427 TFGVPublished -> "published"
14281428
@@ -1440,13 +1440,13 @@ data RasterCollectionRasterType
14401440
14411441instance Hashable RasterCollectionRasterType
14421442
1443−instance FromText RasterCollectionRasterType where
1444− fromText = \case
1445− "image" -> Just RCRTImage
1446− _ -> Nothing
1443+instance FromHttpApiData RasterCollectionRasterType where
1444+ parseQueryParam = \case
1445+ "image" -> Right RCRTImage
1446+ x -> Left ("Unable to parse RasterCollectionRasterType from: " <> x)
14471447
1448−instance ToText RasterCollectionRasterType where
1449− toText = \case
1448+instance ToHttpApiData RasterCollectionRasterType where
1449+ toQueryParam = \case
14501450 RCRTImage -> "image"
14511451
14521452instance FromJSON RasterCollectionRasterType where
@@ -1471,15 +1471,15 @@ data RastersListRole
14711471
14721472instance Hashable RastersListRole
14731473
1474−instance FromText RastersListRole where
1475− fromText = \case
1476− "owner" -> Just RLROwner
1477− "reader" -> Just RLRReader
1478− "writer" -> Just RLRWriter
1479− _ -> Nothing
1474+instance FromHttpApiData RastersListRole where
1475+ parseQueryParam = \case
1476+ "owner" -> Right RLROwner
1477+ "reader" -> Right RLRReader
1478+ "writer" -> Right RLRWriter
1479+ x -> Left ("Unable to parse RastersListRole from: " <> x)
14801480
1481−instance ToText RastersListRole where
1482− toText = \case
1481+instance ToHttpApiData RastersListRole where
1482+ toQueryParam = \case
14831483 RLROwner -> "owner"
14841484 RLRReader -> "reader"
14851485 RLRWriter -> "writer"
@@ -1500,14 +1500,14 @@ data MapPublishingStatus
15001500
15011501instance Hashable MapPublishingStatus
15021502
1503−instance FromText MapPublishingStatus where
1504− fromText = \case
1505− "notPublished" -> Just MPSNotPublished
1506− "published" -> Just MPSPublished
1507− _ -> Nothing
1503+instance FromHttpApiData MapPublishingStatus where
1504+ parseQueryParam = \case
1505+ "notPublished" -> Right MPSNotPublished
1506+ "published" -> Right MPSPublished
1507+ x -> Left ("Unable to parse MapPublishingStatus from: " <> x)
15081508
1509−instance ToText MapPublishingStatus where
1510− toText = \case
1509+instance ToHttpApiData MapPublishingStatus where
1510+ toQueryParam = \case
15111511 MPSNotPublished -> "notPublished"
15121512 MPSPublished -> "published"
15131513
@@ -1531,16 +1531,16 @@ data FileUploadStatus
15311531
15321532instance Hashable FileUploadStatus
15331533
1534−instance FromText FileUploadStatus where
1535− fromText = \case
1536− "canceled" -> Just FUSCanceled
1537− "complete" -> Just FUSComplete
1538− "failed" -> Just FUSFailed
1539− "inProgress" -> Just FUSInProgress
1540− _ -> Nothing
1534+instance FromHttpApiData FileUploadStatus where
1535+ parseQueryParam = \case
1536+ "canceled" -> Right FUSCanceled
1537+ "complete" -> Right FUSComplete
1538+ "failed" -> Right FUSFailed
1539+ "inProgress" -> Right FUSInProgress
1540+ x -> Left ("Unable to parse FileUploadStatus from: " <> x)
15411541
1542−instance ToText FileUploadStatus where
1543− toText = \case
1542+instance ToHttpApiData FileUploadStatus where
1543+ toQueryParam = \case
15441544 FUSCanceled -> "canceled"
15451545 FUSComplete -> "complete"
15461546 FUSFailed -> "failed"
@@ -1568,15 +1568,15 @@ data MapsListRole
15681568
15691569instance Hashable MapsListRole
15701570
1571−instance FromText MapsListRole where
1572− fromText = \case
1573− "owner" -> Just MLROwner
1574− "reader" -> Just MLRReader
1575− "writer" -> Just MLRWriter
1576− _ -> Nothing
1571+instance FromHttpApiData MapsListRole where
1572+ parseQueryParam = \case
1573+ "owner" -> Right MLROwner
1574+ "reader" -> Right MLRReader
1575+ "writer" -> Right MLRWriter
1576+ x -> Left ("Unable to parse MapsListRole from: " <> x)
15771577
1578−instance ToText MapsListRole where
1579− toText = \case
1578+instance ToHttpApiData MapsListRole where
1579+ toQueryParam = \case
15801580 MLROwner -> "owner"
15811581 MLRReader -> "reader"
15821582 MLRWriter -> "writer"
@@ -1598,14 +1598,14 @@ data TablesGetVersion
15981598
15991599instance Hashable TablesGetVersion
16001600
1601−instance FromText TablesGetVersion where
1602− fromText = \case
1603− "draft" -> Just TGVDraft
1604− "published" -> Just TGVPublished
1605− _ -> Nothing
1601+instance FromHttpApiData TablesGetVersion where
1602+ parseQueryParam = \case
1603+ "draft" -> Right TGVDraft
1604+ "published" -> Right TGVPublished
1605+ x -> Left ("Unable to parse TablesGetVersion from: " <> x)
16061606
1607−instance ToText TablesGetVersion where
1608− toText = \case
1607+instance ToHttpApiData TablesGetVersion where
1608+ toQueryParam = \case
16091609 TGVDraft -> "draft"
16101610 TGVPublished -> "published"
16111611
@@ -1631,17 +1631,17 @@ data TableProcessingStatus
16311631
16321632instance Hashable TableProcessingStatus
16331633
1634−instance FromText TableProcessingStatus where
1635− fromText = \case
1636− "complete" -> Just TPSComplete
1637− "failed" -> Just TPSFailed
1638− "notReady" -> Just TPSNotReady
1639− "processing" -> Just TPSProcessing
1640− "ready" -> Just TPSReady
1641− _ -> Nothing
1642−
1643−instance ToText TableProcessingStatus where
1644− toText = \case
1634+instance FromHttpApiData TableProcessingStatus where
1635+ parseQueryParam = \case
1636+ "complete" -> Right TPSComplete
1637+ "failed" -> Right TPSFailed
1638+ "notReady" -> Right TPSNotReady
1639+ "processing" -> Right TPSProcessing
1640+ "ready" -> Right TPSReady
1641+ x -> Left ("Unable to parse TableProcessingStatus from: " <> x)
1642+
1643+instance ToHttpApiData TableProcessingStatus where
1644+ toQueryParam = \case
16451645 TPSComplete -> "complete"
16461646 TPSFailed -> "failed"
16471647 TPSNotReady -> "notReady"
gogol-mirror/gen/Network/Google/Mirror/Types/Sum.hs+8−8
@@ -32,14 +32,14 @@ data TimelineListOrderBy
3232
3333instance Hashable TimelineListOrderBy
3434
35−instance FromText TimelineListOrderBy where
36− fromText = \case
37− "displayTime" -> Just DisplayTime
38− "writeTime" -> Just WriteTime
39− _ -> Nothing
40−
41−instance ToText TimelineListOrderBy where
42− toText = \case
35+instance FromHttpApiData TimelineListOrderBy where
36+ parseQueryParam = \case
37+ "displayTime" -> Right DisplayTime
38+ "writeTime" -> Right WriteTime
39+ x -> Left ("Unable to parse TimelineListOrderBy from: " <> x)
40+
41+instance ToHttpApiData TimelineListOrderBy where
42+ toQueryParam = \case
4343 DisplayTime -> "displayTime"
4444 WriteTime -> "writeTime"
4545
gogol-pagespeed/gen/Network/Google/PageSpeed/Types/Sum.hs+8−8
@@ -30,14 +30,14 @@ data PagespeedAPIRunPagespeedStrategy
3030
3131instance Hashable PagespeedAPIRunPagespeedStrategy
3232
33−instance FromText PagespeedAPIRunPagespeedStrategy where
34− fromText = \case
35− "desktop" -> Just Desktop
36− "mobile" -> Just Mobile
37− _ -> Nothing
38−
39−instance ToText PagespeedAPIRunPagespeedStrategy where
40− toText = \case
33+instance FromHttpApiData PagespeedAPIRunPagespeedStrategy where
34+ parseQueryParam = \case
35+ "desktop" -> Right Desktop
36+ "mobile" -> Right Mobile
37+ x -> Left ("Unable to parse PagespeedAPIRunPagespeedStrategy from: " <> x)
38+
39+instance ToHttpApiData PagespeedAPIRunPagespeedStrategy where
40+ toQueryParam = \case
4141 Desktop -> "desktop"
4242 Mobile -> "mobile"
4343
gogol-plus-domains/gen/Network/Google/PlusDomains/Types/Sum.hs+40−40
@@ -26,13 +26,13 @@ data MediaInsertCollection
2626
2727instance Hashable MediaInsertCollection
2828
29−instance FromText MediaInsertCollection where
30− fromText = \case
31− "cloud" -> Just Cloud
32− _ -> Nothing
29+instance FromHttpApiData MediaInsertCollection where
30+ parseQueryParam = \case
31+ "cloud" -> Right Cloud
32+ x -> Left ("Unable to parse MediaInsertCollection from: " <> x)
3333
34−instance ToText MediaInsertCollection where
35− toText = \case
34+instance ToHttpApiData MediaInsertCollection where
35+ toQueryParam = \case
3636 Cloud -> "cloud"
3737
3838instance FromJSON MediaInsertCollection where
@@ -56,15 +56,15 @@ data PeopleListByActivityCollection
5656
5757instance Hashable PeopleListByActivityCollection
5858
59−instance FromText PeopleListByActivityCollection where
60− fromText = \case
61− "plusoners" -> Just Plusoners
62− "resharers" -> Just Resharers
63− "sharedto" -> Just Sharedto
64− _ -> Nothing
59+instance FromHttpApiData PeopleListByActivityCollection where
60+ parseQueryParam = \case
61+ "plusoners" -> Right Plusoners
62+ "resharers" -> Right Resharers
63+ "sharedto" -> Right Sharedto
64+ x -> Left ("Unable to parse PeopleListByActivityCollection from: " <> x)
6565
66−instance ToText PeopleListByActivityCollection where
67− toText = \case
66+instance ToHttpApiData PeopleListByActivityCollection where
67+ toQueryParam = \case
6868 Plusoners -> "plusoners"
6969 Resharers -> "resharers"
7070 Sharedto -> "sharedto"
@@ -87,14 +87,14 @@ data PeopleListOrderBy
8787
8888instance Hashable PeopleListOrderBy
8989
90−instance FromText PeopleListOrderBy where
91− fromText = \case
92− "alphabetical" -> Just Alphabetical
93− "best" -> Just Best
94− _ -> Nothing
90+instance FromHttpApiData PeopleListOrderBy where
91+ parseQueryParam = \case
92+ "alphabetical" -> Right Alphabetical
93+ "best" -> Right Best
94+ x -> Left ("Unable to parse PeopleListOrderBy from: " <> x)
9595
96−instance ToText PeopleListOrderBy where
97− toText = \case
96+instance ToHttpApiData PeopleListOrderBy where
97+ toQueryParam = \case
9898 Alphabetical -> "alphabetical"
9999 Best -> "best"
100100
@@ -114,13 +114,13 @@ data ActivitiesListCollection
114114
115115instance Hashable ActivitiesListCollection
116116
117−instance FromText ActivitiesListCollection where
118− fromText = \case
119− "user" -> Just User
120− _ -> Nothing
117+instance FromHttpApiData ActivitiesListCollection where
118+ parseQueryParam = \case
119+ "user" -> Right User
120+ x -> Left ("Unable to parse ActivitiesListCollection from: " <> x)
121121
122−instance ToText ActivitiesListCollection where
123− toText = \case
122+instance ToHttpApiData ActivitiesListCollection where
123+ toQueryParam = \case
124124 User -> "user"
125125
126126instance FromJSON ActivitiesListCollection where
@@ -138,13 +138,13 @@ data PeopleListCollection
138138
139139instance Hashable PeopleListCollection
140140
141−instance FromText PeopleListCollection where
142− fromText = \case
143− "circled" -> Just Circled
144− _ -> Nothing
141+instance FromHttpApiData PeopleListCollection where
142+ parseQueryParam = \case
143+ "circled" -> Right Circled
144+ x -> Left ("Unable to parse PeopleListCollection from: " <> x)
145145
146−instance ToText PeopleListCollection where
147− toText = \case
146+instance ToHttpApiData PeopleListCollection where
147+ toQueryParam = \case
148148 Circled -> "circled"
149149
150150instance FromJSON PeopleListCollection where
@@ -165,14 +165,14 @@ data CommentsListSortOrder
165165
166166instance Hashable CommentsListSortOrder
167167
168−instance FromText CommentsListSortOrder where
169− fromText = \case
170− "ascending" -> Just Ascending
171− "descending" -> Just Descending
172− _ -> Nothing
168+instance FromHttpApiData CommentsListSortOrder where
169+ parseQueryParam = \case
170+ "ascending" -> Right Ascending
171+ "descending" -> Right Descending
172+ x -> Left ("Unable to parse CommentsListSortOrder from: " <> x)
173173
174−instance ToText CommentsListSortOrder where
175− toText = \case
174+instance ToHttpApiData CommentsListSortOrder where
175+ toQueryParam = \case
176176 Ascending -> "ascending"
177177 Descending -> "descending"
178178
gogol-plus/gen/Network/Google/Plus/Types/Sum.hs+42−42
@@ -30,14 +30,14 @@ data PeopleListByActivityCollection
3030
3131instance Hashable PeopleListByActivityCollection
3232
33−instance FromText PeopleListByActivityCollection where
34− fromText = \case
35− "plusoners" -> Just Plusoners
36− "resharers" -> Just Resharers
37− _ -> Nothing
38−
39−instance ToText PeopleListByActivityCollection where
40− toText = \case
33+instance FromHttpApiData PeopleListByActivityCollection where
34+ parseQueryParam = \case
35+ "plusoners" -> Right Plusoners
36+ "resharers" -> Right Resharers
37+ x -> Left ("Unable to parse PeopleListByActivityCollection from: " <> x)
38+
39+instance ToHttpApiData PeopleListByActivityCollection where
40+ toQueryParam = \case
4141 Plusoners -> "plusoners"
4242 Resharers -> "resharers"
4343
@@ -59,14 +59,14 @@ data PeopleListOrderBy
5959
6060instance Hashable PeopleListOrderBy
6161
62−instance FromText PeopleListOrderBy where
63− fromText = \case
64− "alphabetical" -> Just Alphabetical
65− "best" -> Just Best
66− _ -> Nothing
62+instance FromHttpApiData PeopleListOrderBy where
63+ parseQueryParam = \case
64+ "alphabetical" -> Right Alphabetical
65+ "best" -> Right Best
66+ x -> Left ("Unable to parse PeopleListOrderBy from: " <> x)
6767
68−instance ToText PeopleListOrderBy where
69− toText = \case
68+instance ToHttpApiData PeopleListOrderBy where
69+ toQueryParam = \case
7070 Alphabetical -> "alphabetical"
7171 Best -> "best"
7272
@@ -85,13 +85,13 @@ data ActivitiesListCollection
8585
8686instance Hashable ActivitiesListCollection
8787
88−instance FromText ActivitiesListCollection where
89− fromText = \case
90− "public" -> Just Public
91− _ -> Nothing
88+instance FromHttpApiData ActivitiesListCollection where
89+ parseQueryParam = \case
90+ "public" -> Right Public
91+ x -> Left ("Unable to parse ActivitiesListCollection from: " <> x)
9292
93−instance ToText ActivitiesListCollection where
94− toText = \case
93+instance ToHttpApiData ActivitiesListCollection where
94+ toQueryParam = \case
9595 Public -> "public"
9696
9797instance FromJSON ActivitiesListCollection where
@@ -115,14 +115,14 @@ data PeopleListCollection
115115
116116instance Hashable PeopleListCollection
117117
118−instance FromText PeopleListCollection where
119− fromText = \case
120− "connected" -> Just Connected
121− "visible" -> Just Visible
122− _ -> Nothing
118+instance FromHttpApiData PeopleListCollection where
119+ parseQueryParam = \case
120+ "connected" -> Right Connected
121+ "visible" -> Right Visible
122+ x -> Left ("Unable to parse PeopleListCollection from: " <> x)
123123
124−instance ToText PeopleListCollection where
125− toText = \case
124+instance ToHttpApiData PeopleListCollection where
125+ toQueryParam = \case
126126 Connected -> "connected"
127127 Visible -> "visible"
128128
@@ -144,14 +144,14 @@ data ActivitiesSearchOrderBy
144144
145145instance Hashable ActivitiesSearchOrderBy
146146
147−instance FromText ActivitiesSearchOrderBy where
148− fromText = \case
149− "best" -> Just ASOBBest
150− "recent" -> Just ASOBRecent
151− _ -> Nothing
147+instance FromHttpApiData ActivitiesSearchOrderBy where
148+ parseQueryParam = \case
149+ "best" -> Right ASOBBest
150+ "recent" -> Right ASOBRecent
151+ x -> Left ("Unable to parse ActivitiesSearchOrderBy from: " <> x)
152152
153−instance ToText ActivitiesSearchOrderBy where
154− toText = \case
153+instance ToHttpApiData ActivitiesSearchOrderBy where
154+ toQueryParam = \case
155155 ASOBBest -> "best"
156156 ASOBRecent -> "recent"
157157
@@ -173,14 +173,14 @@ data CommentsListSortOrder
173173
174174instance Hashable CommentsListSortOrder
175175
176−instance FromText CommentsListSortOrder where
177− fromText = \case
178− "ascending" -> Just Ascending
179− "descending" -> Just Descending
180− _ -> Nothing
176+instance FromHttpApiData CommentsListSortOrder where
177+ parseQueryParam = \case
178+ "ascending" -> Right Ascending
179+ "descending" -> Right Descending
180+ x -> Left ("Unable to parse CommentsListSortOrder from: " <> x)
181181
182−instance ToText CommentsListSortOrder where
183− toText = \case
182+instance ToHttpApiData CommentsListSortOrder where
183+ toQueryParam = \case
184184 Ascending -> "ascending"
185185 Descending -> "descending"
186186
gogol-replicapool/gen/Network/Google/ReplicaPool/Types/Sum.hs+34−34
@@ -50,25 +50,25 @@ data OperationWarningsItemCode
5050
5151instance Hashable OperationWarningsItemCode
5252
53−instance FromText OperationWarningsItemCode where
54− fromText = \case
55− "DEPRECATED_RESOURCE_USED" -> Just DeprecatedResourceUsed
56− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just DiskSizeLargerThanImageSize
57− "INJECTED_KERNELS_DEPRECATED" -> Just InjectedKernelsDeprecated
58− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just NextHopAddressNotAssigned
59− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just NextHopCannotIPForward
60− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just NextHopInstanceNotFound
61− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just NextHopInstanceNotOnNetwork
62− "NEXT_HOP_NOT_RUNNING" -> Just NextHopNotRunning
63− "NO_RESULTS_ON_PAGE" -> Just NoResultsOnPage
64− "REQUIRED_TOS_AGREEMENT" -> Just RequiredTosAgreement
65− "RESOURCE_NOT_DELETED" -> Just ResourceNotDeleted
66− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just SingleInstancePropertyTemplate
67− "UNREACHABLE" -> Just Unreachable
68− _ -> Nothing
69−
70−instance ToText OperationWarningsItemCode where
71− toText = \case
53+instance FromHttpApiData OperationWarningsItemCode where
54+ parseQueryParam = \case
55+ "DEPRECATED_RESOURCE_USED" -> Right DeprecatedResourceUsed
56+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right DiskSizeLargerThanImageSize
57+ "INJECTED_KERNELS_DEPRECATED" -> Right InjectedKernelsDeprecated
58+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right NextHopAddressNotAssigned
59+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right NextHopCannotIPForward
60+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right NextHopInstanceNotFound
61+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right NextHopInstanceNotOnNetwork
62+ "NEXT_HOP_NOT_RUNNING" -> Right NextHopNotRunning
63+ "NO_RESULTS_ON_PAGE" -> Right NoResultsOnPage
64+ "REQUIRED_TOS_AGREEMENT" -> Right RequiredTosAgreement
65+ "RESOURCE_NOT_DELETED" -> Right ResourceNotDeleted
66+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right SingleInstancePropertyTemplate
67+ "UNREACHABLE" -> Right Unreachable
68+ x -> Left ("Unable to parse OperationWarningsItemCode from: " <> x)
69+
70+instance ToHttpApiData OperationWarningsItemCode where
71+ toQueryParam = \case
7272 DeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
7373 DiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
7474 InjectedKernelsDeprecated -> "INJECTED_KERNELS_DEPRECATED"
@@ -103,14 +103,14 @@ data ReplicaPoolAutoHealingPolicyActionType
103103
104104instance Hashable ReplicaPoolAutoHealingPolicyActionType
105105
106−instance FromText ReplicaPoolAutoHealingPolicyActionType where
107− fromText = \case
108− "REBOOT" -> Just Reboot
109− "RECREATE" -> Just Recreate
110− _ -> Nothing
106+instance FromHttpApiData ReplicaPoolAutoHealingPolicyActionType where
107+ parseQueryParam = \case
108+ "REBOOT" -> Right Reboot
109+ "RECREATE" -> Right Recreate
110+ x -> Left ("Unable to parse ReplicaPoolAutoHealingPolicyActionType from: " <> x)
111111
112−instance ToText ReplicaPoolAutoHealingPolicyActionType where
113− toText = \case
112+instance ToHttpApiData ReplicaPoolAutoHealingPolicyActionType where
113+ toQueryParam = \case
114114 Reboot -> "REBOOT"
115115 Recreate -> "RECREATE"
116116
@@ -132,15 +132,15 @@ data OperationStatus
132132
133133instance Hashable OperationStatus
134134
135−instance FromText OperationStatus where
136− fromText = \case
137− "DONE" -> Just Done
138− "PENDING" -> Just Pending
139− "RUNNING" -> Just Running
140− _ -> Nothing
135+instance FromHttpApiData OperationStatus where
136+ parseQueryParam = \case
137+ "DONE" -> Right Done
138+ "PENDING" -> Right Pending
139+ "RUNNING" -> Right Running
140+ x -> Left ("Unable to parse OperationStatus from: " <> x)
141141
142−instance ToText OperationStatus where
143− toText = \case
142+instance ToHttpApiData OperationStatus where
143+ toQueryParam = \case
144144 Done -> "DONE"
145145 Pending -> "PENDING"
146146 Running -> "RUNNING"
gogol-resourceviews/gen/Network/Google/ResourceViews/Types/Sum.hs+15−15
@@ -32,15 +32,15 @@ data ZoneViewsListResourcesFormat
3232
3333instance Hashable ZoneViewsListResourcesFormat
3434
35−instance FromText ZoneViewsListResourcesFormat where
36− fromText = \case
37− "NONE" -> Just None
38− "URL" -> Just URL
39− "URL_PORT" -> Just URLPort
40− _ -> Nothing
35+instance FromHttpApiData ZoneViewsListResourcesFormat where
36+ parseQueryParam = \case
37+ "NONE" -> Right None
38+ "URL" -> Right URL
39+ "URL_PORT" -> Right URLPort
40+ x -> Left ("Unable to parse ZoneViewsListResourcesFormat from: " <> x)
4141
42−instance ToText ZoneViewsListResourcesFormat where
43− toText = \case
42+instance ToHttpApiData ZoneViewsListResourcesFormat where
43+ toQueryParam = \case
4444 None -> "NONE"
4545 URL -> "URL"
4646 URLPort -> "URL_PORT"
@@ -61,14 +61,14 @@ data ZoneViewsListResourcesListState
6161
6262instance Hashable ZoneViewsListResourcesListState
6363
64−instance FromText ZoneViewsListResourcesListState where
65− fromText = \case
66− "ALL" -> Just All
67− "RUNNING" -> Just Running
68− _ -> Nothing
64+instance FromHttpApiData ZoneViewsListResourcesListState where
65+ parseQueryParam = \case
66+ "ALL" -> Right All
67+ "RUNNING" -> Right Running
68+ x -> Left ("Unable to parse ZoneViewsListResourcesListState from: " <> x)
6969
70−instance ToText ZoneViewsListResourcesListState where
71− toText = \case
70+instance ToHttpApiData ZoneViewsListResourcesListState where
71+ toQueryParam = \case
7272 All -> "ALL"
7373 Running -> "RUNNING"
7474
gogol-shopping-content/gen/Network/Google/ShoppingContent/Types/Sum.hs+34−34
@@ -32,16 +32,16 @@ data OrdersGettestOrdertemplateTemplateName
3232
3333instance Hashable OrdersGettestOrdertemplateTemplateName
3434
35−instance FromText OrdersGettestOrdertemplateTemplateName where
36− fromText = \case
37− "template1" -> Just TEMPLATE1
38− "template1a" -> Just Template1a
39− "template1b" -> Just Template1b
40− "template2" -> Just TEMPLATE2
41− _ -> Nothing
42−
43−instance ToText OrdersGettestOrdertemplateTemplateName where
44− toText = \case
35+instance FromHttpApiData OrdersGettestOrdertemplateTemplateName where
36+ parseQueryParam = \case
37+ "template1" -> Right TEMPLATE1
38+ "template1a" -> Right Template1a
39+ "template1b" -> Right Template1b
40+ "template2" -> Right TEMPLATE2
41+ x -> Left ("Unable to parse OrdersGettestOrdertemplateTemplateName from: " <> x)
42+
43+instance ToHttpApiData OrdersGettestOrdertemplateTemplateName where
44+ toQueryParam = \case
4545 TEMPLATE1 -> "template1"
4646 Template1a -> "template1a"
4747 Template1b -> "template1b"
@@ -68,14 +68,14 @@ data OrdersListOrderBy
6868
6969instance Hashable OrdersListOrderBy
7070
71−instance FromText OrdersListOrderBy where
72− fromText = \case
73− "placedDate asc" -> Just PlacedDateAsc
74− "placedDate desc" -> Just PlacedDateDesc
75− _ -> Nothing
71+instance FromHttpApiData OrdersListOrderBy where
72+ parseQueryParam = \case
73+ "placedDate asc" -> Right PlacedDateAsc
74+ "placedDate desc" -> Right PlacedDateDesc
75+ x -> Left ("Unable to parse OrdersListOrderBy from: " <> x)
7676
77−instance ToText OrdersListOrderBy where
78− toText = \case
77+instance ToHttpApiData OrdersListOrderBy where
78+ toQueryParam = \case
7979 PlacedDateAsc -> "placedDate asc"
8080 PlacedDateDesc -> "placedDate desc"
8181
@@ -117,23 +117,23 @@ data OrdersListStatuses
117117
118118instance Hashable OrdersListStatuses
119119
120−instance FromText OrdersListStatuses where
121− fromText = \case
122− "active" -> Just Active
123− "canceled" -> Just Canceled
124− "completed" -> Just Completed
125− "delivered" -> Just Delivered
126− "inProgress" -> Just InProgress
127− "partiallyDelivered" -> Just PartiallyDelivered
128− "partiallyReturned" -> Just PartiallyReturned
129− "partiallyShipped" -> Just PartiallyShipped
130− "pendingShipment" -> Just PendingShipment
131− "returned" -> Just Returned
132− "shipped" -> Just Shipped
133− _ -> Nothing
134−
135−instance ToText OrdersListStatuses where
136− toText = \case
120+instance FromHttpApiData OrdersListStatuses where
121+ parseQueryParam = \case
122+ "active" -> Right Active
123+ "canceled" -> Right Canceled
124+ "completed" -> Right Completed
125+ "delivered" -> Right Delivered
126+ "inProgress" -> Right InProgress
127+ "partiallyDelivered" -> Right PartiallyDelivered
128+ "partiallyReturned" -> Right PartiallyReturned
129+ "partiallyShipped" -> Right PartiallyShipped
130+ "pendingShipment" -> Right PendingShipment
131+ "returned" -> Right Returned
132+ "shipped" -> Right Shipped
133+ x -> Left ("Unable to parse OrdersListStatuses from: " <> x)
134+
135+instance ToHttpApiData OrdersListStatuses where
136+ toQueryParam = \case
137137 Active -> "active"
138138 Canceled -> "canceled"
139139 Completed -> "completed"
gogol-storage/gen/Network/Google/Storage/Types/Sum.hs+233−233
@@ -31,14 +31,14 @@ data ObjectsInsertProjection
3131
3232instance Hashable ObjectsInsertProjection
3333
34−instance FromText ObjectsInsertProjection where
35− fromText = \case
36− "full" -> Just Full
37− "noAcl" -> Just NoACL
38− _ -> Nothing
39−
40−instance ToText ObjectsInsertProjection where
41− toText = \case
34+instance FromHttpApiData ObjectsInsertProjection where
35+ parseQueryParam = \case
36+ "full" -> Right Full
37+ "noAcl" -> Right NoACL
38+ x -> Left ("Unable to parse ObjectsInsertProjection from: " <> x)
39+
40+instance ToHttpApiData ObjectsInsertProjection where
41+ toQueryParam = \case
4242 Full -> "full"
4343 NoACL -> "noAcl"
4444
@@ -76,18 +76,18 @@ data BucketsUpdatePredefinedDefaultObjectACL
7676
7777instance Hashable BucketsUpdatePredefinedDefaultObjectACL
7878
79−instance FromText BucketsUpdatePredefinedDefaultObjectACL where
80− fromText = \case
81− "authenticatedRead" -> Just AuthenticatedRead
82− "bucketOwnerFullControl" -> Just BucketOwnerFullControl
83− "bucketOwnerRead" -> Just BucketOwnerRead
84− "private" -> Just Private
85− "projectPrivate" -> Just ProjectPrivate
86− "publicRead" -> Just PublicRead
87− _ -> Nothing
88−
89−instance ToText BucketsUpdatePredefinedDefaultObjectACL where
90− toText = \case
79+instance FromHttpApiData BucketsUpdatePredefinedDefaultObjectACL where
80+ parseQueryParam = \case
81+ "authenticatedRead" -> Right AuthenticatedRead
82+ "bucketOwnerFullControl" -> Right BucketOwnerFullControl
83+ "bucketOwnerRead" -> Right BucketOwnerRead
84+ "private" -> Right Private
85+ "projectPrivate" -> Right ProjectPrivate
86+ "publicRead" -> Right PublicRead
87+ x -> Left ("Unable to parse BucketsUpdatePredefinedDefaultObjectACL from: " <> x)
88+
89+instance ToHttpApiData BucketsUpdatePredefinedDefaultObjectACL where
90+ toQueryParam = \case
9191 AuthenticatedRead -> "authenticatedRead"
9292 BucketOwnerFullControl -> "bucketOwnerFullControl"
9393 BucketOwnerRead -> "bucketOwnerRead"
@@ -129,18 +129,18 @@ data ObjectsComposeDestinationPredefinedACL
129129
130130instance Hashable ObjectsComposeDestinationPredefinedACL
131131
132−instance FromText ObjectsComposeDestinationPredefinedACL where
133− fromText = \case
134− "authenticatedRead" -> Just OCDPAAuthenticatedRead
135− "bucketOwnerFullControl" -> Just OCDPABucketOwnerFullControl
136− "bucketOwnerRead" -> Just OCDPABucketOwnerRead
137− "private" -> Just OCDPAPrivate
138− "projectPrivate" -> Just OCDPAProjectPrivate
139− "publicRead" -> Just OCDPAPublicRead
140− _ -> Nothing
141−
142−instance ToText ObjectsComposeDestinationPredefinedACL where
143− toText = \case
132+instance FromHttpApiData ObjectsComposeDestinationPredefinedACL where
133+ parseQueryParam = \case
134+ "authenticatedRead" -> Right OCDPAAuthenticatedRead
135+ "bucketOwnerFullControl" -> Right OCDPABucketOwnerFullControl
136+ "bucketOwnerRead" -> Right OCDPABucketOwnerRead
137+ "private" -> Right OCDPAPrivate
138+ "projectPrivate" -> Right OCDPAProjectPrivate
139+ "publicRead" -> Right OCDPAPublicRead
140+ x -> Left ("Unable to parse ObjectsComposeDestinationPredefinedACL from: " <> x)
141+
142+instance ToHttpApiData ObjectsComposeDestinationPredefinedACL where
143+ toQueryParam = \case
144144 OCDPAAuthenticatedRead -> "authenticatedRead"
145145 OCDPABucketOwnerFullControl -> "bucketOwnerFullControl"
146146 OCDPABucketOwnerRead -> "bucketOwnerRead"
@@ -176,17 +176,17 @@ data BucketsInsertPredefinedACL
176176
177177instance Hashable BucketsInsertPredefinedACL
178178
179−instance FromText BucketsInsertPredefinedACL where
180− fromText = \case
181− "authenticatedRead" -> Just BIPAAuthenticatedRead
182− "private" -> Just BIPAPrivate
183− "projectPrivate" -> Just BIPAProjectPrivate
184− "publicRead" -> Just BIPAPublicRead
185− "publicReadWrite" -> Just BIPAPublicReadWrite
186− _ -> Nothing
187−
188−instance ToText BucketsInsertPredefinedACL where
189− toText = \case
179+instance FromHttpApiData BucketsInsertPredefinedACL where
180+ parseQueryParam = \case
181+ "authenticatedRead" -> Right BIPAAuthenticatedRead
182+ "private" -> Right BIPAPrivate
183+ "projectPrivate" -> Right BIPAProjectPrivate
184+ "publicRead" -> Right BIPAPublicRead
185+ "publicReadWrite" -> Right BIPAPublicReadWrite
186+ x -> Left ("Unable to parse BucketsInsertPredefinedACL from: " <> x)
187+
188+instance ToHttpApiData BucketsInsertPredefinedACL where
189+ toQueryParam = \case
190190 BIPAAuthenticatedRead -> "authenticatedRead"
191191 BIPAPrivate -> "private"
192192 BIPAProjectPrivate -> "projectPrivate"
@@ -227,18 +227,18 @@ data ObjectsPatchPredefinedACL
227227
228228instance Hashable ObjectsPatchPredefinedACL
229229
230−instance FromText ObjectsPatchPredefinedACL where
231− fromText = \case
232− "authenticatedRead" -> Just OPPAAuthenticatedRead
233− "bucketOwnerFullControl" -> Just OPPABucketOwnerFullControl
234− "bucketOwnerRead" -> Just OPPABucketOwnerRead
235− "private" -> Just OPPAPrivate
236− "projectPrivate" -> Just OPPAProjectPrivate
237− "publicRead" -> Just OPPAPublicRead
238− _ -> Nothing
239−
240−instance ToText ObjectsPatchPredefinedACL where
241− toText = \case
230+instance FromHttpApiData ObjectsPatchPredefinedACL where
231+ parseQueryParam = \case
232+ "authenticatedRead" -> Right OPPAAuthenticatedRead
233+ "bucketOwnerFullControl" -> Right OPPABucketOwnerFullControl
234+ "bucketOwnerRead" -> Right OPPABucketOwnerRead
235+ "private" -> Right OPPAPrivate
236+ "projectPrivate" -> Right OPPAProjectPrivate
237+ "publicRead" -> Right OPPAPublicRead
238+ x -> Left ("Unable to parse ObjectsPatchPredefinedACL from: " <> x)
239+
240+instance ToHttpApiData ObjectsPatchPredefinedACL where
241+ toQueryParam = \case
242242 OPPAAuthenticatedRead -> "authenticatedRead"
243243 OPPABucketOwnerFullControl -> "bucketOwnerFullControl"
244244 OPPABucketOwnerRead -> "bucketOwnerRead"
@@ -280,18 +280,18 @@ data ObjectsRewriteDestinationPredefinedACL
280280
281281instance Hashable ObjectsRewriteDestinationPredefinedACL
282282
283−instance FromText ObjectsRewriteDestinationPredefinedACL where
284− fromText = \case
285− "authenticatedRead" -> Just ORDPAAuthenticatedRead
286− "bucketOwnerFullControl" -> Just ORDPABucketOwnerFullControl
287− "bucketOwnerRead" -> Just ORDPABucketOwnerRead
288− "private" -> Just ORDPAPrivate
289− "projectPrivate" -> Just ORDPAProjectPrivate
290− "publicRead" -> Just ORDPAPublicRead
291− _ -> Nothing
292−
293−instance ToText ObjectsRewriteDestinationPredefinedACL where
294− toText = \case
283+instance FromHttpApiData ObjectsRewriteDestinationPredefinedACL where
284+ parseQueryParam = \case
285+ "authenticatedRead" -> Right ORDPAAuthenticatedRead
286+ "bucketOwnerFullControl" -> Right ORDPABucketOwnerFullControl
287+ "bucketOwnerRead" -> Right ORDPABucketOwnerRead
288+ "private" -> Right ORDPAPrivate
289+ "projectPrivate" -> Right ORDPAProjectPrivate
290+ "publicRead" -> Right ORDPAPublicRead
291+ x -> Left ("Unable to parse ObjectsRewriteDestinationPredefinedACL from: " <> x)
292+
293+instance ToHttpApiData ObjectsRewriteDestinationPredefinedACL where
294+ toQueryParam = \case
295295 ORDPAAuthenticatedRead -> "authenticatedRead"
296296 ORDPABucketOwnerFullControl -> "bucketOwnerFullControl"
297297 ORDPABucketOwnerRead -> "bucketOwnerRead"
@@ -317,14 +317,14 @@ data ObjectsWatchAllProjection
317317
318318instance Hashable ObjectsWatchAllProjection
319319
320−instance FromText ObjectsWatchAllProjection where
321− fromText = \case
322− "full" -> Just OWAPFull
323− "noAcl" -> Just OWAPNoACL
324− _ -> Nothing
320+instance FromHttpApiData ObjectsWatchAllProjection where
321+ parseQueryParam = \case
322+ "full" -> Right OWAPFull
323+ "noAcl" -> Right OWAPNoACL
324+ x -> Left ("Unable to parse ObjectsWatchAllProjection from: " <> x)
325325
326−instance ToText ObjectsWatchAllProjection where
327− toText = \case
326+instance ToHttpApiData ObjectsWatchAllProjection where
327+ toQueryParam = \case
328328 OWAPFull -> "full"
329329 OWAPNoACL -> "noAcl"
330330
@@ -346,14 +346,14 @@ data BucketsGetProjection
346346
347347instance Hashable BucketsGetProjection
348348
349−instance FromText BucketsGetProjection where
350− fromText = \case
351− "full" -> Just BGPFull
352− "noAcl" -> Just BGPNoACL
353− _ -> Nothing
349+instance FromHttpApiData BucketsGetProjection where
350+ parseQueryParam = \case
351+ "full" -> Right BGPFull
352+ "noAcl" -> Right BGPNoACL
353+ x -> Left ("Unable to parse BucketsGetProjection from: " <> x)
354354
355−instance ToText BucketsGetProjection where
356− toText = \case
355+instance ToHttpApiData BucketsGetProjection where
356+ toQueryParam = \case
357357 BGPFull -> "full"
358358 BGPNoACL -> "noAcl"
359359
@@ -375,14 +375,14 @@ data BucketsPatchProjection
375375
376376instance Hashable BucketsPatchProjection
377377
378−instance FromText BucketsPatchProjection where
379− fromText = \case
380− "full" -> Just BPPFull
381− "noAcl" -> Just BPPNoACL
382− _ -> Nothing
378+instance FromHttpApiData BucketsPatchProjection where
379+ parseQueryParam = \case
380+ "full" -> Right BPPFull
381+ "noAcl" -> Right BPPNoACL
382+ x -> Left ("Unable to parse BucketsPatchProjection from: " <> x)
383383
384−instance ToText BucketsPatchProjection where
385− toText = \case
384+instance ToHttpApiData BucketsPatchProjection where
385+ toQueryParam = \case
386386 BPPFull -> "full"
387387 BPPNoACL -> "noAcl"
388388
@@ -404,14 +404,14 @@ data BucketsUpdateProjection
404404
405405instance Hashable BucketsUpdateProjection
406406
407−instance FromText BucketsUpdateProjection where
408− fromText = \case
409− "full" -> Just BUPFull
410− "noAcl" -> Just BUPNoACL
411− _ -> Nothing
407+instance FromHttpApiData BucketsUpdateProjection where
408+ parseQueryParam = \case
409+ "full" -> Right BUPFull
410+ "noAcl" -> Right BUPNoACL
411+ x -> Left ("Unable to parse BucketsUpdateProjection from: " <> x)
412412
413−instance ToText BucketsUpdateProjection where
414− toText = \case
413+instance ToHttpApiData BucketsUpdateProjection where
414+ toQueryParam = \case
415415 BUPFull -> "full"
416416 BUPNoACL -> "noAcl"
417417
@@ -449,18 +449,18 @@ data ObjectsInsertPredefinedACL
449449
450450instance Hashable ObjectsInsertPredefinedACL
451451
452−instance FromText ObjectsInsertPredefinedACL where
453− fromText = \case
454− "authenticatedRead" -> Just OIPAAuthenticatedRead
455− "bucketOwnerFullControl" -> Just OIPABucketOwnerFullControl
456− "bucketOwnerRead" -> Just OIPABucketOwnerRead
457− "private" -> Just OIPAPrivate
458− "projectPrivate" -> Just OIPAProjectPrivate
459− "publicRead" -> Just OIPAPublicRead
460− _ -> Nothing
461−
462−instance ToText ObjectsInsertPredefinedACL where
463− toText = \case
452+instance FromHttpApiData ObjectsInsertPredefinedACL where
453+ parseQueryParam = \case
454+ "authenticatedRead" -> Right OIPAAuthenticatedRead
455+ "bucketOwnerFullControl" -> Right OIPABucketOwnerFullControl
456+ "bucketOwnerRead" -> Right OIPABucketOwnerRead
457+ "private" -> Right OIPAPrivate
458+ "projectPrivate" -> Right OIPAProjectPrivate
459+ "publicRead" -> Right OIPAPublicRead
460+ x -> Left ("Unable to parse ObjectsInsertPredefinedACL from: " <> x)
461+
462+instance ToHttpApiData ObjectsInsertPredefinedACL where
463+ toQueryParam = \case
464464 OIPAAuthenticatedRead -> "authenticatedRead"
465465 OIPABucketOwnerFullControl -> "bucketOwnerFullControl"
466466 OIPABucketOwnerRead -> "bucketOwnerRead"
@@ -486,14 +486,14 @@ data ObjectsListProjection
486486
487487instance Hashable ObjectsListProjection
488488
489−instance FromText ObjectsListProjection where
490− fromText = \case
491− "full" -> Just OLPFull
492− "noAcl" -> Just OLPNoACL
493− _ -> Nothing
489+instance FromHttpApiData ObjectsListProjection where
490+ parseQueryParam = \case
491+ "full" -> Right OLPFull
492+ "noAcl" -> Right OLPNoACL
493+ x -> Left ("Unable to parse ObjectsListProjection from: " <> x)
494494
495−instance ToText ObjectsListProjection where
496− toText = \case
495+instance ToHttpApiData ObjectsListProjection where
496+ toQueryParam = \case
497497 OLPFull -> "full"
498498 OLPNoACL -> "noAcl"
499499
@@ -531,18 +531,18 @@ data BucketsInsertPredefinedDefaultObjectACL
531531
532532instance Hashable BucketsInsertPredefinedDefaultObjectACL
533533
534−instance FromText BucketsInsertPredefinedDefaultObjectACL where
535− fromText = \case
536− "authenticatedRead" -> Just BIPDOAAuthenticatedRead
537− "bucketOwnerFullControl" -> Just BIPDOABucketOwnerFullControl
538− "bucketOwnerRead" -> Just BIPDOABucketOwnerRead
539− "private" -> Just BIPDOAPrivate
540− "projectPrivate" -> Just BIPDOAProjectPrivate
541− "publicRead" -> Just BIPDOAPublicRead
542− _ -> Nothing
543−
544−instance ToText BucketsInsertPredefinedDefaultObjectACL where
545− toText = \case
534+instance FromHttpApiData BucketsInsertPredefinedDefaultObjectACL where
535+ parseQueryParam = \case
536+ "authenticatedRead" -> Right BIPDOAAuthenticatedRead
537+ "bucketOwnerFullControl" -> Right BIPDOABucketOwnerFullControl
538+ "bucketOwnerRead" -> Right BIPDOABucketOwnerRead
539+ "private" -> Right BIPDOAPrivate
540+ "projectPrivate" -> Right BIPDOAProjectPrivate
541+ "publicRead" -> Right BIPDOAPublicRead
542+ x -> Left ("Unable to parse BucketsInsertPredefinedDefaultObjectACL from: " <> x)
543+
544+instance ToHttpApiData BucketsInsertPredefinedDefaultObjectACL where
545+ toQueryParam = \case
546546 BIPDOAAuthenticatedRead -> "authenticatedRead"
547547 BIPDOABucketOwnerFullControl -> "bucketOwnerFullControl"
548548 BIPDOABucketOwnerRead -> "bucketOwnerRead"
@@ -578,17 +578,17 @@ data BucketsUpdatePredefinedACL
578578
579579instance Hashable BucketsUpdatePredefinedACL
580580
581−instance FromText BucketsUpdatePredefinedACL where
582− fromText = \case
583− "authenticatedRead" -> Just BUPAAuthenticatedRead
584− "private" -> Just BUPAPrivate
585− "projectPrivate" -> Just BUPAProjectPrivate
586− "publicRead" -> Just BUPAPublicRead
587− "publicReadWrite" -> Just BUPAPublicReadWrite
588− _ -> Nothing
589−
590−instance ToText BucketsUpdatePredefinedACL where
591− toText = \case
581+instance FromHttpApiData BucketsUpdatePredefinedACL where
582+ parseQueryParam = \case
583+ "authenticatedRead" -> Right BUPAAuthenticatedRead
584+ "private" -> Right BUPAPrivate
585+ "projectPrivate" -> Right BUPAProjectPrivate
586+ "publicRead" -> Right BUPAPublicRead
587+ "publicReadWrite" -> Right BUPAPublicReadWrite
588+ x -> Left ("Unable to parse BucketsUpdatePredefinedACL from: " <> x)
589+
590+instance ToHttpApiData BucketsUpdatePredefinedACL where
591+ toQueryParam = \case
592592 BUPAAuthenticatedRead -> "authenticatedRead"
593593 BUPAPrivate -> "private"
594594 BUPAProjectPrivate -> "projectPrivate"
@@ -629,18 +629,18 @@ data ObjectsCopyDestinationPredefinedACL
629629
630630instance Hashable ObjectsCopyDestinationPredefinedACL
631631
632−instance FromText ObjectsCopyDestinationPredefinedACL where
633− fromText = \case
634− "authenticatedRead" -> Just OCDPACLAuthenticatedRead
635− "bucketOwnerFullControl" -> Just OCDPACLBucketOwnerFullControl
636− "bucketOwnerRead" -> Just OCDPACLBucketOwnerRead
637− "private" -> Just OCDPACLPrivate
638− "projectPrivate" -> Just OCDPACLProjectPrivate
639− "publicRead" -> Just OCDPACLPublicRead
640− _ -> Nothing
641−
642−instance ToText ObjectsCopyDestinationPredefinedACL where
643− toText = \case
632+instance FromHttpApiData ObjectsCopyDestinationPredefinedACL where
633+ parseQueryParam = \case
634+ "authenticatedRead" -> Right OCDPACLAuthenticatedRead
635+ "bucketOwnerFullControl" -> Right OCDPACLBucketOwnerFullControl
636+ "bucketOwnerRead" -> Right OCDPACLBucketOwnerRead
637+ "private" -> Right OCDPACLPrivate
638+ "projectPrivate" -> Right OCDPACLProjectPrivate
639+ "publicRead" -> Right OCDPACLPublicRead
640+ x -> Left ("Unable to parse ObjectsCopyDestinationPredefinedACL from: " <> x)
641+
642+instance ToHttpApiData ObjectsCopyDestinationPredefinedACL where
643+ toQueryParam = \case
644644 OCDPACLAuthenticatedRead -> "authenticatedRead"
645645 OCDPACLBucketOwnerFullControl -> "bucketOwnerFullControl"
646646 OCDPACLBucketOwnerRead -> "bucketOwnerRead"
@@ -682,18 +682,18 @@ data ObjectsUpdatePredefinedACL
682682
683683instance Hashable ObjectsUpdatePredefinedACL
684684
685−instance FromText ObjectsUpdatePredefinedACL where
686− fromText = \case
687− "authenticatedRead" -> Just OUPAAuthenticatedRead
688− "bucketOwnerFullControl" -> Just OUPABucketOwnerFullControl
689− "bucketOwnerRead" -> Just OUPABucketOwnerRead
690− "private" -> Just OUPAPrivate
691− "projectPrivate" -> Just OUPAProjectPrivate
692− "publicRead" -> Just OUPAPublicRead
693− _ -> Nothing
694−
695−instance ToText ObjectsUpdatePredefinedACL where
696− toText = \case
685+instance FromHttpApiData ObjectsUpdatePredefinedACL where
686+ parseQueryParam = \case
687+ "authenticatedRead" -> Right OUPAAuthenticatedRead
688+ "bucketOwnerFullControl" -> Right OUPABucketOwnerFullControl
689+ "bucketOwnerRead" -> Right OUPABucketOwnerRead
690+ "private" -> Right OUPAPrivate
691+ "projectPrivate" -> Right OUPAProjectPrivate
692+ "publicRead" -> Right OUPAPublicRead
693+ x -> Left ("Unable to parse ObjectsUpdatePredefinedACL from: " <> x)
694+
695+instance ToHttpApiData ObjectsUpdatePredefinedACL where
696+ toQueryParam = \case
697697 OUPAAuthenticatedRead -> "authenticatedRead"
698698 OUPABucketOwnerFullControl -> "bucketOwnerFullControl"
699699 OUPABucketOwnerRead -> "bucketOwnerRead"
@@ -721,14 +721,14 @@ data BucketsInsertProjection
721721
722722instance Hashable BucketsInsertProjection
723723
724−instance FromText BucketsInsertProjection where
725− fromText = \case
726− "full" -> Just BIPFull
727− "noAcl" -> Just BIPNoACL
728− _ -> Nothing
724+instance FromHttpApiData BucketsInsertProjection where
725+ parseQueryParam = \case
726+ "full" -> Right BIPFull
727+ "noAcl" -> Right BIPNoACL
728+ x -> Left ("Unable to parse BucketsInsertProjection from: " <> x)
729729
730−instance ToText BucketsInsertProjection where
731− toText = \case
730+instance ToHttpApiData BucketsInsertProjection where
731+ toQueryParam = \case
732732 BIPFull -> "full"
733733 BIPNoACL -> "noAcl"
734734
@@ -750,14 +750,14 @@ data BucketsListProjection
750750
751751instance Hashable BucketsListProjection
752752
753−instance FromText BucketsListProjection where
754− fromText = \case
755− "full" -> Just BLPFull
756− "noAcl" -> Just BLPNoACL
757− _ -> Nothing
753+instance FromHttpApiData BucketsListProjection where
754+ parseQueryParam = \case
755+ "full" -> Right BLPFull
756+ "noAcl" -> Right BLPNoACL
757+ x -> Left ("Unable to parse BucketsListProjection from: " <> x)
758758
759−instance ToText BucketsListProjection where
760− toText = \case
759+instance ToHttpApiData BucketsListProjection where
760+ toQueryParam = \case
761761 BLPFull -> "full"
762762 BLPNoACL -> "noAcl"
763763
@@ -779,14 +779,14 @@ data ObjectsUpdateProjection
779779
780780instance Hashable ObjectsUpdateProjection
781781
782−instance FromText ObjectsUpdateProjection where
783− fromText = \case
784− "full" -> Just OUPFull
785− "noAcl" -> Just OUPNoACL
786− _ -> Nothing
782+instance FromHttpApiData ObjectsUpdateProjection where
783+ parseQueryParam = \case
784+ "full" -> Right OUPFull
785+ "noAcl" -> Right OUPNoACL
786+ x -> Left ("Unable to parse ObjectsUpdateProjection from: " <> x)
787787
788−instance ToText ObjectsUpdateProjection where
789− toText = \case
788+instance ToHttpApiData ObjectsUpdateProjection where
789+ toQueryParam = \case
790790 OUPFull -> "full"
791791 OUPNoACL -> "noAcl"
792792
@@ -808,14 +808,14 @@ data ObjectsPatchProjection
808808
809809instance Hashable ObjectsPatchProjection
810810
811−instance FromText ObjectsPatchProjection where
812− fromText = \case
813− "full" -> Just OPPFull
814− "noAcl" -> Just OPPNoACL
815− _ -> Nothing
811+instance FromHttpApiData ObjectsPatchProjection where
812+ parseQueryParam = \case
813+ "full" -> Right OPPFull
814+ "noAcl" -> Right OPPNoACL
815+ x -> Left ("Unable to parse ObjectsPatchProjection from: " <> x)
816816
817−instance ToText ObjectsPatchProjection where
818− toText = \case
817+instance ToHttpApiData ObjectsPatchProjection where
818+ toQueryParam = \case
819819 OPPFull -> "full"
820820 OPPNoACL -> "noAcl"
821821
@@ -837,14 +837,14 @@ data ObjectsGetProjection
837837
838838instance Hashable ObjectsGetProjection
839839
840−instance FromText ObjectsGetProjection where
841− fromText = \case
842− "full" -> Just OGPFull
843− "noAcl" -> Just OGPNoACL
844− _ -> Nothing
840+instance FromHttpApiData ObjectsGetProjection where
841+ parseQueryParam = \case
842+ "full" -> Right OGPFull
843+ "noAcl" -> Right OGPNoACL
844+ x -> Left ("Unable to parse ObjectsGetProjection from: " <> x)
845845
846−instance ToText ObjectsGetProjection where
847− toText = \case
846+instance ToHttpApiData ObjectsGetProjection where
847+ toQueryParam = \case
848848 OGPFull -> "full"
849849 OGPNoACL -> "noAcl"
850850
@@ -882,18 +882,18 @@ data BucketsPatchPredefinedDefaultObjectACL
882882
883883instance Hashable BucketsPatchPredefinedDefaultObjectACL
884884
885−instance FromText BucketsPatchPredefinedDefaultObjectACL where
886− fromText = \case
887− "authenticatedRead" -> Just BPPDOAAuthenticatedRead
888− "bucketOwnerFullControl" -> Just BPPDOABucketOwnerFullControl
889− "bucketOwnerRead" -> Just BPPDOABucketOwnerRead
890− "private" -> Just BPPDOAPrivate
891− "projectPrivate" -> Just BPPDOAProjectPrivate
892− "publicRead" -> Just BPPDOAPublicRead
893− _ -> Nothing
894−
895−instance ToText BucketsPatchPredefinedDefaultObjectACL where
896− toText = \case
885+instance FromHttpApiData BucketsPatchPredefinedDefaultObjectACL where
886+ parseQueryParam = \case
887+ "authenticatedRead" -> Right BPPDOAAuthenticatedRead
888+ "bucketOwnerFullControl" -> Right BPPDOABucketOwnerFullControl
889+ "bucketOwnerRead" -> Right BPPDOABucketOwnerRead
890+ "private" -> Right BPPDOAPrivate
891+ "projectPrivate" -> Right BPPDOAProjectPrivate
892+ "publicRead" -> Right BPPDOAPublicRead
893+ x -> Left ("Unable to parse BucketsPatchPredefinedDefaultObjectACL from: " <> x)
894+
895+instance ToHttpApiData BucketsPatchPredefinedDefaultObjectACL where
896+ toQueryParam = \case
897897 BPPDOAAuthenticatedRead -> "authenticatedRead"
898898 BPPDOABucketOwnerFullControl -> "bucketOwnerFullControl"
899899 BPPDOABucketOwnerRead -> "bucketOwnerRead"
@@ -929,17 +929,17 @@ data BucketsPatchPredefinedACL
929929
930930instance Hashable BucketsPatchPredefinedACL
931931
932−instance FromText BucketsPatchPredefinedACL where
933− fromText = \case
934− "authenticatedRead" -> Just BPPAAuthenticatedRead
935− "private" -> Just BPPAPrivate
936− "projectPrivate" -> Just BPPAProjectPrivate
937− "publicRead" -> Just BPPAPublicRead
938− "publicReadWrite" -> Just BPPAPublicReadWrite
939− _ -> Nothing
940−
941−instance ToText BucketsPatchPredefinedACL where
942− toText = \case
932+instance FromHttpApiData BucketsPatchPredefinedACL where
933+ parseQueryParam = \case
934+ "authenticatedRead" -> Right BPPAAuthenticatedRead
935+ "private" -> Right BPPAPrivate
936+ "projectPrivate" -> Right BPPAProjectPrivate
937+ "publicRead" -> Right BPPAPublicRead
938+ "publicReadWrite" -> Right BPPAPublicReadWrite
939+ x -> Left ("Unable to parse BucketsPatchPredefinedACL from: " <> x)
940+
941+instance ToHttpApiData BucketsPatchPredefinedACL where
942+ toQueryParam = \case
943943 BPPAAuthenticatedRead -> "authenticatedRead"
944944 BPPAPrivate -> "private"
945945 BPPAProjectPrivate -> "projectPrivate"
@@ -965,14 +965,14 @@ data ObjectsCopyProjection
965965
966966instance Hashable ObjectsCopyProjection
967967
968−instance FromText ObjectsCopyProjection where
969− fromText = \case
970− "full" -> Just OCPFull
971− "noAcl" -> Just OCPNoACL
972− _ -> Nothing
968+instance FromHttpApiData ObjectsCopyProjection where
969+ parseQueryParam = \case
970+ "full" -> Right OCPFull
971+ "noAcl" -> Right OCPNoACL
972+ x -> Left ("Unable to parse ObjectsCopyProjection from: " <> x)
973973
974−instance ToText ObjectsCopyProjection where
975− toText = \case
974+instance ToHttpApiData ObjectsCopyProjection where
975+ toQueryParam = \case
976976 OCPFull -> "full"
977977 OCPNoACL -> "noAcl"
978978
@@ -995,14 +995,14 @@ data ObjectsRewriteProjection
995995
996996instance Hashable ObjectsRewriteProjection
997997
998−instance FromText ObjectsRewriteProjection where
999− fromText = \case
1000− "full" -> Just ORPFull
1001− "noAcl" -> Just ORPNoACL
1002− _ -> Nothing
998+instance FromHttpApiData ObjectsRewriteProjection where
999+ parseQueryParam = \case
1000+ "full" -> Right ORPFull
1001+ "noAcl" -> Right ORPNoACL
1002+ x -> Left ("Unable to parse ObjectsRewriteProjection from: " <> x)
10031003
1004−instance ToText ObjectsRewriteProjection where
1005− toText = \case
1004+instance ToHttpApiData ObjectsRewriteProjection where
1005+ toQueryParam = \case
10061006 ORPFull -> "full"
10071007 ORPNoACL -> "noAcl"
10081008
gogol-tagmanager/gen/Network/Google/TagManager/Types/Sum.hs+146−146
@@ -50,25 +50,25 @@ data TriggerType
5050
5151instance Hashable TriggerType
5252
53−instance FromText TriggerType where
54− fromText = \case
55− "ajaxSubmission" -> Just AjaxSubmission
56− "always" -> Just Always
57− "click" -> Just Click
58− "customEvent" -> Just CustomEvent
59− "domReady" -> Just DomReady
60− "formSubmission" -> Just FormSubmission
61− "historyChange" -> Just HistoryChange
62− "jsError" -> Just JsError
63− "linkClick" -> Just LinkClick
64− "pageview" -> Just Pageview
65− "timer" -> Just Timer
66− "windowLoaded" -> Just WindowLoaded
67− "youTube" -> Just YouTube
68− _ -> Nothing
69−
70−instance ToText TriggerType where
71− toText = \case
53+instance FromHttpApiData TriggerType where
54+ parseQueryParam = \case
55+ "ajaxSubmission" -> Right AjaxSubmission
56+ "always" -> Right Always
57+ "click" -> Right Click
58+ "customEvent" -> Right CustomEvent
59+ "domReady" -> Right DomReady
60+ "formSubmission" -> Right FormSubmission
61+ "historyChange" -> Right HistoryChange
62+ "jsError" -> Right JsError
63+ "linkClick" -> Right LinkClick
64+ "pageview" -> Right Pageview
65+ "timer" -> Right Timer
66+ "windowLoaded" -> Right WindowLoaded
67+ "youTube" -> Right YouTube
68+ x -> Left ("Unable to parse TriggerType from: " <> x)
69+
70+instance ToHttpApiData TriggerType where
71+ toQueryParam = \case
7272 AjaxSubmission -> "ajaxSubmission"
7373 Always -> "always"
7474 Click -> "click"
@@ -180,55 +180,55 @@ data ContainerEnabledBuiltInVariableItem
180180
181181instance Hashable ContainerEnabledBuiltInVariableItem
182182
183−instance FromText ContainerEnabledBuiltInVariableItem where
184− fromText = \case
185− "advertiserId" -> Just CEBIVIAdvertiserId
186− "advertisingTrackingEnabled" -> Just CEBIVIAdvertisingTrackingEnabled
187− "appId" -> Just CEBIVIAppId
188− "appName" -> Just CEBIVIAppName
189− "appVersionCode" -> Just CEBIVIAppVersionCode
190− "appVersionName" -> Just CEBIVIAppVersionName
191− "clickClasses" -> Just CEBIVIClickClasses
192− "clickElement" -> Just CEBIVIClickElement
193− "clickId" -> Just CEBIVIClickId
194− "clickTarget" -> Just CEBIVIClickTarget
195− "clickText" -> Just CEBIVIClickText
196− "clickUrl" -> Just CEBIVIClickURL
197− "containerId" -> Just CEBIVIContainerId
198− "containerVersion" -> Just CEBIVIContainerVersion
199− "debugMode" -> Just CEBIVIDebugMode
200− "deviceName" -> Just CEBIVIDeviceName
201− "environmentName" -> Just CEBIVIEnvironmentName
202− "errorLine" -> Just CEBIVIErrorLine
203− "errorMessage" -> Just CEBIVIErrorMessage
204− "errorUrl" -> Just CEBIVIErrorURL
205− "event" -> Just CEBIVIEvent
206− "formClasses" -> Just CEBIVIFormClasses
207− "formElement" -> Just CEBIVIFormElement
208− "formId" -> Just CEBIVIFormId
209− "formTarget" -> Just CEBIVIFormTarget
210− "formText" -> Just CEBIVIFormText
211− "formUrl" -> Just CEBIVIFormURL
212− "historySource" -> Just CEBIVIHistorySource
213− "htmlId" -> Just CEBIVIHTMLId
214− "language" -> Just CEBIVILanguage
215− "newHistoryFragment" -> Just CEBIVINewHistoryFragment
216− "newHistoryState" -> Just CEBIVINewHistoryState
217− "oldHistoryFragment" -> Just CEBIVIOldHistoryFragment
218− "oldHistoryState" -> Just CEBIVIOldHistoryState
219− "osVersion" -> Just CEBIVIOSVersion
220− "pageHostname" -> Just CEBIVIPageHostname
221− "pagePath" -> Just CEBIVIPagePath
222− "pageUrl" -> Just CEBIVIPageURL
223− "platform" -> Just CEBIVIPlatform
224− "randomNumber" -> Just CEBIVIRandomNumber
225− "referrer" -> Just CEBIVIReferrer
226− "resolution" -> Just CEBIVIResolution
227− "sdkVersion" -> Just CEBIVISdkVersion
228− _ -> Nothing
229−
230−instance ToText ContainerEnabledBuiltInVariableItem where
231− toText = \case
183+instance FromHttpApiData ContainerEnabledBuiltInVariableItem where
184+ parseQueryParam = \case
185+ "advertiserId" -> Right CEBIVIAdvertiserId
186+ "advertisingTrackingEnabled" -> Right CEBIVIAdvertisingTrackingEnabled
187+ "appId" -> Right CEBIVIAppId
188+ "appName" -> Right CEBIVIAppName
189+ "appVersionCode" -> Right CEBIVIAppVersionCode
190+ "appVersionName" -> Right CEBIVIAppVersionName
191+ "clickClasses" -> Right CEBIVIClickClasses
192+ "clickElement" -> Right CEBIVIClickElement
193+ "clickId" -> Right CEBIVIClickId
194+ "clickTarget" -> Right CEBIVIClickTarget
195+ "clickText" -> Right CEBIVIClickText
196+ "clickUrl" -> Right CEBIVIClickURL
197+ "containerId" -> Right CEBIVIContainerId
198+ "containerVersion" -> Right CEBIVIContainerVersion
199+ "debugMode" -> Right CEBIVIDebugMode
200+ "deviceName" -> Right CEBIVIDeviceName
201+ "environmentName" -> Right CEBIVIEnvironmentName
202+ "errorLine" -> Right CEBIVIErrorLine
203+ "errorMessage" -> Right CEBIVIErrorMessage
204+ "errorUrl" -> Right CEBIVIErrorURL
205+ "event" -> Right CEBIVIEvent
206+ "formClasses" -> Right CEBIVIFormClasses
207+ "formElement" -> Right CEBIVIFormElement
208+ "formId" -> Right CEBIVIFormId
209+ "formTarget" -> Right CEBIVIFormTarget
210+ "formText" -> Right CEBIVIFormText
211+ "formUrl" -> Right CEBIVIFormURL
212+ "historySource" -> Right CEBIVIHistorySource
213+ "htmlId" -> Right CEBIVIHTMLId
214+ "language" -> Right CEBIVILanguage
215+ "newHistoryFragment" -> Right CEBIVINewHistoryFragment
216+ "newHistoryState" -> Right CEBIVINewHistoryState
217+ "oldHistoryFragment" -> Right CEBIVIOldHistoryFragment
218+ "oldHistoryState" -> Right CEBIVIOldHistoryState
219+ "osVersion" -> Right CEBIVIOSVersion
220+ "pageHostname" -> Right CEBIVIPageHostname
221+ "pagePath" -> Right CEBIVIPagePath
222+ "pageUrl" -> Right CEBIVIPageURL
223+ "platform" -> Right CEBIVIPlatform
224+ "randomNumber" -> Right CEBIVIRandomNumber
225+ "referrer" -> Right CEBIVIReferrer
226+ "resolution" -> Right CEBIVIResolution
227+ "sdkVersion" -> Right CEBIVISdkVersion
228+ x -> Left ("Unable to parse ContainerEnabledBuiltInVariableItem from: " <> x)
229+
230+instance ToHttpApiData ContainerEnabledBuiltInVariableItem where
231+ toQueryParam = \case
232232 CEBIVIAdvertiserId -> "advertiserId"
233233 CEBIVIAdvertisingTrackingEnabled -> "advertisingTrackingEnabled"
234234 CEBIVIAppId -> "appId"
@@ -294,17 +294,17 @@ data ContainerUsageContextItem
294294
295295instance Hashable ContainerUsageContextItem
296296
297−instance FromText ContainerUsageContextItem where
298− fromText = \case
299− "android" -> Just Android
300− "androidSdk5" -> Just ANDROIdSDK5
301− "ios" -> Just Ios
302− "iosSdk5" -> Just IOSSDK5
303− "web" -> Just Web
304− _ -> Nothing
305−
306−instance ToText ContainerUsageContextItem where
307− toText = \case
297+instance FromHttpApiData ContainerUsageContextItem where
298+ parseQueryParam = \case
299+ "android" -> Right Android
300+ "androidSdk5" -> Right ANDROIdSDK5
301+ "ios" -> Right Ios
302+ "iosSdk5" -> Right IOSSDK5
303+ "web" -> Right Web
304+ x -> Left ("Unable to parse ContainerUsageContextItem from: " <> x)
305+
306+instance ToHttpApiData ContainerUsageContextItem where
307+ toQueryParam = \case
308308 Android -> "android"
309309 ANDROIdSDK5 -> "androidSdk5"
310310 Ios -> "ios"
@@ -345,23 +345,23 @@ data ConditionType
345345
346346instance Hashable ConditionType
347347
348−instance FromText ConditionType where
349− fromText = \case
350− "contains" -> Just Contains
351− "cssSelector" -> Just CssSelector
352− "endsWith" -> Just EndsWith
353− "equals" -> Just Equals
354− "greater" -> Just Greater
355− "greaterOrEquals" -> Just GreaterOrEquals
356− "less" -> Just Less
357− "lessOrEquals" -> Just LessOrEquals
358− "matchRegex" -> Just MatchRegex
359− "startsWith" -> Just StartsWith
360− "urlMatches" -> Just URLMatches
361− _ -> Nothing
362−
363−instance ToText ConditionType where
364− toText = \case
348+instance FromHttpApiData ConditionType where
349+ parseQueryParam = \case
350+ "contains" -> Right Contains
351+ "cssSelector" -> Right CssSelector
352+ "endsWith" -> Right EndsWith
353+ "equals" -> Right Equals
354+ "greater" -> Right Greater
355+ "greaterOrEquals" -> Right GreaterOrEquals
356+ "less" -> Right Less
357+ "lessOrEquals" -> Right LessOrEquals
358+ "matchRegex" -> Right MatchRegex
359+ "startsWith" -> Right StartsWith
360+ "urlMatches" -> Right URLMatches
361+ x -> Left ("Unable to parse ConditionType from: " <> x)
362+
363+instance ToHttpApiData ConditionType where
364+ toQueryParam = \case
365365 Contains -> "contains"
366366 CssSelector -> "cssSelector"
367367 EndsWith -> "endsWith"
@@ -395,17 +395,17 @@ data AccountAccessPermissionItem
395395
396396instance Hashable AccountAccessPermissionItem
397397
398−instance FromText AccountAccessPermissionItem where
399− fromText = \case
400− "delete" -> Just Delete'
401− "edit" -> Just Edit
402− "manage" -> Just Manage
403− "publish" -> Just Publish
404− "read" -> Just Read'
405− _ -> Nothing
406−
407−instance ToText AccountAccessPermissionItem where
408− toText = \case
398+instance FromHttpApiData AccountAccessPermissionItem where
399+ parseQueryParam = \case
400+ "delete" -> Right Delete'
401+ "edit" -> Right Edit
402+ "manage" -> Right Manage
403+ "publish" -> Right Publish
404+ "read" -> Right Read'
405+ x -> Left ("Unable to parse AccountAccessPermissionItem from: " <> x)
406+
407+instance ToHttpApiData AccountAccessPermissionItem where
408+ toQueryParam = \case
409409 Delete' -> "delete"
410410 Edit -> "edit"
411411 Manage -> "manage"
@@ -430,15 +430,15 @@ data TagTagFiringOption
430430
431431instance Hashable TagTagFiringOption
432432
433−instance FromText TagTagFiringOption where
434− fromText = \case
435− "oncePerEvent" -> Just OncePerEvent
436− "oncePerLoad" -> Just OncePerLoad
437− "unlimited" -> Just Unlimited
438− _ -> Nothing
433+instance FromHttpApiData TagTagFiringOption where
434+ parseQueryParam = \case
435+ "oncePerEvent" -> Right OncePerEvent
436+ "oncePerLoad" -> Right OncePerLoad
437+ "unlimited" -> Right Unlimited
438+ x -> Left ("Unable to parse TagTagFiringOption from: " <> x)
439439
440−instance ToText TagTagFiringOption where
441− toText = \case
440+instance ToHttpApiData TagTagFiringOption where
441+ toQueryParam = \case
442442 OncePerEvent -> "oncePerEvent"
443443 OncePerLoad -> "oncePerLoad"
444444 Unlimited -> "unlimited"
@@ -471,17 +471,17 @@ data ParameterType
471471
472472instance Hashable ParameterType
473473
474−instance FromText ParameterType where
475− fromText = \case
476− "boolean" -> Just Boolean
477− "integer" -> Just Integer
478− "list" -> Just List
479− "map" -> Just Map
480− "template" -> Just Template
481− _ -> Nothing
482−
483−instance ToText ParameterType where
484− toText = \case
474+instance FromHttpApiData ParameterType where
475+ parseQueryParam = \case
476+ "boolean" -> Right Boolean
477+ "integer" -> Right Integer
478+ "list" -> Right List
479+ "map" -> Right Map
480+ "template" -> Right Template
481+ x -> Left ("Unable to parse ParameterType from: " <> x)
482+
483+instance ToHttpApiData ParameterType where
484+ toQueryParam = \case
485485 Boolean -> "boolean"
486486 Integer -> "integer"
487487 List -> "list"
@@ -509,17 +509,17 @@ data ContainerAccessPermissionItem
509509
510510instance Hashable ContainerAccessPermissionItem
511511
512−instance FromText ContainerAccessPermissionItem where
513− fromText = \case
514− "delete" -> Just CAPIDelete'
515− "edit" -> Just CAPIEdit
516− "manage" -> Just CAPIManage
517− "publish" -> Just CAPIPublish
518− "read" -> Just CAPIRead'
519− _ -> Nothing
520−
521−instance ToText ContainerAccessPermissionItem where
522− toText = \case
512+instance FromHttpApiData ContainerAccessPermissionItem where
513+ parseQueryParam = \case
514+ "delete" -> Right CAPIDelete'
515+ "edit" -> Right CAPIEdit
516+ "manage" -> Right CAPIManage
517+ "publish" -> Right CAPIPublish
518+ "read" -> Right CAPIRead'
519+ x -> Left ("Unable to parse ContainerAccessPermissionItem from: " <> x)
520+
521+instance ToHttpApiData ContainerAccessPermissionItem where
522+ toQueryParam = \case
523523 CAPIDelete' -> "delete"
524524 CAPIEdit -> "edit"
525525 CAPIManage -> "manage"
@@ -546,16 +546,16 @@ data EnvironmentType
546546
547547instance Hashable EnvironmentType
548548
549−instance FromText EnvironmentType where
550− fromText = \case
551− "draft" -> Just Draft
552− "latest" -> Just Latest
553− "live" -> Just Live
554− "user" -> Just User
555− _ -> Nothing
549+instance FromHttpApiData EnvironmentType where
550+ parseQueryParam = \case
551+ "draft" -> Right Draft
552+ "latest" -> Right Latest
553+ "live" -> Right Live
554+ "user" -> Right User
555+ x -> Left ("Unable to parse EnvironmentType from: " <> x)
556556
557−instance ToText EnvironmentType where
558− toText = \case
557+instance ToHttpApiData EnvironmentType where
558+ toQueryParam = \case
559559 Draft -> "draft"
560560 Latest -> "latest"
561561 Live -> "live"
gogol-translate/gen/Network/Google/Translate/Types/Sum.hs+8−8
@@ -30,14 +30,14 @@ data TranslationsListFormat
3030
3131instance Hashable TranslationsListFormat
3232
33−instance FromText TranslationsListFormat where
34− fromText = \case
35− "html" -> Just HTML
36− "text" -> Just Text
37− _ -> Nothing
38−
39−instance ToText TranslationsListFormat where
40− toText = \case
33+instance FromHttpApiData TranslationsListFormat where
34+ parseQueryParam = \case
35+ "html" -> Right HTML
36+ "text" -> Right Text
37+ x -> Left ("Unable to parse TranslationsListFormat from: " <> x)
38+
39+instance ToHttpApiData TranslationsListFormat where
40+ toQueryParam = \case
4141 HTML -> "html"
4242 Text -> "text"
4343
gogol-urlshortener/gen/Network/Google/URLShortener/Types/Sum.hs+15−15
@@ -30,14 +30,14 @@ data URLListProjection
3030
3131instance Hashable URLListProjection
3232
33−instance FromText URLListProjection where
34− fromText = \case
35− "ANALYTICS_CLICKS" -> Just AnalyticsClicks
36− "FULL" -> Just Full
37− _ -> Nothing
33+instance FromHttpApiData URLListProjection where
34+ parseQueryParam = \case
35+ "ANALYTICS_CLICKS" -> Right AnalyticsClicks
36+ "FULL" -> Right Full
37+ x -> Left ("Unable to parse URLListProjection from: " <> x)
3838
39−instance ToText URLListProjection where
40− toText = \case
39+instance ToHttpApiData URLListProjection where
40+ toQueryParam = \case
4141 AnalyticsClicks -> "ANALYTICS_CLICKS"
4242 Full -> "FULL"
4343
@@ -62,15 +62,15 @@ data URLGetProjection
6262
6363instance Hashable URLGetProjection
6464
65−instance FromText URLGetProjection where
66− fromText = \case
67− "ANALYTICS_CLICKS" -> Just UGPAnalyticsClicks
68− "ANALYTICS_TOP_STRINGS" -> Just UGPAnalyticsTopStrings
69− "FULL" -> Just UGPFull
70− _ -> Nothing
65+instance FromHttpApiData URLGetProjection where
66+ parseQueryParam = \case
67+ "ANALYTICS_CLICKS" -> Right UGPAnalyticsClicks
68+ "ANALYTICS_TOP_STRINGS" -> Right UGPAnalyticsTopStrings
69+ "FULL" -> Right UGPFull
70+ x -> Left ("Unable to parse URLGetProjection from: " <> x)
7171
72−instance ToText URLGetProjection where
73− toText = \case
72+instance ToHttpApiData URLGetProjection where
73+ toQueryParam = \case
7474 UGPAnalyticsClicks -> "ANALYTICS_CLICKS"
7575 UGPAnalyticsTopStrings -> "ANALYTICS_TOP_STRINGS"
7676 UGPFull -> "FULL"
gogol-useraccounts/gen/Network/Google/UserAccounts/Types/Sum.hs+28−28
@@ -55,27 +55,27 @@ data OperationWarningsItemCode
5555
5656instance Hashable OperationWarningsItemCode
5757
58−instance FromText OperationWarningsItemCode where
59− fromText = \case
60− "CLEANUP_FAILED" -> Just CleanupFailed
61− "DEPRECATED_RESOURCE_USED" -> Just DeprecatedResourceUsed
62− "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Just DiskSizeLargerThanImageSize
63− "INJECTED_KERNELS_DEPRECATED" -> Just InjectedKernelsDeprecated
64− "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Just NextHopAddressNotAssigned
65− "NEXT_HOP_CANNOT_IP_FORWARD" -> Just NextHopCannotIPForward
66− "NEXT_HOP_INSTANCE_NOT_FOUND" -> Just NextHopInstanceNotFound
67− "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Just NextHopInstanceNotOnNetwork
68− "NEXT_HOP_NOT_RUNNING" -> Just NextHopNotRunning
69− "NOT_CRITICAL_ERROR" -> Just NotCriticalError
70− "NO_RESULTS_ON_PAGE" -> Just NoResultsOnPage
71− "REQUIRED_TOS_AGREEMENT" -> Just RequiredTosAgreement
72− "RESOURCE_NOT_DELETED" -> Just ResourceNotDeleted
73− "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Just SingleInstancePropertyTemplate
74− "UNREACHABLE" -> Just Unreachable
75− _ -> Nothing
58+instance FromHttpApiData OperationWarningsItemCode where
59+ parseQueryParam = \case
60+ "CLEANUP_FAILED" -> Right CleanupFailed
61+ "DEPRECATED_RESOURCE_USED" -> Right DeprecatedResourceUsed
62+ "DISK_SIZE_LARGER_THAN_IMAGE_SIZE" -> Right DiskSizeLargerThanImageSize
63+ "INJECTED_KERNELS_DEPRECATED" -> Right InjectedKernelsDeprecated
64+ "NEXT_HOP_ADDRESS_NOT_ASSIGNED" -> Right NextHopAddressNotAssigned
65+ "NEXT_HOP_CANNOT_IP_FORWARD" -> Right NextHopCannotIPForward
66+ "NEXT_HOP_INSTANCE_NOT_FOUND" -> Right NextHopInstanceNotFound
67+ "NEXT_HOP_INSTANCE_NOT_ON_NETWORK" -> Right NextHopInstanceNotOnNetwork
68+ "NEXT_HOP_NOT_RUNNING" -> Right NextHopNotRunning
69+ "NOT_CRITICAL_ERROR" -> Right NotCriticalError
70+ "NO_RESULTS_ON_PAGE" -> Right NoResultsOnPage
71+ "REQUIRED_TOS_AGREEMENT" -> Right RequiredTosAgreement
72+ "RESOURCE_NOT_DELETED" -> Right ResourceNotDeleted
73+ "SINGLE_INSTANCE_PROPERTY_TEMPLATE" -> Right SingleInstancePropertyTemplate
74+ "UNREACHABLE" -> Right Unreachable
75+ x -> Left ("Unable to parse OperationWarningsItemCode from: " <> x)
7676
77−instance ToText OperationWarningsItemCode where
78− toText = \case
77+instance ToHttpApiData OperationWarningsItemCode where
78+ toQueryParam = \case
7979 CleanupFailed -> "CLEANUP_FAILED"
8080 DeprecatedResourceUsed -> "DEPRECATED_RESOURCE_USED"
8181 DiskSizeLargerThanImageSize -> "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
@@ -111,15 +111,15 @@ data OperationStatus
111111
112112instance Hashable OperationStatus
113113
114−instance FromText OperationStatus where
115− fromText = \case
116− "DONE" -> Just Done
117− "PENDING" -> Just Pending
118− "RUNNING" -> Just Running
119− _ -> Nothing
114+instance FromHttpApiData OperationStatus where
115+ parseQueryParam = \case
116+ "DONE" -> Right Done
117+ "PENDING" -> Right Pending
118+ "RUNNING" -> Right Running
119+ x -> Left ("Unable to parse OperationStatus from: " <> x)
120120
121−instance ToText OperationStatus where
122− toText = \case
121+instance ToHttpApiData OperationStatus where
122+ toQueryParam = \case
123123 Done -> "DONE"
124124 Pending -> "PENDING"
125125 Running -> "RUNNING"
gogol-vision/gen/Network/Google/Vision/Types/Sum.hs+194−194
@@ -42,18 +42,18 @@ data FaceAnnotationUnderExposedLikelihood
4242
4343instance Hashable FaceAnnotationUnderExposedLikelihood
4444
45−instance FromText FaceAnnotationUnderExposedLikelihood where
46− fromText = \case
47− "UNKNOWN" -> Just Unknown
48− "VERY_UNLIKELY" -> Just VeryUnlikely
49− "UNLIKELY" -> Just Unlikely
50− "POSSIBLE" -> Just Possible
51− "LIKELY" -> Just Likely
52− "VERY_LIKELY" -> Just VeryLikely
53− _ -> Nothing
54−
55−instance ToText FaceAnnotationUnderExposedLikelihood where
56− toText = \case
45+instance FromHttpApiData FaceAnnotationUnderExposedLikelihood where
46+ parseQueryParam = \case
47+ "UNKNOWN" -> Right Unknown
48+ "VERY_UNLIKELY" -> Right VeryUnlikely
49+ "UNLIKELY" -> Right Unlikely
50+ "POSSIBLE" -> Right Possible
51+ "LIKELY" -> Right Likely
52+ "VERY_LIKELY" -> Right VeryLikely
53+ x -> Left ("Unable to parse FaceAnnotationUnderExposedLikelihood from: " <> x)
54+
55+instance ToHttpApiData FaceAnnotationUnderExposedLikelihood where
56+ toQueryParam = \case
5757 Unknown -> "UNKNOWN"
5858 VeryUnlikely -> "VERY_UNLIKELY"
5959 Unlikely -> "UNLIKELY"
@@ -91,18 +91,18 @@ data FaceAnnotationHeadwearLikelihood
9191
9292instance Hashable FaceAnnotationHeadwearLikelihood
9393
94−instance FromText FaceAnnotationHeadwearLikelihood where
95− fromText = \case
96− "UNKNOWN" -> Just FAHLUnknown
97− "VERY_UNLIKELY" -> Just FAHLVeryUnlikely
98− "UNLIKELY" -> Just FAHLUnlikely
99− "POSSIBLE" -> Just FAHLPossible
100− "LIKELY" -> Just FAHLLikely
101− "VERY_LIKELY" -> Just FAHLVeryLikely
102− _ -> Nothing
103−
104−instance ToText FaceAnnotationHeadwearLikelihood where
105− toText = \case
94+instance FromHttpApiData FaceAnnotationHeadwearLikelihood where
95+ parseQueryParam = \case
96+ "UNKNOWN" -> Right FAHLUnknown
97+ "VERY_UNLIKELY" -> Right FAHLVeryUnlikely
98+ "UNLIKELY" -> Right FAHLUnlikely
99+ "POSSIBLE" -> Right FAHLPossible
100+ "LIKELY" -> Right FAHLLikely
101+ "VERY_LIKELY" -> Right FAHLVeryLikely
102+ x -> Left ("Unable to parse FaceAnnotationHeadwearLikelihood from: " <> x)
103+
104+instance ToHttpApiData FaceAnnotationHeadwearLikelihood where
105+ toQueryParam = \case
106106 FAHLUnknown -> "UNKNOWN"
107107 FAHLVeryUnlikely -> "VERY_UNLIKELY"
108108 FAHLUnlikely -> "UNLIKELY"
@@ -140,18 +140,18 @@ data SafeSearchAnnotationAdult
140140
141141instance Hashable SafeSearchAnnotationAdult
142142
143−instance FromText SafeSearchAnnotationAdult where
144− fromText = \case
145− "UNKNOWN" -> Just SSAAUnknown
146− "VERY_UNLIKELY" -> Just SSAAVeryUnlikely
147− "UNLIKELY" -> Just SSAAUnlikely
148− "POSSIBLE" -> Just SSAAPossible
149− "LIKELY" -> Just SSAALikely
150− "VERY_LIKELY" -> Just SSAAVeryLikely
151− _ -> Nothing
152−
153−instance ToText SafeSearchAnnotationAdult where
154− toText = \case
143+instance FromHttpApiData SafeSearchAnnotationAdult where
144+ parseQueryParam = \case
145+ "UNKNOWN" -> Right SSAAUnknown
146+ "VERY_UNLIKELY" -> Right SSAAVeryUnlikely
147+ "UNLIKELY" -> Right SSAAUnlikely
148+ "POSSIBLE" -> Right SSAAPossible
149+ "LIKELY" -> Right SSAALikely
150+ "VERY_LIKELY" -> Right SSAAVeryLikely
151+ x -> Left ("Unable to parse SafeSearchAnnotationAdult from: " <> x)
152+
153+instance ToHttpApiData SafeSearchAnnotationAdult where
154+ toQueryParam = \case
155155 SSAAUnknown -> "UNKNOWN"
156156 SSAAVeryUnlikely -> "VERY_UNLIKELY"
157157 SSAAUnlikely -> "UNLIKELY"
@@ -189,18 +189,18 @@ data FaceAnnotationAngerLikelihood
189189
190190instance Hashable FaceAnnotationAngerLikelihood
191191
192−instance FromText FaceAnnotationAngerLikelihood where
193− fromText = \case
194− "UNKNOWN" -> Just FAALUnknown
195− "VERY_UNLIKELY" -> Just FAALVeryUnlikely
196− "UNLIKELY" -> Just FAALUnlikely
197− "POSSIBLE" -> Just FAALPossible
198− "LIKELY" -> Just FAALLikely
199− "VERY_LIKELY" -> Just FAALVeryLikely
200− _ -> Nothing
201−
202−instance ToText FaceAnnotationAngerLikelihood where
203− toText = \case
192+instance FromHttpApiData FaceAnnotationAngerLikelihood where
193+ parseQueryParam = \case
194+ "UNKNOWN" -> Right FAALUnknown
195+ "VERY_UNLIKELY" -> Right FAALVeryUnlikely
196+ "UNLIKELY" -> Right FAALUnlikely
197+ "POSSIBLE" -> Right FAALPossible
198+ "LIKELY" -> Right FAALLikely
199+ "VERY_LIKELY" -> Right FAALVeryLikely
200+ x -> Left ("Unable to parse FaceAnnotationAngerLikelihood from: " <> x)
201+
202+instance ToHttpApiData FaceAnnotationAngerLikelihood where
203+ toQueryParam = \case
204204 FAALUnknown -> "UNKNOWN"
205205 FAALVeryUnlikely -> "VERY_UNLIKELY"
206206 FAALUnlikely -> "UNLIKELY"
@@ -238,18 +238,18 @@ data SafeSearchAnnotationMedical
238238
239239instance Hashable SafeSearchAnnotationMedical
240240
241−instance FromText SafeSearchAnnotationMedical where
242− fromText = \case
243− "UNKNOWN" -> Just SSAMUnknown
244− "VERY_UNLIKELY" -> Just SSAMVeryUnlikely
245− "UNLIKELY" -> Just SSAMUnlikely
246− "POSSIBLE" -> Just SSAMPossible
247− "LIKELY" -> Just SSAMLikely
248− "VERY_LIKELY" -> Just SSAMVeryLikely
249− _ -> Nothing
250−
251−instance ToText SafeSearchAnnotationMedical where
252− toText = \case
241+instance FromHttpApiData SafeSearchAnnotationMedical where
242+ parseQueryParam = \case
243+ "UNKNOWN" -> Right SSAMUnknown
244+ "VERY_UNLIKELY" -> Right SSAMVeryUnlikely
245+ "UNLIKELY" -> Right SSAMUnlikely
246+ "POSSIBLE" -> Right SSAMPossible
247+ "LIKELY" -> Right SSAMLikely
248+ "VERY_LIKELY" -> Right SSAMVeryLikely
249+ x -> Left ("Unable to parse SafeSearchAnnotationMedical from: " <> x)
250+
251+instance ToHttpApiData SafeSearchAnnotationMedical where
252+ toQueryParam = \case
253253 SSAMUnknown -> "UNKNOWN"
254254 SSAMVeryUnlikely -> "VERY_UNLIKELY"
255255 SSAMUnlikely -> "UNLIKELY"
@@ -287,18 +287,18 @@ data FaceAnnotationBlurredLikelihood
287287
288288instance Hashable FaceAnnotationBlurredLikelihood
289289
290−instance FromText FaceAnnotationBlurredLikelihood where
291− fromText = \case
292− "UNKNOWN" -> Just FABLUnknown
293− "VERY_UNLIKELY" -> Just FABLVeryUnlikely
294− "UNLIKELY" -> Just FABLUnlikely
295− "POSSIBLE" -> Just FABLPossible
296− "LIKELY" -> Just FABLLikely
297− "VERY_LIKELY" -> Just FABLVeryLikely
298− _ -> Nothing
299−
300−instance ToText FaceAnnotationBlurredLikelihood where
301− toText = \case
290+instance FromHttpApiData FaceAnnotationBlurredLikelihood where
291+ parseQueryParam = \case
292+ "UNKNOWN" -> Right FABLUnknown
293+ "VERY_UNLIKELY" -> Right FABLVeryUnlikely
294+ "UNLIKELY" -> Right FABLUnlikely
295+ "POSSIBLE" -> Right FABLPossible
296+ "LIKELY" -> Right FABLLikely
297+ "VERY_LIKELY" -> Right FABLVeryLikely
298+ x -> Left ("Unable to parse FaceAnnotationBlurredLikelihood from: " <> x)
299+
300+instance ToHttpApiData FaceAnnotationBlurredLikelihood where
301+ toQueryParam = \case
302302 FABLUnknown -> "UNKNOWN"
303303 FABLVeryUnlikely -> "VERY_UNLIKELY"
304304 FABLUnlikely -> "UNLIKELY"
@@ -336,18 +336,18 @@ data SafeSearchAnnotationViolence
336336
337337instance Hashable SafeSearchAnnotationViolence
338338
339−instance FromText SafeSearchAnnotationViolence where
340− fromText = \case
341− "UNKNOWN" -> Just SSAVUnknown
342− "VERY_UNLIKELY" -> Just SSAVVeryUnlikely
343− "UNLIKELY" -> Just SSAVUnlikely
344− "POSSIBLE" -> Just SSAVPossible
345− "LIKELY" -> Just SSAVLikely
346− "VERY_LIKELY" -> Just SSAVVeryLikely
347− _ -> Nothing
348−
349−instance ToText SafeSearchAnnotationViolence where
350− toText = \case
339+instance FromHttpApiData SafeSearchAnnotationViolence where
340+ parseQueryParam = \case
341+ "UNKNOWN" -> Right SSAVUnknown
342+ "VERY_UNLIKELY" -> Right SSAVVeryUnlikely
343+ "UNLIKELY" -> Right SSAVUnlikely
344+ "POSSIBLE" -> Right SSAVPossible
345+ "LIKELY" -> Right SSAVLikely
346+ "VERY_LIKELY" -> Right SSAVVeryLikely
347+ x -> Left ("Unable to parse SafeSearchAnnotationViolence from: " <> x)
348+
349+instance ToHttpApiData SafeSearchAnnotationViolence where
350+ toQueryParam = \case
351351 SSAVUnknown -> "UNKNOWN"
352352 SSAVVeryUnlikely -> "VERY_UNLIKELY"
353353 SSAVUnlikely -> "UNLIKELY"
@@ -393,20 +393,20 @@ data FeatureType
393393
394394instance Hashable FeatureType
395395
396−instance FromText FeatureType where
397− fromText = \case
398− "TYPE_UNSPECIFIED" -> Just TypeUnspecified
399− "FACE_DETECTION" -> Just FaceDetection
400− "LANDMARK_DETECTION" -> Just LandmarkDetection
401− "LOGO_DETECTION" -> Just LogoDetection
402− "LABEL_DETECTION" -> Just LabelDetection
403− "TEXT_DETECTION" -> Just TextDetection
404− "SAFE_SEARCH_DETECTION" -> Just SafeSearchDetection
405− "IMAGE_PROPERTIES" -> Just ImageProperties
406− _ -> Nothing
407−
408−instance ToText FeatureType where
409− toText = \case
396+instance FromHttpApiData FeatureType where
397+ parseQueryParam = \case
398+ "TYPE_UNSPECIFIED" -> Right TypeUnspecified
399+ "FACE_DETECTION" -> Right FaceDetection
400+ "LANDMARK_DETECTION" -> Right LandmarkDetection
401+ "LOGO_DETECTION" -> Right LogoDetection
402+ "LABEL_DETECTION" -> Right LabelDetection
403+ "TEXT_DETECTION" -> Right TextDetection
404+ "SAFE_SEARCH_DETECTION" -> Right SafeSearchDetection
405+ "IMAGE_PROPERTIES" -> Right ImageProperties
406+ x -> Left ("Unable to parse FeatureType from: " <> x)
407+
408+instance ToHttpApiData FeatureType where
409+ toQueryParam = \case
410410 TypeUnspecified -> "TYPE_UNSPECIFIED"
411411 FaceDetection -> "FACE_DETECTION"
412412 LandmarkDetection -> "LANDMARK_DETECTION"
@@ -533,47 +533,47 @@ data LandmarkType
533533
534534instance Hashable LandmarkType
535535
536−instance FromText LandmarkType where
537− fromText = \case
538− "UNKNOWN_LANDMARK" -> Just UnknownLandmark
539− "LEFT_EYE" -> Just LeftEye
540− "RIGHT_EYE" -> Just RightEye
541− "LEFT_OF_LEFT_EYEBROW" -> Just LeftOfLeftEyebrow
542− "RIGHT_OF_LEFT_EYEBROW" -> Just RightOfLeftEyebrow
543− "LEFT_OF_RIGHT_EYEBROW" -> Just LeftOfRightEyebrow
544− "RIGHT_OF_RIGHT_EYEBROW" -> Just RightOfRightEyebrow
545− "MIDPOINT_BETWEEN_EYES" -> Just MidpointBetweenEyes
546− "NOSE_TIP" -> Just NoseTip
547− "UPPER_LIP" -> Just UpperLip
548− "LOWER_LIP" -> Just LowerLip
549− "MOUTH_LEFT" -> Just MouthLeft
550− "MOUTH_RIGHT" -> Just MouthRight
551− "MOUTH_CENTER" -> Just MouthCenter
552− "NOSE_BOTTOM_RIGHT" -> Just NoseBottomRight
553− "NOSE_BOTTOM_LEFT" -> Just NoseBottomLeft
554− "NOSE_BOTTOM_CENTER" -> Just NoseBottomCenter
555− "LEFT_EYE_TOP_BOUNDARY" -> Just LeftEyeTopBoundary
556− "LEFT_EYE_RIGHT_CORNER" -> Just LeftEyeRightCorner
557− "LEFT_EYE_BOTTOM_BOUNDARY" -> Just LeftEyeBottomBoundary
558− "LEFT_EYE_LEFT_CORNER" -> Just LeftEyeLeftCorner
559− "RIGHT_EYE_TOP_BOUNDARY" -> Just RightEyeTopBoundary
560− "RIGHT_EYE_RIGHT_CORNER" -> Just RightEyeRightCorner
561− "RIGHT_EYE_BOTTOM_BOUNDARY" -> Just RightEyeBottomBoundary
562− "RIGHT_EYE_LEFT_CORNER" -> Just RightEyeLeftCorner
563− "LEFT_EYEBROW_UPPER_MIDPOINT" -> Just LeftEyebrowUpperMidpoint
564− "RIGHT_EYEBROW_UPPER_MIDPOINT" -> Just RightEyebrowUpperMidpoint
565− "LEFT_EAR_TRAGION" -> Just LeftEarTragion
566− "RIGHT_EAR_TRAGION" -> Just RightEarTragion
567− "LEFT_EYE_PUPIL" -> Just LeftEyePupil
568− "RIGHT_EYE_PUPIL" -> Just RightEyePupil
569− "FOREHEAD_GLABELLA" -> Just ForeheadGlabella
570− "CHIN_GNATHION" -> Just ChinGnathion
571− "CHIN_LEFT_GONION" -> Just ChinLeftGonion
572− "CHIN_RIGHT_GONION" -> Just ChinRightGonion
573− _ -> Nothing
574−
575−instance ToText LandmarkType where
576− toText = \case
536+instance FromHttpApiData LandmarkType where
537+ parseQueryParam = \case
538+ "UNKNOWN_LANDMARK" -> Right UnknownLandmark
539+ "LEFT_EYE" -> Right LeftEye
540+ "RIGHT_EYE" -> Right RightEye
541+ "LEFT_OF_LEFT_EYEBROW" -> Right LeftOfLeftEyebrow
542+ "RIGHT_OF_LEFT_EYEBROW" -> Right RightOfLeftEyebrow
543+ "LEFT_OF_RIGHT_EYEBROW" -> Right LeftOfRightEyebrow
544+ "RIGHT_OF_RIGHT_EYEBROW" -> Right RightOfRightEyebrow
545+ "MIDPOINT_BETWEEN_EYES" -> Right MidpointBetweenEyes
546+ "NOSE_TIP" -> Right NoseTip
547+ "UPPER_LIP" -> Right UpperLip
548+ "LOWER_LIP" -> Right LowerLip
549+ "MOUTH_LEFT" -> Right MouthLeft
550+ "MOUTH_RIGHT" -> Right MouthRight
551+ "MOUTH_CENTER" -> Right MouthCenter
552+ "NOSE_BOTTOM_RIGHT" -> Right NoseBottomRight
553+ "NOSE_BOTTOM_LEFT" -> Right NoseBottomLeft
554+ "NOSE_BOTTOM_CENTER" -> Right NoseBottomCenter
555+ "LEFT_EYE_TOP_BOUNDARY" -> Right LeftEyeTopBoundary
556+ "LEFT_EYE_RIGHT_CORNER" -> Right LeftEyeRightCorner
557+ "LEFT_EYE_BOTTOM_BOUNDARY" -> Right LeftEyeBottomBoundary
558+ "LEFT_EYE_LEFT_CORNER" -> Right LeftEyeLeftCorner
559+ "RIGHT_EYE_TOP_BOUNDARY" -> Right RightEyeTopBoundary
560+ "RIGHT_EYE_RIGHT_CORNER" -> Right RightEyeRightCorner
561+ "RIGHT_EYE_BOTTOM_BOUNDARY" -> Right RightEyeBottomBoundary
562+ "RIGHT_EYE_LEFT_CORNER" -> Right RightEyeLeftCorner
563+ "LEFT_EYEBROW_UPPER_MIDPOINT" -> Right LeftEyebrowUpperMidpoint
564+ "RIGHT_EYEBROW_UPPER_MIDPOINT" -> Right RightEyebrowUpperMidpoint
565+ "LEFT_EAR_TRAGION" -> Right LeftEarTragion
566+ "RIGHT_EAR_TRAGION" -> Right RightEarTragion
567+ "LEFT_EYE_PUPIL" -> Right LeftEyePupil
568+ "RIGHT_EYE_PUPIL" -> Right RightEyePupil
569+ "FOREHEAD_GLABELLA" -> Right ForeheadGlabella
570+ "CHIN_GNATHION" -> Right ChinGnathion
571+ "CHIN_LEFT_GONION" -> Right ChinLeftGonion
572+ "CHIN_RIGHT_GONION" -> Right ChinRightGonion
573+ x -> Left ("Unable to parse LandmarkType from: " <> x)
574+
575+instance ToHttpApiData LandmarkType where
576+ toQueryParam = \case
577577 UnknownLandmark -> "UNKNOWN_LANDMARK"
578578 LeftEye -> "LEFT_EYE"
579579 RightEye -> "RIGHT_EYE"
@@ -628,14 +628,14 @@ data Xgafv
628628
629629instance Hashable Xgafv
630630
631−instance FromText Xgafv where
632− fromText = \case
633− "1" -> Just X1
634− "2" -> Just X2
635− _ -> Nothing
631+instance FromHttpApiData Xgafv where
632+ parseQueryParam = \case
633+ "1" -> Right X1
634+ "2" -> Right X2
635+ x -> Left ("Unable to parse Xgafv from: " <> x)
636636
637−instance ToText Xgafv where
638− toText = \case
637+instance ToHttpApiData Xgafv where
638+ toQueryParam = \case
639639 X1 -> "1"
640640 X2 -> "2"
641641
@@ -670,18 +670,18 @@ data SafeSearchAnnotationSpoof
670670
671671instance Hashable SafeSearchAnnotationSpoof
672672
673−instance FromText SafeSearchAnnotationSpoof where
674− fromText = \case
675− "UNKNOWN" -> Just SSASUnknown
676− "VERY_UNLIKELY" -> Just SSASVeryUnlikely
677− "UNLIKELY" -> Just SSASUnlikely
678− "POSSIBLE" -> Just SSASPossible
679− "LIKELY" -> Just SSASLikely
680− "VERY_LIKELY" -> Just SSASVeryLikely
681− _ -> Nothing
682−
683−instance ToText SafeSearchAnnotationSpoof where
684− toText = \case
673+instance FromHttpApiData SafeSearchAnnotationSpoof where
674+ parseQueryParam = \case
675+ "UNKNOWN" -> Right SSASUnknown
676+ "VERY_UNLIKELY" -> Right SSASVeryUnlikely
677+ "UNLIKELY" -> Right SSASUnlikely
678+ "POSSIBLE" -> Right SSASPossible
679+ "LIKELY" -> Right SSASLikely
680+ "VERY_LIKELY" -> Right SSASVeryLikely
681+ x -> Left ("Unable to parse SafeSearchAnnotationSpoof from: " <> x)
682+
683+instance ToHttpApiData SafeSearchAnnotationSpoof where
684+ toQueryParam = \case
685685 SSASUnknown -> "UNKNOWN"
686686 SSASVeryUnlikely -> "VERY_UNLIKELY"
687687 SSASUnlikely -> "UNLIKELY"
@@ -719,18 +719,18 @@ data FaceAnnotationSurpriseLikelihood
719719
720720instance Hashable FaceAnnotationSurpriseLikelihood
721721
722−instance FromText FaceAnnotationSurpriseLikelihood where
723− fromText = \case
724− "UNKNOWN" -> Just FASLUnknown
725− "VERY_UNLIKELY" -> Just FASLVeryUnlikely
726− "UNLIKELY" -> Just FASLUnlikely
727− "POSSIBLE" -> Just FASLPossible
728− "LIKELY" -> Just FASLLikely
729− "VERY_LIKELY" -> Just FASLVeryLikely
730− _ -> Nothing
731−
732−instance ToText FaceAnnotationSurpriseLikelihood where
733− toText = \case
722+instance FromHttpApiData FaceAnnotationSurpriseLikelihood where
723+ parseQueryParam = \case
724+ "UNKNOWN" -> Right FASLUnknown
725+ "VERY_UNLIKELY" -> Right FASLVeryUnlikely
726+ "UNLIKELY" -> Right FASLUnlikely
727+ "POSSIBLE" -> Right FASLPossible
728+ "LIKELY" -> Right FASLLikely
729+ "VERY_LIKELY" -> Right FASLVeryLikely
730+ x -> Left ("Unable to parse FaceAnnotationSurpriseLikelihood from: " <> x)
731+
732+instance ToHttpApiData FaceAnnotationSurpriseLikelihood where
733+ toQueryParam = \case
734734 FASLUnknown -> "UNKNOWN"
735735 FASLVeryUnlikely -> "VERY_UNLIKELY"
736736 FASLUnlikely -> "UNLIKELY"
@@ -768,18 +768,18 @@ data FaceAnnotationSorrowLikelihood
768768
769769instance Hashable FaceAnnotationSorrowLikelihood
770770
771−instance FromText FaceAnnotationSorrowLikelihood where
772− fromText = \case
773− "UNKNOWN" -> Just FUnknown
774− "VERY_UNLIKELY" -> Just FVeryUnlikely
775− "UNLIKELY" -> Just FUnlikely
776− "POSSIBLE" -> Just FPossible
777− "LIKELY" -> Just FLikely
778− "VERY_LIKELY" -> Just FVeryLikely
779− _ -> Nothing
780−
781−instance ToText FaceAnnotationSorrowLikelihood where
782− toText = \case
771+instance FromHttpApiData FaceAnnotationSorrowLikelihood where
772+ parseQueryParam = \case
773+ "UNKNOWN" -> Right FUnknown
774+ "VERY_UNLIKELY" -> Right FVeryUnlikely
775+ "UNLIKELY" -> Right FUnlikely
776+ "POSSIBLE" -> Right FPossible
777+ "LIKELY" -> Right FLikely
778+ "VERY_LIKELY" -> Right FVeryLikely
779+ x -> Left ("Unable to parse FaceAnnotationSorrowLikelihood from: " <> x)
780+
781+instance ToHttpApiData FaceAnnotationSorrowLikelihood where
782+ toQueryParam = \case
783783 FUnknown -> "UNKNOWN"
784784 FVeryUnlikely -> "VERY_UNLIKELY"
785785 FUnlikely -> "UNLIKELY"
@@ -817,18 +817,18 @@ data FaceAnnotationJoyLikelihood
817817
818818instance Hashable FaceAnnotationJoyLikelihood
819819
820−instance FromText FaceAnnotationJoyLikelihood where
821− fromText = \case
822− "UNKNOWN" -> Just FAJLUnknown
823− "VERY_UNLIKELY" -> Just FAJLVeryUnlikely
824− "UNLIKELY" -> Just FAJLUnlikely
825− "POSSIBLE" -> Just FAJLPossible
826− "LIKELY" -> Just FAJLLikely
827− "VERY_LIKELY" -> Just FAJLVeryLikely
828− _ -> Nothing
829−
830−instance ToText FaceAnnotationJoyLikelihood where
831− toText = \case
820+instance FromHttpApiData FaceAnnotationJoyLikelihood where
821+ parseQueryParam = \case
822+ "UNKNOWN" -> Right FAJLUnknown
823+ "VERY_UNLIKELY" -> Right FAJLVeryUnlikely
824+ "UNLIKELY" -> Right FAJLUnlikely
825+ "POSSIBLE" -> Right FAJLPossible
826+ "LIKELY" -> Right FAJLLikely
827+ "VERY_LIKELY" -> Right FAJLVeryLikely
828+ x -> Left ("Unable to parse FaceAnnotationJoyLikelihood from: " <> x)
829+
830+instance ToHttpApiData FaceAnnotationJoyLikelihood where
831+ toQueryParam = \case
832832 FAJLUnknown -> "UNKNOWN"
833833 FAJLVeryUnlikely -> "VERY_UNLIKELY"
834834 FAJLUnlikely -> "UNLIKELY"
gogol-webmaster-tools/gen/Network/Google/WebmasterTools/Types/Sum.hs+92−92
@@ -42,21 +42,21 @@ data URLCrawlErrorsSamplesMarkAsFixedCategory
4242
4343instance Hashable URLCrawlErrorsSamplesMarkAsFixedCategory
4444
45−instance FromText URLCrawlErrorsSamplesMarkAsFixedCategory where
46− fromText = \case
47− "authPermissions" -> Just AuthPermissions
48− "flashContent" -> Just FlashContent
49− "manyToOneRedirect" -> Just ManyToOneRedirect
50− "notFollowed" -> Just NotFollowed
51− "notFound" -> Just NotFound
52− "other" -> Just Other
53− "roboted" -> Just Roboted
54− "serverError" -> Just ServerError
55− "soft404" -> Just SOFT404
56− _ -> Nothing
57−
58−instance ToText URLCrawlErrorsSamplesMarkAsFixedCategory where
59− toText = \case
45+instance FromHttpApiData URLCrawlErrorsSamplesMarkAsFixedCategory where
46+ parseQueryParam = \case
47+ "authPermissions" -> Right AuthPermissions
48+ "flashContent" -> Right FlashContent
49+ "manyToOneRedirect" -> Right ManyToOneRedirect
50+ "notFollowed" -> Right NotFollowed
51+ "notFound" -> Right NotFound
52+ "other" -> Right Other
53+ "roboted" -> Right Roboted
54+ "serverError" -> Right ServerError
55+ "soft404" -> Right SOFT404
56+ x -> Left ("Unable to parse URLCrawlErrorsSamplesMarkAsFixedCategory from: " <> x)
57+
58+instance ToHttpApiData URLCrawlErrorsSamplesMarkAsFixedCategory where
59+ toQueryParam = \case
6060 AuthPermissions -> "authPermissions"
6161 FlashContent -> "flashContent"
6262 ManyToOneRedirect -> "manyToOneRedirect"
@@ -85,15 +85,15 @@ data URLCrawlErrorsSamplesGetPlatform
8585
8686instance Hashable URLCrawlErrorsSamplesGetPlatform
8787
88−instance FromText URLCrawlErrorsSamplesGetPlatform where
89− fromText = \case
90− "mobile" -> Just Mobile
91− "smartphoneOnly" -> Just SmartphoneOnly
92− "web" -> Just Web
93− _ -> Nothing
88+instance FromHttpApiData URLCrawlErrorsSamplesGetPlatform where
89+ parseQueryParam = \case
90+ "mobile" -> Right Mobile
91+ "smartphoneOnly" -> Right SmartphoneOnly
92+ "web" -> Right Web
93+ x -> Left ("Unable to parse URLCrawlErrorsSamplesGetPlatform from: " <> x)
9494
95−instance ToText URLCrawlErrorsSamplesGetPlatform where
96− toText = \case
95+instance ToHttpApiData URLCrawlErrorsSamplesGetPlatform where
96+ toQueryParam = \case
9797 Mobile -> "mobile"
9898 SmartphoneOnly -> "smartphoneOnly"
9999 Web -> "web"
@@ -116,15 +116,15 @@ data URLCrawlErrorsSamplesMarkAsFixedPlatform
116116
117117instance Hashable URLCrawlErrorsSamplesMarkAsFixedPlatform
118118
119−instance FromText URLCrawlErrorsSamplesMarkAsFixedPlatform where
120− fromText = \case
121− "mobile" -> Just UCESMAFPMobile
122− "smartphoneOnly" -> Just UCESMAFPSmartphoneOnly
123− "web" -> Just UCESMAFPWeb
124− _ -> Nothing
119+instance FromHttpApiData URLCrawlErrorsSamplesMarkAsFixedPlatform where
120+ parseQueryParam = \case
121+ "mobile" -> Right UCESMAFPMobile
122+ "smartphoneOnly" -> Right UCESMAFPSmartphoneOnly
123+ "web" -> Right UCESMAFPWeb
124+ x -> Left ("Unable to parse URLCrawlErrorsSamplesMarkAsFixedPlatform from: " <> x)
125125
126−instance ToText URLCrawlErrorsSamplesMarkAsFixedPlatform where
127− toText = \case
126+instance ToHttpApiData URLCrawlErrorsSamplesMarkAsFixedPlatform where
127+ toQueryParam = \case
128128 UCESMAFPMobile -> "mobile"
129129 UCESMAFPSmartphoneOnly -> "smartphoneOnly"
130130 UCESMAFPWeb -> "web"
@@ -159,21 +159,21 @@ data URLCrawlErrorsSamplesGetCategory
159159
160160instance Hashable URLCrawlErrorsSamplesGetCategory
161161
162−instance FromText URLCrawlErrorsSamplesGetCategory where
163− fromText = \case
164− "authPermissions" -> Just UCESGCAuthPermissions
165− "flashContent" -> Just UCESGCFlashContent
166− "manyToOneRedirect" -> Just UCESGCManyToOneRedirect
167− "notFollowed" -> Just UCESGCNotFollowed
168− "notFound" -> Just UCESGCNotFound
169− "other" -> Just UCESGCOther
170− "roboted" -> Just UCESGCRoboted
171− "serverError" -> Just UCESGCServerError
172− "soft404" -> Just UCESGCSOFT404
173− _ -> Nothing
174−
175−instance ToText URLCrawlErrorsSamplesGetCategory where
176− toText = \case
162+instance FromHttpApiData URLCrawlErrorsSamplesGetCategory where
163+ parseQueryParam = \case
164+ "authPermissions" -> Right UCESGCAuthPermissions
165+ "flashContent" -> Right UCESGCFlashContent
166+ "manyToOneRedirect" -> Right UCESGCManyToOneRedirect
167+ "notFollowed" -> Right UCESGCNotFollowed
168+ "notFound" -> Right UCESGCNotFound
169+ "other" -> Right UCESGCOther
170+ "roboted" -> Right UCESGCRoboted
171+ "serverError" -> Right UCESGCServerError
172+ "soft404" -> Right UCESGCSOFT404
173+ x -> Left ("Unable to parse URLCrawlErrorsSamplesGetCategory from: " <> x)
174+
175+instance ToHttpApiData URLCrawlErrorsSamplesGetCategory where
176+ toQueryParam = \case
177177 UCESGCAuthPermissions -> "authPermissions"
178178 UCESGCFlashContent -> "flashContent"
179179 UCESGCManyToOneRedirect -> "manyToOneRedirect"
@@ -203,15 +203,15 @@ data URLCrawlErrorscountsQueryPlatform
203203
204204instance Hashable URLCrawlErrorscountsQueryPlatform
205205
206−instance FromText URLCrawlErrorscountsQueryPlatform where
207− fromText = \case
208− "mobile" -> Just UCEQPMobile
209− "smartphoneOnly" -> Just UCEQPSmartphoneOnly
210− "web" -> Just UCEQPWeb
211− _ -> Nothing
206+instance FromHttpApiData URLCrawlErrorscountsQueryPlatform where
207+ parseQueryParam = \case
208+ "mobile" -> Right UCEQPMobile
209+ "smartphoneOnly" -> Right UCEQPSmartphoneOnly
210+ "web" -> Right UCEQPWeb
211+ x -> Left ("Unable to parse URLCrawlErrorscountsQueryPlatform from: " <> x)
212212
213−instance ToText URLCrawlErrorscountsQueryPlatform where
214− toText = \case
213+instance ToHttpApiData URLCrawlErrorscountsQueryPlatform where
214+ toQueryParam = \case
215215 UCEQPMobile -> "mobile"
216216 UCEQPSmartphoneOnly -> "smartphoneOnly"
217217 UCEQPWeb -> "web"
@@ -246,21 +246,21 @@ data URLCrawlErrorsSamplesListCategory
246246
247247instance Hashable URLCrawlErrorsSamplesListCategory
248248
249−instance FromText URLCrawlErrorsSamplesListCategory where
250− fromText = \case
251− "authPermissions" -> Just UCESLCAuthPermissions
252− "flashContent" -> Just UCESLCFlashContent
253− "manyToOneRedirect" -> Just UCESLCManyToOneRedirect
254− "notFollowed" -> Just UCESLCNotFollowed
255− "notFound" -> Just UCESLCNotFound
256− "other" -> Just UCESLCOther
257− "roboted" -> Just UCESLCRoboted
258− "serverError" -> Just UCESLCServerError
259− "soft404" -> Just UCESLCSOFT404
260− _ -> Nothing
261−
262−instance ToText URLCrawlErrorsSamplesListCategory where
263− toText = \case
249+instance FromHttpApiData URLCrawlErrorsSamplesListCategory where
250+ parseQueryParam = \case
251+ "authPermissions" -> Right UCESLCAuthPermissions
252+ "flashContent" -> Right UCESLCFlashContent
253+ "manyToOneRedirect" -> Right UCESLCManyToOneRedirect
254+ "notFollowed" -> Right UCESLCNotFollowed
255+ "notFound" -> Right UCESLCNotFound
256+ "other" -> Right UCESLCOther
257+ "roboted" -> Right UCESLCRoboted
258+ "serverError" -> Right UCESLCServerError
259+ "soft404" -> Right UCESLCSOFT404
260+ x -> Left ("Unable to parse URLCrawlErrorsSamplesListCategory from: " <> x)
261+
262+instance ToHttpApiData URLCrawlErrorsSamplesListCategory where
263+ toQueryParam = \case
264264 UCESLCAuthPermissions -> "authPermissions"
265265 UCESLCFlashContent -> "flashContent"
266266 UCESLCManyToOneRedirect -> "manyToOneRedirect"
@@ -289,15 +289,15 @@ data URLCrawlErrorsSamplesListPlatform
289289
290290instance Hashable URLCrawlErrorsSamplesListPlatform
291291
292−instance FromText URLCrawlErrorsSamplesListPlatform where
293− fromText = \case
294− "mobile" -> Just UCESLPMobile
295− "smartphoneOnly" -> Just UCESLPSmartphoneOnly
296− "web" -> Just UCESLPWeb
297− _ -> Nothing
292+instance FromHttpApiData URLCrawlErrorsSamplesListPlatform where
293+ parseQueryParam = \case
294+ "mobile" -> Right UCESLPMobile
295+ "smartphoneOnly" -> Right UCESLPSmartphoneOnly
296+ "web" -> Right UCESLPWeb
297+ x -> Left ("Unable to parse URLCrawlErrorsSamplesListPlatform from: " <> x)
298298
299−instance ToText URLCrawlErrorsSamplesListPlatform where
300− toText = \case
299+instance ToHttpApiData URLCrawlErrorsSamplesListPlatform where
300+ toQueryParam = \case
301301 UCESLPMobile -> "mobile"
302302 UCESLPSmartphoneOnly -> "smartphoneOnly"
303303 UCESLPWeb -> "web"
@@ -333,21 +333,21 @@ data URLCrawlErrorscountsQueryCategory
333333
334334instance Hashable URLCrawlErrorscountsQueryCategory
335335
336−instance FromText URLCrawlErrorscountsQueryCategory where
337− fromText = \case
338− "authPermissions" -> Just UCEQCAuthPermissions
339− "flashContent" -> Just UCEQCFlashContent
340− "manyToOneRedirect" -> Just UCEQCManyToOneRedirect
341− "notFollowed" -> Just UCEQCNotFollowed
342− "notFound" -> Just UCEQCNotFound
343− "other" -> Just UCEQCOther
344− "roboted" -> Just UCEQCRoboted
345− "serverError" -> Just UCEQCServerError
346− "soft404" -> Just UCEQCSOFT404
347− _ -> Nothing
348−
349−instance ToText URLCrawlErrorscountsQueryCategory where
350− toText = \case
336+instance FromHttpApiData URLCrawlErrorscountsQueryCategory where
337+ parseQueryParam = \case
338+ "authPermissions" -> Right UCEQCAuthPermissions
339+ "flashContent" -> Right UCEQCFlashContent
340+ "manyToOneRedirect" -> Right UCEQCManyToOneRedirect
341+ "notFollowed" -> Right UCEQCNotFollowed
342+ "notFound" -> Right UCEQCNotFound
343+ "other" -> Right UCEQCOther
344+ "roboted" -> Right UCEQCRoboted
345+ "serverError" -> Right UCEQCServerError
346+ "soft404" -> Right UCEQCSOFT404
347+ x -> Left ("Unable to parse URLCrawlErrorscountsQueryCategory from: " <> x)
348+
349+instance ToHttpApiData URLCrawlErrorscountsQueryCategory where
350+ toQueryParam = \case
351351 UCEQCAuthPermissions -> "authPermissions"
352352 UCEQCFlashContent -> "flashContent"
353353 UCEQCManyToOneRedirect -> "manyToOneRedirect"
gogol-youtube/gen/Network/Google/YouTube/Types/Sum.hs+1582−1582

This diff is too big to show here.