on develop help sign in
Regenerating gogol-youtube from latest service definition
da4fc87Brendan Hay
gen/model/youtube/v3/youtube-api.json+142−11
@@ -1,12 +1,12 @@
1{
1{
2 "kind": "discovery#restDescription",
2 "kind": "discovery#restDescription",
3− "etag": "\"jQLIOHBVnDZie4rQHGH1WJF-INE/cp06s8fig2XQeaVGo3ZF8LHl4js\"",
3+ "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/zZWbZ8DfqCMiADEVSmogUNbI6m4\"",
4 "discoveryVersion": "v1",
4 "discoveryVersion": "v1",
5 "id": "youtube:v3",
5 "id": "youtube:v3",
6 "name": "youtube",
6 "name": "youtube",
7 "canonicalName": "YouTube",
7 "canonicalName": "YouTube",
8 "version": "v3",
8 "version": "v3",
9− "revision": "20160426",
9+ "revision": "20160728",
10 "title": "YouTube Data API",
10 "title": "YouTube Data API",
11 "description": "Supports core YouTube features, such as uploading videos, creating and managing playlists, searching for content, and much more.",
11 "description": "Supports core YouTube features, such as uploading videos, creating and managing playlists, searching for content, and much more.",
12 "ownerDomain": "google.com",
12 "ownerDomain": "google.com",
@@ -1770,7 +1770,7 @@
1770 "ContentRating": {
1770 "ContentRating": {
1771 "id": "ContentRating",
1771 "id": "ContentRating",
1772 "type": "object",
1772 "type": "object",
1773− "description": "Ratings schemes. The country-specific ratings are mostly for movies and shows. NEXT_ID: 67",
1773+ "description": "Ratings schemes. The country-specific ratings are mostly for movies and shows. NEXT_ID: 68",
1774 "properties": {
1774 "properties": {
1775 "acbRating": {
1775 "acbRating": {
1776 "type": "string",
1776 "type": "string",
@@ -2419,6 +2419,39 @@
2419 ""
2419 ""
2420 ]
2420 ]
2421 },
2421 },
2422+ "fpbRatingReasons": {
2423+ "type": "array",
2424+ "description": "Reasons that explain why the video received its FPB (South Africa) rating.",
2425+ "items": {
2426+ "type": "string",
2427+ "enum": [
2428+ "fpbBlasphemy",
2429+ "fpbCriminalTechniques",
2430+ "fpbDrugs",
2431+ "fpbHorror",
2432+ "fpbImitativeActsTechniques",
2433+ "fpbLanguage",
2434+ "fpbNudity",
2435+ "fpbPrejudice",
2436+ "fpbSex",
2437+ "fpbSexualViolence",
2438+ "fpbViolence"
2439+ ],
2440+ "enumDescriptions": [
2441+ "",
2442+ "",
2443+ "",
2444+ "",
2445+ "",
2446+ "",
2447+ "",
2448+ "",
2449+ "",
2450+ "",
2451+ ""
2452+ ]
2453+ }
2454+ },
2422 "fskRating": {
2455 "fskRating": {
2423 "type": "string",
2456 "type": "string",
2424 "description": "The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.",
2457 "description": "The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.",
@@ -2445,11 +2478,17 @@
2445 "enum": [
2478 "enum": [
2446 "grfilmE",
2479 "grfilmE",
2447 "grfilmK",
2480 "grfilmK",
2481+ "grfilmK12",
2448 "grfilmK13",
2482 "grfilmK13",
2483+ "grfilmK15",
2449 "grfilmK17",
2484 "grfilmK17",
2485+ "grfilmK18",
2450 "grfilmUnrated"
2486 "grfilmUnrated"
2451 ],
2487 ],
2452 "enumDescriptions": [
2488 "enumDescriptions": [
2489+ "",
2490+ "",
2491+ "",
2453 "",
2492 "",
2454 "",
2493 "",
2455 "",
2494 "",
@@ -4000,13 +4039,7 @@
4000 "scheduledEndTime": {
4039 "scheduledEndTime": {
4001 "type": "string",
4040 "type": "string",
4002 "description": "The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.",
4041 "description": "The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.",
4003− "format": "date-time",
4042+ "format": "date-time"
4004− "annotations": {
4005− "required": [
4006− "youtube.liveBroadcasts.insert",
4007− "youtube.liveBroadcasts.update"
4008− ]
4009− }
4010 },
4043 },
4011 "scheduledStartTime": {
4044 "scheduledStartTime": {
4012 "type": "string",
4045 "type": "string",
@@ -4426,6 +4459,18 @@
4426 "messageRetractedDetails": {
4459 "messageRetractedDetails": {
4427 "$ref": "LiveChatMessageRetractedDetails"
4460 "$ref": "LiveChatMessageRetractedDetails"
4428 },
4461 },
4462+ "pollClosedDetails": {
4463+ "$ref": "LiveChatPollClosedDetails"
4464+ },
4465+ "pollEditedDetails": {
4466+ "$ref": "LiveChatPollEditedDetails"
4467+ },
4468+ "pollOpenedDetails": {
4469+ "$ref": "LiveChatPollOpenedDetails"
4470+ },
4471+ "pollVotedDetails": {
4472+ "$ref": "LiveChatPollVotedDetails"
4473+ },
4429 "publishedAt": {
4474 "publishedAt": {
4430 "type": "string",
4475 "type": "string",
4431 "description": "The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.",
4476 "description": "The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.",
@@ -4444,6 +4489,10 @@
4444 "messageDeletedEvent",
4489 "messageDeletedEvent",
4445 "messageRetractedEvent",
4490 "messageRetractedEvent",
4446 "newSponsorEvent",
4491 "newSponsorEvent",
4492+ "pollClosedEvent",
4493+ "pollEditedEvent",
4494+ "pollOpenedEvent",
4495+ "pollVotedEvent",
4447 "sponsorOnlyModeEndedEvent",
4496 "sponsorOnlyModeEndedEvent",
4448 "sponsorOnlyModeStartedEvent",
4497 "sponsorOnlyModeStartedEvent",
4449 "textMessageEvent",
4498 "textMessageEvent",
@@ -4460,6 +4509,10 @@
4460 "",
4509 "",
4461 "",
4510 "",
4462 "",
4511 "",
4512+ "",
4513+ "",
4514+ "",
4515+ "",
4463 ""
4516 ""
4464 ]
4517 ]
4465 },
4518 },
@@ -4550,6 +4603,79 @@
4550 }
4603 }
4551 }
4604 }
4552 },
4605 },
4606+ "LiveChatPollClosedDetails": {
4607+ "id": "LiveChatPollClosedDetails",
4608+ "type": "object",
4609+ "properties": {
4610+ "pollId": {
4611+ "type": "string",
4612+ "description": "The id of the poll that was closed."
4613+ }
4614+ }
4615+ },
4616+ "LiveChatPollEditedDetails": {
4617+ "id": "LiveChatPollEditedDetails",
4618+ "type": "object",
4619+ "properties": {
4620+ "id": {
4621+ "type": "string"
4622+ },
4623+ "items": {
4624+ "type": "array",
4625+ "items": {
4626+ "$ref": "LiveChatPollItem"
4627+ }
4628+ },
4629+ "prompt": {
4630+ "type": "string"
4631+ }
4632+ }
4633+ },
4634+ "LiveChatPollItem": {
4635+ "id": "LiveChatPollItem",
4636+ "type": "object",
4637+ "properties": {
4638+ "description": {
4639+ "type": "string",
4640+ "description": "Plain text description of the item."
4641+ },
4642+ "itemId": {
4643+ "type": "string"
4644+ }
4645+ }
4646+ },
4647+ "LiveChatPollOpenedDetails": {
4648+ "id": "LiveChatPollOpenedDetails",
4649+ "type": "object",
4650+ "properties": {
4651+ "id": {
4652+ "type": "string"
4653+ },
4654+ "items": {
4655+ "type": "array",
4656+ "items": {
4657+ "$ref": "LiveChatPollItem"
4658+ }
4659+ },
4660+ "prompt": {
4661+ "type": "string"
4662+ }
4663+ }
4664+ },
4665+ "LiveChatPollVotedDetails": {
4666+ "id": "LiveChatPollVotedDetails",
4667+ "type": "object",
4668+ "properties": {
4669+ "itemId": {
4670+ "type": "string",
4671+ "description": "The poll item the user chose."
4672+ },
4673+ "pollId": {
4674+ "type": "string",
4675+ "description": "The poll the user voted on."
4676+ }
4677+ }
4678+ },
4553 "LiveChatTextMessageDetails": {
4679 "LiveChatTextMessageDetails": {
4554 "id": "LiveChatTextMessageDetails",
4680 "id": "LiveChatTextMessageDetails",
4555 "type": "object",
4681 "type": "object",
@@ -9877,9 +10003,14 @@
9877 "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's subscriptions.",
10003 "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's subscriptions.",
9878 "location": "query"
10004 "location": "query"
9879 },
10005 },
10006+ "myRecentSubscribers": {
10007+ "type": "boolean",
10008+ "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in reverse chronological order (newest first).",
10009+ "location": "query"
10010+ },
9880 "mySubscribers": {
10011 "mySubscribers": {
9881 "type": "boolean",
10012 "type": "boolean",
9882− "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user.",
10013+ "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in no particular order.",
9883 "location": "query"
10014 "location": "query"
9884 },
10015 },
9885 "onBehalfOfContentOwner": {
10016 "onBehalfOfContentOwner": {
gogol-youtube/gen/Network/Google/Resource/YouTube/Subscriptions/List.hs+26−11
@@ -36,6 +36,7 @@ module Network.Google.Resource.YouTube.Subscriptions.List
36 , subPart
36 , subPart
37 , subMine
37 , subMine
38 , subChannelId
38 , subChannelId
39+ , subMyRecentSubscribers
39 , subOnBehalfOfContentOwner
40 , subOnBehalfOfContentOwner
40 , subOnBehalfOfContentOwnerChannel
41 , subOnBehalfOfContentOwnerChannel
41 , subId
42 , subId
@@ -58,16 +59,17 @@ type SubscriptionsListResource =
58 QueryParam "part" Text :>
59 QueryParam "part" Text :>
59 QueryParam "mine" Bool :>
60 QueryParam "mine" Bool :>
60 QueryParam "channelId" Text :>
61 QueryParam "channelId" Text :>
62+ QueryParam "myRecentSubscribers" Bool :>
61− QueryParam "onBehalfOfContentOwner" Text :>
63+ QueryParam "onBehalfOfContentOwner" Text :>
62− QueryParam "onBehalfOfContentOwnerChannel" Text :>
64+ QueryParam "onBehalfOfContentOwnerChannel" Text :>
63− QueryParam "id" Text :>
64− QueryParam "mySubscribers" Bool :>
65+ QueryParam "id" Text :>
65− QueryParam "forChannelId" Text :>
66+ QueryParam "mySubscribers" Bool :>
66− QueryParam "pageToken" Text :>
67+ QueryParam "forChannelId" Text :>
68+ QueryParam "pageToken" Text :>
67− QueryParam "order" SubscriptionsListOrder :>
69+ QueryParam "order" SubscriptionsListOrder :>
68− QueryParam "maxResults" (Textual Word32) :>
70+ QueryParam "maxResults" (Textual Word32) :>
69− QueryParam "alt" AltJSON :>
71+ QueryParam "alt" AltJSON :>
70− Get '[JSON] SubscriptionListResponse
72+ Get '[JSON] SubscriptionListResponse
71
73
72-- | Returns subscription resources that match the API request criteria.
74-- | Returns subscription resources that match the API request criteria.
73--
75--
@@ -76,6 +78,7 @@ data SubscriptionsList = SubscriptionsList'
76 { _subPart :: !Text
78 { _subPart :: !Text
77 , _subMine :: !(Maybe Bool)
79 , _subMine :: !(Maybe Bool)
78 , _subChannelId :: !(Maybe Text)
80 , _subChannelId :: !(Maybe Text)
81+ , _subMyRecentSubscribers :: !(Maybe Bool)
79 , _subOnBehalfOfContentOwner :: !(Maybe Text)
82 , _subOnBehalfOfContentOwner :: !(Maybe Text)
80 , _subOnBehalfOfContentOwnerChannel :: !(Maybe Text)
83 , _subOnBehalfOfContentOwnerChannel :: !(Maybe Text)
81 , _subId :: !(Maybe Text)
84 , _subId :: !(Maybe Text)
@@ -96,6 +99,8 @@ data SubscriptionsList = SubscriptionsList'
96--
99--
97-- * 'subChannelId'
100-- * 'subChannelId'
98--
101--
102+-- * 'subMyRecentSubscribers'
103+--
99-- * 'subOnBehalfOfContentOwner'
104-- * 'subOnBehalfOfContentOwner'
100--
105--
101-- * 'subOnBehalfOfContentOwnerChannel'
106-- * 'subOnBehalfOfContentOwnerChannel'
@@ -119,6 +124,7 @@ subscriptionsList pSubPart_ =
119 { _subPart = pSubPart_
124 { _subPart = pSubPart_
120 , _subMine = Nothing
125 , _subMine = Nothing
121 , _subChannelId = Nothing
126 , _subChannelId = Nothing
127+ , _subMyRecentSubscribers = Nothing
122 , _subOnBehalfOfContentOwner = Nothing
128 , _subOnBehalfOfContentOwner = Nothing
123 , _subOnBehalfOfContentOwnerChannel = Nothing
129 , _subOnBehalfOfContentOwnerChannel = Nothing
124 , _subId = Nothing
130 , _subId = Nothing
@@ -150,6 +156,14 @@ subChannelId :: Lens' SubscriptionsList (Maybe Text)
150subChannelId
156subChannelId
151 = lens _subChannelId (\ s a -> s{_subChannelId = a})
157 = lens _subChannelId (\ s a -> s{_subChannelId = a})
152
158
159+-- | Set this parameter\'s value to true to retrieve a feed of the
160+-- subscribers of the authenticated user in reverse chronological order
161+-- (newest first).
162+subMyRecentSubscribers :: Lens' SubscriptionsList (Maybe Bool)
163+subMyRecentSubscribers
164+ = lens _subMyRecentSubscribers
165+ (\ s a -> s{_subMyRecentSubscribers = a})
166+
153-- | Note: This parameter is intended exclusively for YouTube content
167-- | Note: This parameter is intended exclusively for YouTube content
154-- partners. The onBehalfOfContentOwner parameter indicates that the
168-- partners. The onBehalfOfContentOwner parameter indicates that the
155-- request\'s authorization credentials identify a YouTube CMS user who is
169-- request\'s authorization credentials identify a YouTube CMS user who is
@@ -194,7 +208,7 @@ subId :: Lens' SubscriptionsList (Maybe Text)
194subId = lens _subId (\ s a -> s{_subId = a})
208subId = lens _subId (\ s a -> s{_subId = a})
195
209
196-- | Set this parameter\'s value to true to retrieve a feed of the
210-- | Set this parameter\'s value to true to retrieve a feed of the
197−-- subscribers of the authenticated user.
211+-- subscribers of the authenticated user in no particular order.
198subMySubscribers :: Lens' SubscriptionsList (Maybe Bool)
212subMySubscribers :: Lens' SubscriptionsList (Maybe Bool)
199subMySubscribers
213subMySubscribers
200 = lens _subMySubscribers
214 = lens _subMySubscribers
@@ -237,6 +251,7 @@ instance GoogleRequest SubscriptionsList where
237 "https://www.googleapis.com/auth/youtubepartner"]
251 "https://www.googleapis.com/auth/youtubepartner"]
238 requestClient SubscriptionsList'{..}
252 requestClient SubscriptionsList'{..}
239 = go (Just _subPart) _subMine _subChannelId
253 = go (Just _subPart) _subMine _subChannelId
254+ _subMyRecentSubscribers
240 _subOnBehalfOfContentOwner
255 _subOnBehalfOfContentOwner
241 _subOnBehalfOfContentOwnerChannel
256 _subOnBehalfOfContentOwnerChannel
242 _subId
257 _subId
gogol-youtube/gen/Network/Google/YouTube.hs+39
@@ -376,6 +376,11 @@ module Network.Google.YouTube
376 -- ** CaptionSnippetFailureReason
376 -- ** CaptionSnippetFailureReason
377 , CaptionSnippetFailureReason (..)
377 , CaptionSnippetFailureReason (..)
378
378
379+ -- ** LiveChatPollClosedDetails
380+ , LiveChatPollClosedDetails
381+ , liveChatPollClosedDetails
382+ , lcpcdPollId
383+
379 -- ** PromotedItem
384 -- ** PromotedItem
380 , PromotedItem
385 , PromotedItem
381 , promotedItem
386 , promotedItem
@@ -857,6 +862,13 @@ module Network.Google.YouTube
857 -- ** ContentRatingBfvcRating
862 -- ** ContentRatingBfvcRating
858 , ContentRatingBfvcRating (..)
863 , ContentRatingBfvcRating (..)
859
864
865+ -- ** LiveChatPollEditedDetails
866+ , LiveChatPollEditedDetails
867+ , liveChatPollEditedDetails
868+ , lcpedPrompt
869+ , lcpedItems
870+ , lcpedId
871+
860 -- ** LiveBroadcastTopicType
872 -- ** LiveBroadcastTopicType
861 , LiveBroadcastTopicType (..)
873 , LiveBroadcastTopicType (..)
862
874
@@ -1100,9 +1112,13 @@ module Network.Google.YouTube
1100 , lcmsMessageDeletedDetails
1112 , lcmsMessageDeletedDetails
1101 , lcmsLiveChatId
1113 , lcmsLiveChatId
1102 , lcmsPublishedAt
1114 , lcmsPublishedAt
1115+ , lcmsPollOpenedDetails
1116+ , lcmsPollVotedDetails
1103 , lcmsUserBannedDetails
1117 , lcmsUserBannedDetails
1104 , lcmsTextMessageDetails
1118 , lcmsTextMessageDetails
1119+ , lcmsPollClosedDetails
1105 , lcmsMessageRetractedDetails
1120 , lcmsMessageRetractedDetails
1121+ , lcmsPollEditedDetails
1106 , lcmsType
1122 , lcmsType
1107 , lcmsAuthorChannelId
1123 , lcmsAuthorChannelId
1108 , lcmsFanFundingEventDetails
1124 , lcmsFanFundingEventDetails
@@ -1458,6 +1474,9 @@ module Network.Google.YouTube
1458 -- ** LiveBroadcastsListBroadcastType
1474 -- ** LiveBroadcastsListBroadcastType
1459 , LiveBroadcastsListBroadcastType (..)
1475 , LiveBroadcastsListBroadcastType (..)
1460
1476
1477+ -- ** ContentRatingFpbRatingReasonsItem
1478+ , ContentRatingFpbRatingReasonsItem (..)
1479+
1461 -- ** VideoProcessingDetailsProcessingStatus
1480 -- ** VideoProcessingDetailsProcessingStatus
1462 , VideoProcessingDetailsProcessingStatus (..)
1481 , VideoProcessingDetailsProcessingStatus (..)
1463
1482
@@ -1646,6 +1665,12 @@ module Network.Google.YouTube
1646 , srsLiveBroadcastContent
1665 , srsLiveBroadcastContent
1647 , srsDescription
1666 , srsDescription
1648
1667
1668+ -- ** LiveChatPollItem
1669+ , LiveChatPollItem
1670+ , liveChatPollItem
1671+ , lcpiItemId
1672+ , lcpiDescription
1673+
1649 -- ** ActivityContentDetailsSocialType
1674 -- ** ActivityContentDetailsSocialType
1650 , ActivityContentDetailsSocialType (..)
1675 , ActivityContentDetailsSocialType (..)
1651
1676
@@ -1875,6 +1900,13 @@ module Network.Google.YouTube
1875 , languageTag
1900 , languageTag
1876 , ltValue
1901 , ltValue
1877
1902
1903+ -- ** LiveChatPollOpenedDetails
1904+ , LiveChatPollOpenedDetails
1905+ , liveChatPollOpenedDetails
1906+ , lcpodPrompt
1907+ , lcpodItems
1908+ , lcpodId
1909+
1878 -- ** SearchListEventType
1910 -- ** SearchListEventType
1879 , SearchListEventType (..)
1911 , SearchListEventType (..)
1880
1912
@@ -2077,6 +2109,7 @@ module Network.Google.YouTube
2077 -- ** ContentRating
2109 -- ** ContentRating
2078 , ContentRating
2110 , ContentRating
2079 , contentRating
2111 , contentRating
2112+ , crFpbRatingReasons
2080 , crPefilmRating
2113 , crPefilmRating
2081 , crCccRating
2114 , crCccRating
2082 , crAnatelRating
2115 , crAnatelRating
@@ -2288,6 +2321,12 @@ module Network.Google.YouTube
2288
2321
2289 -- ** ContentRatingCatvRating
2322 -- ** ContentRatingCatvRating
2290 , ContentRatingCatvRating (..)
2323 , ContentRatingCatvRating (..)
2324+
2325+ -- ** LiveChatPollVotedDetails
2326+ , LiveChatPollVotedDetails
2327+ , liveChatPollVotedDetails
2328+ , lcpvdPollId
2329+ , lcpvdItemId
2291 ) where
2330 ) where
2292
2331
2293import Network.Google.Prelude
2332import Network.Google.Prelude
gogol-youtube/gen/Network/Google/YouTube/Types.hs+39
@@ -153,6 +153,11 @@ module Network.Google.YouTube.Types
153 -- * CaptionSnippetFailureReason
153 -- * CaptionSnippetFailureReason
154 , CaptionSnippetFailureReason (..)
154 , CaptionSnippetFailureReason (..)
155
155
156+ -- * LiveChatPollClosedDetails
157+ , LiveChatPollClosedDetails
158+ , liveChatPollClosedDetails
159+ , lcpcdPollId
160+
156 -- * PromotedItem
161 -- * PromotedItem
157 , PromotedItem
162 , PromotedItem
158 , promotedItem
163 , promotedItem
@@ -634,6 +639,13 @@ module Network.Google.YouTube.Types
634 -- * ContentRatingBfvcRating
639 -- * ContentRatingBfvcRating
635 , ContentRatingBfvcRating (..)
640 , ContentRatingBfvcRating (..)
636
641
642+ -- * LiveChatPollEditedDetails
643+ , LiveChatPollEditedDetails
644+ , liveChatPollEditedDetails
645+ , lcpedPrompt
646+ , lcpedItems
647+ , lcpedId
648+
637 -- * LiveBroadcastTopicType
649 -- * LiveBroadcastTopicType
638 , LiveBroadcastTopicType (..)
650 , LiveBroadcastTopicType (..)
639
651
@@ -877,9 +889,13 @@ module Network.Google.YouTube.Types
877 , lcmsMessageDeletedDetails
889 , lcmsMessageDeletedDetails
878 , lcmsLiveChatId
890 , lcmsLiveChatId
879 , lcmsPublishedAt
891 , lcmsPublishedAt
892+ , lcmsPollOpenedDetails
893+ , lcmsPollVotedDetails
880 , lcmsUserBannedDetails
894 , lcmsUserBannedDetails
881 , lcmsTextMessageDetails
895 , lcmsTextMessageDetails
896+ , lcmsPollClosedDetails
882 , lcmsMessageRetractedDetails
897 , lcmsMessageRetractedDetails
898+ , lcmsPollEditedDetails
883 , lcmsType
899 , lcmsType
884 , lcmsAuthorChannelId
900 , lcmsAuthorChannelId
885 , lcmsFanFundingEventDetails
901 , lcmsFanFundingEventDetails
@@ -1235,6 +1251,9 @@ module Network.Google.YouTube.Types
1235 -- * LiveBroadcastsListBroadcastType
1251 -- * LiveBroadcastsListBroadcastType
1236 , LiveBroadcastsListBroadcastType (..)
1252 , LiveBroadcastsListBroadcastType (..)
1237
1253
1254+ -- * ContentRatingFpbRatingReasonsItem
1255+ , ContentRatingFpbRatingReasonsItem (..)
1256+
1238 -- * VideoProcessingDetailsProcessingStatus
1257 -- * VideoProcessingDetailsProcessingStatus
1239 , VideoProcessingDetailsProcessingStatus (..)
1258 , VideoProcessingDetailsProcessingStatus (..)
1240
1259
@@ -1423,6 +1442,12 @@ module Network.Google.YouTube.Types
1423 , srsLiveBroadcastContent
1442 , srsLiveBroadcastContent
1424 , srsDescription
1443 , srsDescription
1425
1444
1445+ -- * LiveChatPollItem
1446+ , LiveChatPollItem
1447+ , liveChatPollItem
1448+ , lcpiItemId
1449+ , lcpiDescription
1450+
1426 -- * ActivityContentDetailsSocialType
1451 -- * ActivityContentDetailsSocialType
1427 , ActivityContentDetailsSocialType (..)
1452 , ActivityContentDetailsSocialType (..)
1428
1453
@@ -1652,6 +1677,13 @@ module Network.Google.YouTube.Types
1652 , languageTag
1677 , languageTag
1653 , ltValue
1678 , ltValue
1654
1679
1680+ -- * LiveChatPollOpenedDetails
1681+ , LiveChatPollOpenedDetails
1682+ , liveChatPollOpenedDetails
1683+ , lcpodPrompt
1684+ , lcpodItems
1685+ , lcpodId
1686+
1655 -- * SearchListEventType
1687 -- * SearchListEventType
1656 , SearchListEventType (..)
1688 , SearchListEventType (..)
1657
1689
@@ -1854,6 +1886,7 @@ module Network.Google.YouTube.Types
1854 -- * ContentRating
1886 -- * ContentRating
1855 , ContentRating
1887 , ContentRating
1856 , contentRating
1888 , contentRating
1889+ , crFpbRatingReasons
1857 , crPefilmRating
1890 , crPefilmRating
1858 , crCccRating
1891 , crCccRating
1859 , crAnatelRating
1892 , crAnatelRating
@@ -2065,6 +2098,12 @@ module Network.Google.YouTube.Types
2065
2098
2066 -- * ContentRatingCatvRating
2099 -- * ContentRatingCatvRating
2067 , ContentRatingCatvRating (..)
2100 , ContentRatingCatvRating (..)
2101+
2102+ -- * LiveChatPollVotedDetails
2103+ , LiveChatPollVotedDetails
2104+ , liveChatPollVotedDetails
2105+ , lcpvdPollId
2106+ , lcpvdItemId
2068 ) where
2107 ) where
2069
2108
2070import Network.Google.Prelude
2109import Network.Google.Prelude
gogol-youtube/gen/Network/Google/YouTube/Types/Product.hs+301−6
@@ -852,6 +852,39 @@ instance ToJSON ChannelStatus where
852 ("longUploadsStatus" .=) <$> _csLongUploadsStatus,
852 ("longUploadsStatus" .=) <$> _csLongUploadsStatus,
853 ("privacyStatus" .=) <$> _csPrivacyStatus])
853 ("privacyStatus" .=) <$> _csPrivacyStatus])
854
854
855+--
856+-- /See:/ 'liveChatPollClosedDetails' smart constructor.
857+newtype LiveChatPollClosedDetails = LiveChatPollClosedDetails'
858+ { _lcpcdPollId :: Maybe Text
859+ } deriving (Eq,Show,Data,Typeable,Generic)
860+
861+-- | Creates a value of 'LiveChatPollClosedDetails' with the minimum fields required to make a request.
862+--
863+-- Use one of the following lenses to modify other fields as desired:
864+--
865+-- * 'lcpcdPollId'
866+liveChatPollClosedDetails
867+ :: LiveChatPollClosedDetails
868+liveChatPollClosedDetails =
869+ LiveChatPollClosedDetails'
870+ { _lcpcdPollId = Nothing
871+ }
872+
873+-- | The id of the poll that was closed.
874+lcpcdPollId :: Lens' LiveChatPollClosedDetails (Maybe Text)
875+lcpcdPollId
876+ = lens _lcpcdPollId (\ s a -> s{_lcpcdPollId = a})
877+
878+instance FromJSON LiveChatPollClosedDetails where
879+ parseJSON
880+ = withObject "LiveChatPollClosedDetails"
881+ (\ o ->
882+ LiveChatPollClosedDetails' <$> (o .:? "pollId"))
883+
884+instance ToJSON LiveChatPollClosedDetails where
885+ toJSON LiveChatPollClosedDetails'{..}
886+ = object (catMaybes [("pollId" .=) <$> _lcpcdPollId])
887+
855-- | Describes a single promoted item.
888-- | Describes a single promoted item.
856--
889--
857-- /See:/ 'promotedItem' smart constructor.
890-- /See:/ 'promotedItem' smart constructor.
@@ -4572,6 +4605,61 @@ instance ToJSON ChannelTopicDetails where
4572 = object
4605 = object
4573 (catMaybes [("topicIds" .=) <$> _ctdTopicIds])
4606 (catMaybes [("topicIds" .=) <$> _ctdTopicIds])
4574
4607
4608+--
4609+-- /See:/ 'liveChatPollEditedDetails' smart constructor.
4610+data LiveChatPollEditedDetails = LiveChatPollEditedDetails'
4611+ { _lcpedPrompt :: !(Maybe Text)
4612+ , _lcpedItems :: !(Maybe [LiveChatPollItem])
4613+ , _lcpedId :: !(Maybe Text)
4614+ } deriving (Eq,Show,Data,Typeable,Generic)
4615+
4616+-- | Creates a value of 'LiveChatPollEditedDetails' with the minimum fields required to make a request.
4617+--
4618+-- Use one of the following lenses to modify other fields as desired:
4619+--
4620+-- * 'lcpedPrompt'
4621+--
4622+-- * 'lcpedItems'
4623+--
4624+-- * 'lcpedId'
4625+liveChatPollEditedDetails
4626+ :: LiveChatPollEditedDetails
4627+liveChatPollEditedDetails =
4628+ LiveChatPollEditedDetails'
4629+ { _lcpedPrompt = Nothing
4630+ , _lcpedItems = Nothing
4631+ , _lcpedId = Nothing
4632+ }
4633+
4634+lcpedPrompt :: Lens' LiveChatPollEditedDetails (Maybe Text)
4635+lcpedPrompt
4636+ = lens _lcpedPrompt (\ s a -> s{_lcpedPrompt = a})
4637+
4638+lcpedItems :: Lens' LiveChatPollEditedDetails [LiveChatPollItem]
4639+lcpedItems
4640+ = lens _lcpedItems (\ s a -> s{_lcpedItems = a}) .
4641+ _Default
4642+ . _Coerce
4643+
4644+lcpedId :: Lens' LiveChatPollEditedDetails (Maybe Text)
4645+lcpedId = lens _lcpedId (\ s a -> s{_lcpedId = a})
4646+
4647+instance FromJSON LiveChatPollEditedDetails where
4648+ parseJSON
4649+ = withObject "LiveChatPollEditedDetails"
4650+ (\ o ->
4651+ LiveChatPollEditedDetails' <$>
4652+ (o .:? "prompt") <*> (o .:? "items" .!= mempty) <*>
4653+ (o .:? "id"))
4654+
4655+instance ToJSON LiveChatPollEditedDetails where
4656+ toJSON LiveChatPollEditedDetails'{..}
4657+ = object
4658+ (catMaybes
4659+ [("prompt" .=) <$> _lcpedPrompt,
4660+ ("items" .=) <$> _lcpedItems,
4661+ ("id" .=) <$> _lcpedId])
4662+
4575--
4663--
4576-- /See:/ 'videoCategoryListResponse' smart constructor.
4664-- /See:/ 'videoCategoryListResponse' smart constructor.
4577data VideoCategoryListResponse = VideoCategoryListResponse'
4665data VideoCategoryListResponse = VideoCategoryListResponse'
@@ -6525,9 +6613,13 @@ data LiveChatMessageSnippet = LiveChatMessageSnippet'
6525 { _lcmsMessageDeletedDetails :: !(Maybe LiveChatMessageDeletedDetails)
6613 { _lcmsMessageDeletedDetails :: !(Maybe LiveChatMessageDeletedDetails)
6526 , _lcmsLiveChatId :: !(Maybe Text)
6614 , _lcmsLiveChatId :: !(Maybe Text)
6527 , _lcmsPublishedAt :: !(Maybe DateTime')
6615 , _lcmsPublishedAt :: !(Maybe DateTime')
6616+ , _lcmsPollOpenedDetails :: !(Maybe LiveChatPollOpenedDetails)
6617+ , _lcmsPollVotedDetails :: !(Maybe LiveChatPollVotedDetails)
6528 , _lcmsUserBannedDetails :: !(Maybe LiveChatUserBannedMessageDetails)
6618 , _lcmsUserBannedDetails :: !(Maybe LiveChatUserBannedMessageDetails)
6529 , _lcmsTextMessageDetails :: !(Maybe LiveChatTextMessageDetails)
6619 , _lcmsTextMessageDetails :: !(Maybe LiveChatTextMessageDetails)
6620+ , _lcmsPollClosedDetails :: !(Maybe LiveChatPollClosedDetails)
6530 , _lcmsMessageRetractedDetails :: !(Maybe LiveChatMessageRetractedDetails)
6621 , _lcmsMessageRetractedDetails :: !(Maybe LiveChatMessageRetractedDetails)
6622+ , _lcmsPollEditedDetails :: !(Maybe LiveChatPollEditedDetails)
6531 , _lcmsType :: !(Maybe LiveChatMessageSnippetType)
6623 , _lcmsType :: !(Maybe LiveChatMessageSnippetType)
6532 , _lcmsAuthorChannelId :: !(Maybe Text)
6624 , _lcmsAuthorChannelId :: !(Maybe Text)
6533 , _lcmsFanFundingEventDetails :: !(Maybe LiveChatFanFundingEventDetails)
6625 , _lcmsFanFundingEventDetails :: !(Maybe LiveChatFanFundingEventDetails)
@@ -6545,12 +6637,20 @@ data LiveChatMessageSnippet = LiveChatMessageSnippet'
6545--
6637--
6546-- * 'lcmsPublishedAt'
6638-- * 'lcmsPublishedAt'
6547--
6639--
6640+-- * 'lcmsPollOpenedDetails'
6641+--
6642+-- * 'lcmsPollVotedDetails'
6643+--
6548-- * 'lcmsUserBannedDetails'
6644-- * 'lcmsUserBannedDetails'
6549--
6645--
6550-- * 'lcmsTextMessageDetails'
6646-- * 'lcmsTextMessageDetails'
6551--
6647--
6648+-- * 'lcmsPollClosedDetails'
6649+--
6552-- * 'lcmsMessageRetractedDetails'
6650-- * 'lcmsMessageRetractedDetails'
6553--
6651--
6652+-- * 'lcmsPollEditedDetails'
6653+--
6554-- * 'lcmsType'
6654-- * 'lcmsType'
6555--
6655--
6556-- * 'lcmsAuthorChannelId'
6656-- * 'lcmsAuthorChannelId'
@@ -6567,9 +6667,13 @@ liveChatMessageSnippet =
6567 { _lcmsMessageDeletedDetails = Nothing
6667 { _lcmsMessageDeletedDetails = Nothing
6568 , _lcmsLiveChatId = Nothing
6668 , _lcmsLiveChatId = Nothing
6569 , _lcmsPublishedAt = Nothing
6669 , _lcmsPublishedAt = Nothing
6670+ , _lcmsPollOpenedDetails = Nothing
6671+ , _lcmsPollVotedDetails = Nothing
6570 , _lcmsUserBannedDetails = Nothing
6672 , _lcmsUserBannedDetails = Nothing
6571 , _lcmsTextMessageDetails = Nothing
6673 , _lcmsTextMessageDetails = Nothing
6674+ , _lcmsPollClosedDetails = Nothing
6572 , _lcmsMessageRetractedDetails = Nothing
6675 , _lcmsMessageRetractedDetails = Nothing
6676+ , _lcmsPollEditedDetails = Nothing
6573 , _lcmsType = Nothing
6677 , _lcmsType = Nothing
6574 , _lcmsAuthorChannelId = Nothing
6678 , _lcmsAuthorChannelId = Nothing
6575 , _lcmsFanFundingEventDetails = Nothing
6679 , _lcmsFanFundingEventDetails = Nothing
@@ -6595,6 +6699,16 @@ lcmsPublishedAt
6595 (\ s a -> s{_lcmsPublishedAt = a})
6699 (\ s a -> s{_lcmsPublishedAt = a})
6596 . mapping _DateTime
6700 . mapping _DateTime
6597
6701
6702+lcmsPollOpenedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatPollOpenedDetails)
6703+lcmsPollOpenedDetails
6704+ = lens _lcmsPollOpenedDetails
6705+ (\ s a -> s{_lcmsPollOpenedDetails = a})
6706+
6707+lcmsPollVotedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatPollVotedDetails)
6708+lcmsPollVotedDetails
6709+ = lens _lcmsPollVotedDetails
6710+ (\ s a -> s{_lcmsPollVotedDetails = a})
6711+
6598lcmsUserBannedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatUserBannedMessageDetails)
6712lcmsUserBannedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatUserBannedMessageDetails)
6599lcmsUserBannedDetails
6713lcmsUserBannedDetails
6600 = lens _lcmsUserBannedDetails
6714 = lens _lcmsUserBannedDetails
@@ -6607,11 +6721,21 @@ lcmsTextMessageDetails
6607 = lens _lcmsTextMessageDetails
6721 = lens _lcmsTextMessageDetails
6608 (\ s a -> s{_lcmsTextMessageDetails = a})
6722 (\ s a -> s{_lcmsTextMessageDetails = a})
6609
6723
6724+lcmsPollClosedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatPollClosedDetails)
6725+lcmsPollClosedDetails
6726+ = lens _lcmsPollClosedDetails
6727+ (\ s a -> s{_lcmsPollClosedDetails = a})
6728+
6610lcmsMessageRetractedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatMessageRetractedDetails)
6729lcmsMessageRetractedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatMessageRetractedDetails)
6611lcmsMessageRetractedDetails
6730lcmsMessageRetractedDetails
6612 = lens _lcmsMessageRetractedDetails
6731 = lens _lcmsMessageRetractedDetails
6613 (\ s a -> s{_lcmsMessageRetractedDetails = a})
6732 (\ s a -> s{_lcmsMessageRetractedDetails = a})
6614
6733
6734+lcmsPollEditedDetails :: Lens' LiveChatMessageSnippet (Maybe LiveChatPollEditedDetails)
6735+lcmsPollEditedDetails
6736+ = lens _lcmsPollEditedDetails
6737+ (\ s a -> s{_lcmsPollEditedDetails = a})
6738+
6615-- | The type of message, this will always be present, it determines the
6739-- | The type of message, this will always be present, it determines the
6616-- contents of the message as well as which fields will be present.
6740-- contents of the message as well as which fields will be present.
6617lcmsType :: Lens' LiveChatMessageSnippet (Maybe LiveChatMessageSnippetType)
6741lcmsType :: Lens' LiveChatMessageSnippet (Maybe LiveChatMessageSnippetType)
@@ -6658,9 +6782,13 @@ instance FromJSON LiveChatMessageSnippet where
6658 (o .:? "messageDeletedDetails") <*>
6782 (o .:? "messageDeletedDetails") <*>
6659 (o .:? "liveChatId")
6783 (o .:? "liveChatId")
6660 <*> (o .:? "publishedAt")
6784 <*> (o .:? "publishedAt")
6785+ <*> (o .:? "pollOpenedDetails")
6786+ <*> (o .:? "pollVotedDetails")
6661 <*> (o .:? "userBannedDetails")
6787 <*> (o .:? "userBannedDetails")
6662 <*> (o .:? "textMessageDetails")
6788 <*> (o .:? "textMessageDetails")
6789+ <*> (o .:? "pollClosedDetails")
6663 <*> (o .:? "messageRetractedDetails")
6790 <*> (o .:? "messageRetractedDetails")
6791+ <*> (o .:? "pollEditedDetails")
6664 <*> (o .:? "type")
6792 <*> (o .:? "type")
6665 <*> (o .:? "authorChannelId")
6793 <*> (o .:? "authorChannelId")
6666 <*> (o .:? "fanFundingEventDetails")
6794 <*> (o .:? "fanFundingEventDetails")
@@ -6675,11 +6803,15 @@ instance ToJSON LiveChatMessageSnippet where
6675 _lcmsMessageDeletedDetails,
6803 _lcmsMessageDeletedDetails,
6676 ("liveChatId" .=) <$> _lcmsLiveChatId,
6804 ("liveChatId" .=) <$> _lcmsLiveChatId,
6677 ("publishedAt" .=) <$> _lcmsPublishedAt,
6805 ("publishedAt" .=) <$> _lcmsPublishedAt,
6806+ ("pollOpenedDetails" .=) <$> _lcmsPollOpenedDetails,
6807+ ("pollVotedDetails" .=) <$> _lcmsPollVotedDetails,
6678 ("userBannedDetails" .=) <$> _lcmsUserBannedDetails,
6808 ("userBannedDetails" .=) <$> _lcmsUserBannedDetails,
6679 ("textMessageDetails" .=) <$>
6809 ("textMessageDetails" .=) <$>
6680 _lcmsTextMessageDetails,
6810 _lcmsTextMessageDetails,
6811+ ("pollClosedDetails" .=) <$> _lcmsPollClosedDetails,
6681 ("messageRetractedDetails" .=) <$>
6812 ("messageRetractedDetails" .=) <$>
6682 _lcmsMessageRetractedDetails,
6813 _lcmsMessageRetractedDetails,
6814+ ("pollEditedDetails" .=) <$> _lcmsPollEditedDetails,
6683 ("type" .=) <$> _lcmsType,
6815 ("type" .=) <$> _lcmsType,
6684 ("authorChannelId" .=) <$> _lcmsAuthorChannelId,
6816 ("authorChannelId" .=) <$> _lcmsAuthorChannelId,
6685 ("fanFundingEventDetails" .=) <$>
6817 ("fanFundingEventDetails" .=) <$>
@@ -10432,6 +10564,52 @@ instance ToJSON SearchResultSnippet where
10432 _srsLiveBroadcastContent,
10564 _srsLiveBroadcastContent,
10433 ("description" .=) <$> _srsDescription])
10565 ("description" .=) <$> _srsDescription])
10434
10566
10567+--
10568+-- /See:/ 'liveChatPollItem' smart constructor.
10569+data LiveChatPollItem = LiveChatPollItem'
10570+ { _lcpiItemId :: !(Maybe Text)
10571+ , _lcpiDescription :: !(Maybe Text)
10572+ } deriving (Eq,Show,Data,Typeable,Generic)
10573+
10574+-- | Creates a value of 'LiveChatPollItem' with the minimum fields required to make a request.
10575+--
10576+-- Use one of the following lenses to modify other fields as desired:
10577+--
10578+-- * 'lcpiItemId'
10579+--
10580+-- * 'lcpiDescription'
10581+liveChatPollItem
10582+ :: LiveChatPollItem
10583+liveChatPollItem =
10584+ LiveChatPollItem'
10585+ { _lcpiItemId = Nothing
10586+ , _lcpiDescription = Nothing
10587+ }
10588+
10589+lcpiItemId :: Lens' LiveChatPollItem (Maybe Text)
10590+lcpiItemId
10591+ = lens _lcpiItemId (\ s a -> s{_lcpiItemId = a})
10592+
10593+-- | Plain text description of the item.
10594+lcpiDescription :: Lens' LiveChatPollItem (Maybe Text)
10595+lcpiDescription
10596+ = lens _lcpiDescription
10597+ (\ s a -> s{_lcpiDescription = a})
10598+
10599+instance FromJSON LiveChatPollItem where
10600+ parseJSON
10601+ = withObject "LiveChatPollItem"
10602+ (\ o ->
10603+ LiveChatPollItem' <$>
10604+ (o .:? "itemId") <*> (o .:? "description"))
10605+
10606+instance ToJSON LiveChatPollItem where
10607+ toJSON LiveChatPollItem'{..}
10608+ = object
10609+ (catMaybes
10610+ [("itemId" .=) <$> _lcpiItemId,
10611+ ("description" .=) <$> _lcpiDescription])
10612+
10435--
10613--
10436-- /See:/ 'sponsorListResponse' smart constructor.
10614-- /See:/ 'sponsorListResponse' smart constructor.
10437data SponsorListResponse = SponsorListResponse'
10615data SponsorListResponse = SponsorListResponse'
@@ -11836,6 +12014,61 @@ instance ToJSON LanguageTag where
11836 toJSON LanguageTag'{..}
12014 toJSON LanguageTag'{..}
11837 = object (catMaybes [("value" .=) <$> _ltValue])
12015 = object (catMaybes [("value" .=) <$> _ltValue])
11838
12016
12017+--
12018+-- /See:/ 'liveChatPollOpenedDetails' smart constructor.
12019+data LiveChatPollOpenedDetails = LiveChatPollOpenedDetails'
12020+ { _lcpodPrompt :: !(Maybe Text)
12021+ , _lcpodItems :: !(Maybe [LiveChatPollItem])
12022+ , _lcpodId :: !(Maybe Text)
12023+ } deriving (Eq,Show,Data,Typeable,Generic)
12024+
12025+-- | Creates a value of 'LiveChatPollOpenedDetails' with the minimum fields required to make a request.
12026+--
12027+-- Use one of the following lenses to modify other fields as desired:
12028+--
12029+-- * 'lcpodPrompt'
12030+--
12031+-- * 'lcpodItems'
12032+--
12033+-- * 'lcpodId'
12034+liveChatPollOpenedDetails
12035+ :: LiveChatPollOpenedDetails
12036+liveChatPollOpenedDetails =
12037+ LiveChatPollOpenedDetails'
12038+ { _lcpodPrompt = Nothing
12039+ , _lcpodItems = Nothing
12040+ , _lcpodId = Nothing
12041+ }
12042+
12043+lcpodPrompt :: Lens' LiveChatPollOpenedDetails (Maybe Text)
12044+lcpodPrompt
12045+ = lens _lcpodPrompt (\ s a -> s{_lcpodPrompt = a})
12046+
12047+lcpodItems :: Lens' LiveChatPollOpenedDetails [LiveChatPollItem]
12048+lcpodItems
12049+ = lens _lcpodItems (\ s a -> s{_lcpodItems = a}) .
12050+ _Default
12051+ . _Coerce
12052+
12053+lcpodId :: Lens' LiveChatPollOpenedDetails (Maybe Text)
12054+lcpodId = lens _lcpodId (\ s a -> s{_lcpodId = a})
12055+
12056+instance FromJSON LiveChatPollOpenedDetails where
12057+ parseJSON
12058+ = withObject "LiveChatPollOpenedDetails"
12059+ (\ o ->
12060+ LiveChatPollOpenedDetails' <$>
12061+ (o .:? "prompt") <*> (o .:? "items" .!= mempty) <*>
12062+ (o .:? "id"))
12063+
12064+instance ToJSON LiveChatPollOpenedDetails where
12065+ toJSON LiveChatPollOpenedDetails'{..}
12066+ = object
12067+ (catMaybes
12068+ [("prompt" .=) <$> _lcpodPrompt,
12069+ ("items" .=) <$> _lcpodItems,
12070+ ("id" .=) <$> _lcpodId])
12071+
11839-- | Information about a video stream.
12072-- | Information about a video stream.
11840--
12073--
11841-- /See:/ 'videoFileDetailsVideoStream' smart constructor.
12074-- /See:/ 'videoFileDetailsVideoStream' smart constructor.
@@ -13322,11 +13555,12 @@ instance ToJSON VideoProjectDetails where
13322 = object (catMaybes [("tags" .=) <$> _vpdTags])
13555 = object (catMaybes [("tags" .=) <$> _vpdTags])
13323
13556
13324-- | Ratings schemes. The country-specific ratings are mostly for movies and
13557-- | Ratings schemes. The country-specific ratings are mostly for movies and
13325−-- shows. NEXT_ID: 67
13558+-- shows. NEXT_ID: 68
13326--
13559--
13327-- /See:/ 'contentRating' smart constructor.
13560-- /See:/ 'contentRating' smart constructor.
13328data ContentRating = ContentRating'
13561data ContentRating = ContentRating'
13562+ { _crFpbRatingReasons :: !(Maybe [ContentRatingFpbRatingReasonsItem])
13329− { _crPefilmRating :: !(Maybe ContentRatingPefilmRating)
13563+ , _crPefilmRating :: !(Maybe ContentRatingPefilmRating)
13330 , _crCccRating :: !(Maybe ContentRatingCccRating)
13564 , _crCccRating :: !(Maybe ContentRatingCccRating)
13331 , _crAnatelRating :: !(Maybe ContentRatingAnatelRating)
13565 , _crAnatelRating :: !(Maybe ContentRatingAnatelRating)
13332 , _crMpaaRating :: !(Maybe ContentRatingMpaaRating)
13566 , _crMpaaRating :: !(Maybe ContentRatingMpaaRating)
@@ -13398,6 +13632,8 @@ data ContentRating = ContentRating'
13398--
13632--
13399-- Use one of the following lenses to modify other fields as desired:
13633-- Use one of the following lenses to modify other fields as desired:
13400--
13634--
13635+-- * 'crFpbRatingReasons'
13636+--
13401-- * 'crPefilmRating'
13637-- * 'crPefilmRating'
13402--
13638--
13403-- * 'crCccRating'
13639-- * 'crCccRating'
@@ -13533,7 +13769,8 @@ contentRating
13533 :: ContentRating
13769 :: ContentRating
13534contentRating =
13770contentRating =
13535 ContentRating'
13771 ContentRating'
13772+ { _crFpbRatingReasons = Nothing
13536− { _crPefilmRating = Nothing
13773+ , _crPefilmRating = Nothing
13537 , _crCccRating = Nothing
13774 , _crCccRating = Nothing
13538 , _crAnatelRating = Nothing
13775 , _crAnatelRating = Nothing
13539 , _crMpaaRating = Nothing
13776 , _crMpaaRating = Nothing
@@ -13601,6 +13838,15 @@ contentRating =
13601 , _crKmrbRating = Nothing
13838 , _crKmrbRating = Nothing
13602 }
13839 }
13603
13840
13841+-- | Reasons that explain why the video received its FPB (South Africa)
13842+-- rating.
13843+crFpbRatingReasons :: Lens' ContentRating [ContentRatingFpbRatingReasonsItem]
13844+crFpbRatingReasons
13845+ = lens _crFpbRatingReasons
13846+ (\ s a -> s{_crFpbRatingReasons = a})
13847+ . _Default
13848+ . _Coerce
13849+
13604-- | The video\'s rating in Peru.
13850-- | The video\'s rating in Peru.
13605crPefilmRating :: Lens' ContentRating (Maybe ContentRatingPefilmRating)
13851crPefilmRating :: Lens' ContentRating (Maybe ContentRatingPefilmRating)
13606crPefilmRating
13852crPefilmRating
@@ -14007,8 +14253,10 @@ instance FromJSON ContentRating where
14007 = withObject "ContentRating"
14253 = withObject "ContentRating"
14008 (\ o ->
14254 (\ o ->
14009 ContentRating' <$>
14255 ContentRating' <$>
14256+ (o .:? "fpbRatingReasons" .!= mempty) <*>
14010− (o .:? "pefilmRating") <*> (o .:? "cccRating") <*>
14257+ (o .:? "pefilmRating")
14258+ <*> (o .:? "cccRating")
14011− (o .:? "anatelRating")
14259+ <*> (o .:? "anatelRating")
14012 <*> (o .:? "mpaaRating")
14260 <*> (o .:? "mpaaRating")
14013 <*> (o .:? "cceRating")
14261 <*> (o .:? "cceRating")
14014 <*> (o .:? "mccaaRating")
14262 <*> (o .:? "mccaaRating")
@@ -14077,7 +14325,8 @@ instance ToJSON ContentRating where
14077 toJSON ContentRating'{..}
14325 toJSON ContentRating'{..}
14078 = object
14326 = object
14079 (catMaybes
14327 (catMaybes
14328+ [("fpbRatingReasons" .=) <$> _crFpbRatingReasons,
14080− [("pefilmRating" .=) <$> _crPefilmRating,
14329+ ("pefilmRating" .=) <$> _crPefilmRating,
14081 ("cccRating" .=) <$> _crCccRating,
14330 ("cccRating" .=) <$> _crCccRating,
14082 ("anatelRating" .=) <$> _crAnatelRating,
14331 ("anatelRating" .=) <$> _crAnatelRating,
14083 ("mpaaRating" .=) <$> _crMpaaRating,
14332 ("mpaaRating" .=) <$> _crMpaaRating,
@@ -15308,3 +15557,49 @@ instance ToJSON I18nLanguageSnippet where
15308 = object
15557 = object
15309 (catMaybes
15558 (catMaybes
15310 [("hl" .=) <$> _ilsHl, ("name" .=) <$> _ilsName])
15559 [("hl" .=) <$> _ilsHl, ("name" .=) <$> _ilsName])
15560+
15561+--
15562+-- /See:/ 'liveChatPollVotedDetails' smart constructor.
15563+data LiveChatPollVotedDetails = LiveChatPollVotedDetails'
15564+ { _lcpvdPollId :: !(Maybe Text)
15565+ , _lcpvdItemId :: !(Maybe Text)
15566+ } deriving (Eq,Show,Data,Typeable,Generic)
15567+
15568+-- | Creates a value of 'LiveChatPollVotedDetails' with the minimum fields required to make a request.
15569+--
15570+-- Use one of the following lenses to modify other fields as desired:
15571+--
15572+-- * 'lcpvdPollId'
15573+--
15574+-- * 'lcpvdItemId'
15575+liveChatPollVotedDetails
15576+ :: LiveChatPollVotedDetails
15577+liveChatPollVotedDetails =
15578+ LiveChatPollVotedDetails'
15579+ { _lcpvdPollId = Nothing
15580+ , _lcpvdItemId = Nothing
15581+ }
15582+
15583+-- | The poll the user voted on.
15584+lcpvdPollId :: Lens' LiveChatPollVotedDetails (Maybe Text)
15585+lcpvdPollId
15586+ = lens _lcpvdPollId (\ s a -> s{_lcpvdPollId = a})
15587+
15588+-- | The poll item the user chose.
15589+lcpvdItemId :: Lens' LiveChatPollVotedDetails (Maybe Text)
15590+lcpvdItemId
15591+ = lens _lcpvdItemId (\ s a -> s{_lcpvdItemId = a})
15592+
15593+instance FromJSON LiveChatPollVotedDetails where
15594+ parseJSON
15595+ = withObject "LiveChatPollVotedDetails"
15596+ (\ o ->
15597+ LiveChatPollVotedDetails' <$>
15598+ (o .:? "pollId") <*> (o .:? "itemId"))
15599+
15600+instance ToJSON LiveChatPollVotedDetails where
15601+ toJSON LiveChatPollVotedDetails'{..}
15602+ = object
15603+ (catMaybes
15604+ [("pollId" .=) <$> _lcpvdPollId,
15605+ ("itemId" .=) <$> _lcpvdItemId])
gogol-youtube/gen/Network/Google/YouTube/Types/Sum.hs+90
@@ -3462,6 +3462,68 @@ instance FromJSON LiveBroadcastsListBroadcastType where
3462instance ToJSON LiveBroadcastsListBroadcastType where
3462instance ToJSON LiveBroadcastsListBroadcastType where
3463 toJSON = toJSONText
3463 toJSON = toJSONText
3464
3464
3465+data ContentRatingFpbRatingReasonsItem
3466+ = FpbBlasphemy
3467+ -- ^ @fpbBlasphemy@
3468+ | FpbCriminalTechniques
3469+ -- ^ @fpbCriminalTechniques@
3470+ | FpbDrugs
3471+ -- ^ @fpbDrugs@
3472+ | FpbHorror
3473+ -- ^ @fpbHorror@
3474+ | FpbImitativeActsTechniques
3475+ -- ^ @fpbImitativeActsTechniques@
3476+ | FpbLanguage
3477+ -- ^ @fpbLanguage@
3478+ | FpbNudity
3479+ -- ^ @fpbNudity@
3480+ | FpbPrejudice
3481+ -- ^ @fpbPrejudice@
3482+ | FpbSex
3483+ -- ^ @fpbSex@
3484+ | FpbSexualViolence
3485+ -- ^ @fpbSexualViolence@
3486+ | FpbViolence
3487+ -- ^ @fpbViolence@
3488+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
3489+
3490+instance Hashable ContentRatingFpbRatingReasonsItem
3491+
3492+instance FromHttpApiData ContentRatingFpbRatingReasonsItem where
3493+ parseQueryParam = \case
3494+ "fpbBlasphemy" -> Right FpbBlasphemy
3495+ "fpbCriminalTechniques" -> Right FpbCriminalTechniques
3496+ "fpbDrugs" -> Right FpbDrugs
3497+ "fpbHorror" -> Right FpbHorror
3498+ "fpbImitativeActsTechniques" -> Right FpbImitativeActsTechniques
3499+ "fpbLanguage" -> Right FpbLanguage
3500+ "fpbNudity" -> Right FpbNudity
3501+ "fpbPrejudice" -> Right FpbPrejudice
3502+ "fpbSex" -> Right FpbSex
3503+ "fpbSexualViolence" -> Right FpbSexualViolence
3504+ "fpbViolence" -> Right FpbViolence
3505+ x -> Left ("Unable to parse ContentRatingFpbRatingReasonsItem from: " <> x)
3506+
3507+instance ToHttpApiData ContentRatingFpbRatingReasonsItem where
3508+ toQueryParam = \case
3509+ FpbBlasphemy -> "fpbBlasphemy"
3510+ FpbCriminalTechniques -> "fpbCriminalTechniques"
3511+ FpbDrugs -> "fpbDrugs"
3512+ FpbHorror -> "fpbHorror"
3513+ FpbImitativeActsTechniques -> "fpbImitativeActsTechniques"
3514+ FpbLanguage -> "fpbLanguage"
3515+ FpbNudity -> "fpbNudity"
3516+ FpbPrejudice -> "fpbPrejudice"
3517+ FpbSex -> "fpbSex"
3518+ FpbSexualViolence -> "fpbSexualViolence"
3519+ FpbViolence -> "fpbViolence"
3520+
3521+instance FromJSON ContentRatingFpbRatingReasonsItem where
3522+ parseJSON = parseJSONText "ContentRatingFpbRatingReasonsItem"
3523+
3524+instance ToJSON ContentRatingFpbRatingReasonsItem where
3525+ toJSON = toJSONText
3526+
3465-- | The video\'s processing status. This value indicates whether YouTube was
3527-- | The video\'s processing status. This value indicates whether YouTube was
3466-- able to process the video or if the video is still being processed.
3528-- able to process the video or if the video is still being processed.
3467data VideoProcessingDetailsProcessingStatus
3529data VideoProcessingDetailsProcessingStatus
@@ -3796,10 +3858,16 @@ data ContentRatingGrfilmRating
3796 -- ^ @grfilmE@
3858 -- ^ @grfilmE@
3797 | GrfilmK
3859 | GrfilmK
3798 -- ^ @grfilmK@
3860 -- ^ @grfilmK@
3861+ | GRFILMK12
3862+ -- ^ @grfilmK12@
3799 | GRFILMK13
3863 | GRFILMK13
3800 -- ^ @grfilmK13@
3864 -- ^ @grfilmK13@
3865+ | GRFILMK15
3866+ -- ^ @grfilmK15@
3801 | GRFILMK17
3867 | GRFILMK17
3802 -- ^ @grfilmK17@
3868 -- ^ @grfilmK17@
3869+ | GRFILMK18
3870+ -- ^ @grfilmK18@
3803 | GrfilmUnrated
3871 | GrfilmUnrated
3804 -- ^ @grfilmUnrated@
3872 -- ^ @grfilmUnrated@
3805 deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
3873 deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
@@ -3810,8 +3878,11 @@ instance FromHttpApiData ContentRatingGrfilmRating where
3810 parseQueryParam = \case
3878 parseQueryParam = \case
3811 "grfilmE" -> Right GrfilmE
3879 "grfilmE" -> Right GrfilmE
3812 "grfilmK" -> Right GrfilmK
3880 "grfilmK" -> Right GrfilmK
3881+ "grfilmK12" -> Right GRFILMK12
3813 "grfilmK13" -> Right GRFILMK13
3882 "grfilmK13" -> Right GRFILMK13
3883+ "grfilmK15" -> Right GRFILMK15
3814 "grfilmK17" -> Right GRFILMK17
3884 "grfilmK17" -> Right GRFILMK17
3885+ "grfilmK18" -> Right GRFILMK18
3815 "grfilmUnrated" -> Right GrfilmUnrated
3886 "grfilmUnrated" -> Right GrfilmUnrated
3816 x -> Left ("Unable to parse ContentRatingGrfilmRating from: " <> x)
3887 x -> Left ("Unable to parse ContentRatingGrfilmRating from: " <> x)
3817
3888
@@ -3819,8 +3890,11 @@ instance ToHttpApiData ContentRatingGrfilmRating where
3819 toQueryParam = \case
3890 toQueryParam = \case
3820 GrfilmE -> "grfilmE"
3891 GrfilmE -> "grfilmE"
3821 GrfilmK -> "grfilmK"
3892 GrfilmK -> "grfilmK"
3893+ GRFILMK12 -> "grfilmK12"
3822 GRFILMK13 -> "grfilmK13"
3894 GRFILMK13 -> "grfilmK13"
3895+ GRFILMK15 -> "grfilmK15"
3823 GRFILMK17 -> "grfilmK17"
3896 GRFILMK17 -> "grfilmK17"
3897+ GRFILMK18 -> "grfilmK18"
3824 GrfilmUnrated -> "grfilmUnrated"
3898 GrfilmUnrated -> "grfilmUnrated"
3825
3899
3826instance FromJSON ContentRatingGrfilmRating where
3900instance FromJSON ContentRatingGrfilmRating where
@@ -5860,6 +5934,14 @@ data LiveChatMessageSnippetType
5860 -- ^ @messageRetractedEvent@
5934 -- ^ @messageRetractedEvent@
5861 | LCMSTNewSponsorEvent
5935 | LCMSTNewSponsorEvent
5862 -- ^ @newSponsorEvent@
5936 -- ^ @newSponsorEvent@
5937+ | LCMSTPollClosedEvent
5938+ -- ^ @pollClosedEvent@
5939+ | LCMSTPollEditedEvent
5940+ -- ^ @pollEditedEvent@
5941+ | LCMSTPollOpenedEvent
5942+ -- ^ @pollOpenedEvent@
5943+ | LCMSTPollVotedEvent
5944+ -- ^ @pollVotedEvent@
5863 | LCMSTSponsorOnlyModeEndedEvent
5945 | LCMSTSponsorOnlyModeEndedEvent
5864 -- ^ @sponsorOnlyModeEndedEvent@
5946 -- ^ @sponsorOnlyModeEndedEvent@
5865 | LCMSTSponsorOnlyModeStartedEvent
5947 | LCMSTSponsorOnlyModeStartedEvent
@@ -5881,6 +5963,10 @@ instance FromHttpApiData LiveChatMessageSnippetType where
5881 "messageDeletedEvent" -> Right LCMSTMessageDeletedEvent
5963 "messageDeletedEvent" -> Right LCMSTMessageDeletedEvent
5882 "messageRetractedEvent" -> Right LCMSTMessageRetractedEvent
5964 "messageRetractedEvent" -> Right LCMSTMessageRetractedEvent
5883 "newSponsorEvent" -> Right LCMSTNewSponsorEvent
5965 "newSponsorEvent" -> Right LCMSTNewSponsorEvent
5966+ "pollClosedEvent" -> Right LCMSTPollClosedEvent
5967+ "pollEditedEvent" -> Right LCMSTPollEditedEvent
5968+ "pollOpenedEvent" -> Right LCMSTPollOpenedEvent
5969+ "pollVotedEvent" -> Right LCMSTPollVotedEvent
5884 "sponsorOnlyModeEndedEvent" -> Right LCMSTSponsorOnlyModeEndedEvent
5970 "sponsorOnlyModeEndedEvent" -> Right LCMSTSponsorOnlyModeEndedEvent
5885 "sponsorOnlyModeStartedEvent" -> Right LCMSTSponsorOnlyModeStartedEvent
5971 "sponsorOnlyModeStartedEvent" -> Right LCMSTSponsorOnlyModeStartedEvent
5886 "textMessageEvent" -> Right LCMSTTextMessageEvent
5972 "textMessageEvent" -> Right LCMSTTextMessageEvent
@@ -5895,6 +5981,10 @@ instance ToHttpApiData LiveChatMessageSnippetType where
5895 LCMSTMessageDeletedEvent -> "messageDeletedEvent"
5981 LCMSTMessageDeletedEvent -> "messageDeletedEvent"
5896 LCMSTMessageRetractedEvent -> "messageRetractedEvent"
5982 LCMSTMessageRetractedEvent -> "messageRetractedEvent"
5897 LCMSTNewSponsorEvent -> "newSponsorEvent"
5983 LCMSTNewSponsorEvent -> "newSponsorEvent"
5984+ LCMSTPollClosedEvent -> "pollClosedEvent"
5985+ LCMSTPollEditedEvent -> "pollEditedEvent"
5986+ LCMSTPollOpenedEvent -> "pollOpenedEvent"
5987+ LCMSTPollVotedEvent -> "pollVotedEvent"
5898 LCMSTSponsorOnlyModeEndedEvent -> "sponsorOnlyModeEndedEvent"
5988 LCMSTSponsorOnlyModeEndedEvent -> "sponsorOnlyModeEndedEvent"
5899 LCMSTSponsorOnlyModeStartedEvent -> "sponsorOnlyModeStartedEvent"
5989 LCMSTSponsorOnlyModeStartedEvent -> "sponsorOnlyModeStartedEvent"
5900 LCMSTTextMessageEvent -> "textMessageEvent"
5990 LCMSTTextMessageEvent -> "textMessageEvent"