google-api-client 0.41.2 → 0.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +36 -0
  3. data/generated/google/apis/accessapproval_v1.rb +1 -1
  4. data/generated/google/apis/accessapproval_v1/service.rb +3 -0
  5. data/generated/google/apis/accessapproval_v1beta1.rb +1 -1
  6. data/generated/google/apis/accessapproval_v1beta1/service.rb +3 -0
  7. data/generated/google/apis/admob_v1.rb +1 -1
  8. data/generated/google/apis/admob_v1/service.rb +1 -1
  9. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  10. data/generated/google/apis/apigee_v1.rb +1 -1
  11. data/generated/google/apis/apigee_v1/classes.rb +1389 -105
  12. data/generated/google/apis/apigee_v1/representations.rb +543 -0
  13. data/generated/google/apis/apigee_v1/service.rb +1139 -93
  14. data/generated/google/apis/appsmarket_v2.rb +1 -1
  15. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  16. data/generated/google/apis/bigqueryreservation_v1/classes.rb +34 -0
  17. data/generated/google/apis/bigqueryreservation_v1/representations.rb +16 -0
  18. data/generated/google/apis/bigqueryreservation_v1/service.rb +60 -0
  19. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  20. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +8 -0
  21. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +1 -0
  22. data/generated/google/apis/civicinfo_v2.rb +1 -1
  23. data/generated/google/apis/civicinfo_v2/classes.rb +9 -1
  24. data/generated/google/apis/civicinfo_v2/representations.rb +1 -0
  25. data/generated/google/apis/civicinfo_v2/service.rb +1 -1
  26. data/generated/google/apis/classroom_v1.rb +1 -1
  27. data/generated/google/apis/classroom_v1/service.rb +4 -3
  28. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  29. data/generated/google/apis/cloudfunctions_v1/classes.rb +14 -0
  30. data/generated/google/apis/cloudfunctions_v1/representations.rb +2 -0
  31. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  32. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +7 -0
  33. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  34. data/generated/google/apis/{androidpublisher_v1.rb → customsearch_v1.rb} +8 -8
  35. data/generated/google/apis/customsearch_v1/classes.rb +1606 -0
  36. data/generated/google/apis/customsearch_v1/representations.rb +372 -0
  37. data/generated/google/apis/customsearch_v1/service.rb +608 -0
  38. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  39. data/generated/google/apis/dialogflow_v2beta1/classes.rb +4 -2
  40. data/generated/google/apis/dialogflow_v2beta1/service.rb +8 -2
  41. data/generated/google/apis/displayvideo_v1.rb +1 -1
  42. data/generated/google/apis/displayvideo_v1/classes.rb +12 -5
  43. data/generated/google/apis/dns_v1.rb +4 -4
  44. data/generated/google/apis/dns_v1/classes.rb +313 -162
  45. data/generated/google/apis/dns_v1/service.rb +247 -180
  46. data/generated/google/apis/file_v1.rb +1 -1
  47. data/generated/google/apis/file_v1beta1.rb +1 -1
  48. data/generated/google/apis/{groupsmigration_v1.rb → firebasehosting_v1.rb} +10 -12
  49. data/generated/google/apis/firebasehosting_v1/classes.rb +186 -0
  50. data/generated/google/apis/{androidpublisher_v2 → firebasehosting_v1}/representations.rb +22 -32
  51. data/generated/google/apis/firebasehosting_v1/service.rb +183 -0
  52. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  53. data/generated/google/apis/firebasehosting_v1beta1/service.rb +2 -0
  54. data/generated/google/apis/games_v1.rb +5 -3
  55. data/generated/google/apis/games_v1/classes.rb +354 -2112
  56. data/generated/google/apis/games_v1/representations.rb +12 -647
  57. data/generated/google/apis/games_v1/service.rb +212 -1154
  58. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  59. data/generated/google/apis/gameservices_v1beta/classes.rb +6 -6
  60. data/generated/google/apis/groupssettings_v1.rb +1 -1
  61. data/generated/google/apis/groupssettings_v1/classes.rb +1 -1
  62. data/generated/google/apis/ml_v1.rb +1 -1
  63. data/generated/google/apis/ml_v1/classes.rb +6 -6
  64. data/generated/google/apis/monitoring_v3.rb +1 -1
  65. data/generated/google/apis/monitoring_v3/classes.rb +10 -2
  66. data/generated/google/apis/monitoring_v3/representations.rb +1 -0
  67. data/generated/google/apis/monitoring_v3/service.rb +8 -5
  68. data/generated/google/apis/pubsub_v1.rb +1 -1
  69. data/generated/google/apis/pubsub_v1/classes.rb +24 -28
  70. data/generated/google/apis/pubsub_v1/service.rb +35 -44
  71. data/generated/google/apis/recommender_v1.rb +1 -1
  72. data/generated/google/apis/recommender_v1/classes.rb +211 -0
  73. data/generated/google/apis/recommender_v1/representations.rb +96 -0
  74. data/generated/google/apis/recommender_v1/service.rb +123 -0
  75. data/generated/google/apis/redis_v1.rb +1 -1
  76. data/generated/google/apis/redis_v1beta1.rb +1 -1
  77. data/generated/google/apis/testing_v1.rb +1 -1
  78. data/generated/google/apis/testing_v1/classes.rb +17 -6
  79. data/generated/google/apis/testing_v1/representations.rb +1 -0
  80. data/generated/google/apis/youtube_partner_v1.rb +4 -3
  81. data/generated/google/apis/youtube_partner_v1/classes.rb +1616 -1076
  82. data/generated/google/apis/youtube_partner_v1/representations.rb +357 -256
  83. data/generated/google/apis/youtube_partner_v1/service.rb +942 -1362
  84. data/generated/google/apis/youtube_v3.rb +1 -1
  85. data/generated/google/apis/youtube_v3/classes.rb +554 -0
  86. data/generated/google/apis/youtube_v3/representations.rb +281 -0
  87. data/generated/google/apis/youtube_v3/service.rb +259 -0
  88. data/lib/google/apis/version.rb +1 -1
  89. metadata +11 -19
  90. data/generated/google/apis/androidpublisher_v1/classes.rb +0 -26
  91. data/generated/google/apis/androidpublisher_v1/representations.rb +0 -26
  92. data/generated/google/apis/androidpublisher_v1/service.rb +0 -64
  93. data/generated/google/apis/androidpublisher_v1_1.rb +0 -34
  94. data/generated/google/apis/androidpublisher_v1_1/classes.rb +0 -94
  95. data/generated/google/apis/androidpublisher_v1_1/representations.rb +0 -45
  96. data/generated/google/apis/androidpublisher_v1_1/service.rb +0 -104
  97. data/generated/google/apis/androidpublisher_v2.rb +0 -34
  98. data/generated/google/apis/androidpublisher_v2/classes.rb +0 -223
  99. data/generated/google/apis/androidpublisher_v2/service.rb +0 -160
  100. data/generated/google/apis/groupsmigration_v1/classes.rb +0 -51
  101. data/generated/google/apis/groupsmigration_v1/representations.rb +0 -40
  102. data/generated/google/apis/groupsmigration_v1/service.rb +0 -100
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/youtube/
27
27
  module YoutubeV3
28
28
  VERSION = 'V3'
29
- REVISION = '20200618'
29
+ REVISION = '20200707'
30
30
 
31
31
  # Manage your YouTube account
32
32
  AUTH_YOUTUBE = 'https://www.googleapis.com/auth/youtube'
@@ -22,6 +22,62 @@ module Google
22
22
  module Apis
23
23
  module YoutubeV3
24
24
 
25
+ #
26
+ class AbuseReport
27
+ include Google::Apis::Core::Hashable
28
+
29
+ #
30
+ # Corresponds to the JSON property `abuseTypes`
31
+ # @return [Array<Google::Apis::YoutubeV3::AbuseType>]
32
+ attr_accessor :abuse_types
33
+
34
+ #
35
+ # Corresponds to the JSON property `description`
36
+ # @return [String]
37
+ attr_accessor :description
38
+
39
+ #
40
+ # Corresponds to the JSON property `relatedEntities`
41
+ # @return [Array<Google::Apis::YoutubeV3::RelatedEntity>]
42
+ attr_accessor :related_entities
43
+
44
+ #
45
+ # Corresponds to the JSON property `subject`
46
+ # @return [Google::Apis::YoutubeV3::Entity]
47
+ attr_accessor :subject
48
+
49
+ def initialize(**args)
50
+ update!(**args)
51
+ end
52
+
53
+ # Update properties of this object
54
+ def update!(**args)
55
+ @abuse_types = args[:abuse_types] if args.key?(:abuse_types)
56
+ @description = args[:description] if args.key?(:description)
57
+ @related_entities = args[:related_entities] if args.key?(:related_entities)
58
+ @subject = args[:subject] if args.key?(:subject)
59
+ end
60
+ end
61
+
62
+ #
63
+ class AbuseType
64
+ include Google::Apis::Core::Hashable
65
+
66
+ #
67
+ # Corresponds to the JSON property `id`
68
+ # @return [String]
69
+ attr_accessor :id
70
+
71
+ def initialize(**args)
72
+ update!(**args)
73
+ end
74
+
75
+ # Update properties of this object
76
+ def update!(**args)
77
+ @id = args[:id] if args.key?(:id)
78
+ end
79
+ end
80
+
25
81
  # Rights management policy for YouTube resources.
26
82
  class AccessPolicy
27
83
  include Google::Apis::Core::Hashable
@@ -1101,6 +1157,33 @@ module Google
1101
1157
  end
1102
1158
  end
1103
1159
 
1160
+ #
1161
+ class ChannelCard
1162
+ include Google::Apis::Core::Hashable
1163
+
1164
+ # External channel ID.
1165
+ # Required.
1166
+ # Corresponds to the JSON property `channelId`
1167
+ # @return [String]
1168
+ attr_accessor :channel_id
1169
+
1170
+ # Each card can have a custom message.
1171
+ # Required.
1172
+ # Corresponds to the JSON property `customMessage`
1173
+ # @return [String]
1174
+ attr_accessor :custom_message
1175
+
1176
+ def initialize(**args)
1177
+ update!(**args)
1178
+ end
1179
+
1180
+ # Update properties of this object
1181
+ def update!(**args)
1182
+ @channel_id = args[:channel_id] if args.key?(:channel_id)
1183
+ @custom_message = args[:custom_message] if args.key?(:custom_message)
1184
+ end
1185
+ end
1186
+
1104
1187
  # Details about the content of a channel.
1105
1188
  class ChannelContentDetails
1106
1189
  include Google::Apis::Core::Hashable
@@ -1894,6 +1977,32 @@ module Google
1894
1977
  end
1895
1978
  end
1896
1979
 
1980
+ # Information specific to a store on a merchandising platform linked to a
1981
+ # YouTube channel.
1982
+ class ChannelToStoreLinkDetails
1983
+ include Google::Apis::Core::Hashable
1984
+
1985
+ # Name of the store.
1986
+ # Corresponds to the JSON property `storeName`
1987
+ # @return [String]
1988
+ attr_accessor :store_name
1989
+
1990
+ # Landing page of the store.
1991
+ # Corresponds to the JSON property `storeUrl`
1992
+ # @return [String]
1993
+ attr_accessor :store_url
1994
+
1995
+ def initialize(**args)
1996
+ update!(**args)
1997
+ end
1998
+
1999
+ # Update properties of this object
2000
+ def update!(**args)
2001
+ @store_name = args[:store_name] if args.key?(:store_name)
2002
+ @store_url = args[:store_url] if args.key?(:store_url)
2003
+ end
2004
+ end
2005
+
1897
2006
  # Freebase topic information related to the channel.
1898
2007
  class ChannelTopicDetails
1899
2008
  include Google::Apis::Core::Hashable
@@ -2842,6 +2951,37 @@ module Google
2842
2951
  end
2843
2952
  end
2844
2953
 
2954
+ #
2955
+ class Entity
2956
+ include Google::Apis::Core::Hashable
2957
+
2958
+ #
2959
+ # Corresponds to the JSON property `id`
2960
+ # @return [String]
2961
+ attr_accessor :id
2962
+
2963
+ #
2964
+ # Corresponds to the JSON property `typeId`
2965
+ # @return [String]
2966
+ attr_accessor :type_id
2967
+
2968
+ #
2969
+ # Corresponds to the JSON property `url`
2970
+ # @return [String]
2971
+ attr_accessor :url
2972
+
2973
+ def initialize(**args)
2974
+ update!(**args)
2975
+ end
2976
+
2977
+ # Update properties of this object
2978
+ def update!(**args)
2979
+ @id = args[:id] if args.key?(:id)
2980
+ @type_id = args[:type_id] if args.key?(:type_id)
2981
+ @url = args[:url] if args.key?(:url)
2982
+ end
2983
+ end
2984
+
2845
2985
  # Geographical coordinates of a point, in WGS84.
2846
2986
  class GeoPoint
2847
2987
  include Google::Apis::Core::Hashable
@@ -3392,6 +3532,166 @@ module Google
3392
3532
  end
3393
3533
  end
3394
3534
 
3535
+ #
3536
+ class InfoCard
3537
+ include Google::Apis::Core::Hashable
3538
+
3539
+ # Etag of this resource.
3540
+ # Corresponds to the JSON property `etag`
3541
+ # @return [String]
3542
+ attr_accessor :etag
3543
+
3544
+ # UUID for this infocard.
3545
+ # Corresponds to the JSON property `id`
3546
+ # @return [String]
3547
+ attr_accessor :id
3548
+
3549
+ # Identifies what kind of resource this is.
3550
+ # Corresponds to the JSON property `kind`
3551
+ # @return [String]
3552
+ attr_accessor :kind
3553
+
3554
+ # The snippet object contains basic details about the infocard.
3555
+ # Corresponds to the JSON property `snippet`
3556
+ # @return [Google::Apis::YoutubeV3::InfoCardSnippet]
3557
+ attr_accessor :snippet
3558
+
3559
+ def initialize(**args)
3560
+ update!(**args)
3561
+ end
3562
+
3563
+ # Update properties of this object
3564
+ def update!(**args)
3565
+ @etag = args[:etag] if args.key?(:etag)
3566
+ @id = args[:id] if args.key?(:id)
3567
+ @kind = args[:kind] if args.key?(:kind)
3568
+ @snippet = args[:snippet] if args.key?(:snippet)
3569
+ end
3570
+ end
3571
+
3572
+ #
3573
+ class InfoCardSnippet
3574
+ include Google::Apis::Core::Hashable
3575
+
3576
+ #
3577
+ # Corresponds to the JSON property `channelInfocard`
3578
+ # @return [Google::Apis::YoutubeV3::ChannelCard]
3579
+ attr_accessor :channel_infocard
3580
+
3581
+ #
3582
+ # Corresponds to the JSON property `linkInfocard`
3583
+ # @return [Google::Apis::YoutubeV3::LinkCard]
3584
+ attr_accessor :link_infocard
3585
+
3586
+ #
3587
+ # Corresponds to the JSON property `playlistInfocard`
3588
+ # @return [Google::Apis::YoutubeV3::PlaylistCard]
3589
+ attr_accessor :playlist_infocard
3590
+
3591
+ # Each card can have a teaser.
3592
+ # Required.
3593
+ # Corresponds to the JSON property `teaser`
3594
+ # @return [Google::Apis::YoutubeV3::InfoCardSnippetTeaser]
3595
+ attr_accessor :teaser
3596
+
3597
+ #
3598
+ # Corresponds to the JSON property `videoInfocard`
3599
+ # @return [Google::Apis::YoutubeV3::VideoCard]
3600
+ attr_accessor :video_infocard
3601
+
3602
+ def initialize(**args)
3603
+ update!(**args)
3604
+ end
3605
+
3606
+ # Update properties of this object
3607
+ def update!(**args)
3608
+ @channel_infocard = args[:channel_infocard] if args.key?(:channel_infocard)
3609
+ @link_infocard = args[:link_infocard] if args.key?(:link_infocard)
3610
+ @playlist_infocard = args[:playlist_infocard] if args.key?(:playlist_infocard)
3611
+ @teaser = args[:teaser] if args.key?(:teaser)
3612
+ @video_infocard = args[:video_infocard] if args.key?(:video_infocard)
3613
+ end
3614
+ end
3615
+
3616
+ #
3617
+ class InfoCardSnippetTeaser
3618
+ include Google::Apis::Core::Hashable
3619
+
3620
+ # The offset from the video start at which the teaser should be displayed
3621
+ # (activated), in milliseconds.
3622
+ # Required.
3623
+ # Corresponds to the JSON property `teaserStartOffset`
3624
+ # @return [String]
3625
+ attr_accessor :teaser_start_offset
3626
+
3627
+ # The teaser text to show at the top of the player for the info-card.
3628
+ # Required for channel and link type cards.
3629
+ # Optional for video and playlist type cards.
3630
+ # Corresponds to the JSON property `teaserText`
3631
+ # @return [String]
3632
+ attr_accessor :teaser_text
3633
+
3634
+ def initialize(**args)
3635
+ update!(**args)
3636
+ end
3637
+
3638
+ # Update properties of this object
3639
+ def update!(**args)
3640
+ @teaser_start_offset = args[:teaser_start_offset] if args.key?(:teaser_start_offset)
3641
+ @teaser_text = args[:teaser_text] if args.key?(:teaser_text)
3642
+ end
3643
+ end
3644
+
3645
+ #
3646
+ class InfoCards
3647
+ include Google::Apis::Core::Hashable
3648
+
3649
+ # A list of infocards.
3650
+ # Corresponds to the JSON property `items`
3651
+ # @return [Array<Google::Apis::YoutubeV3::InfoCard>]
3652
+ attr_accessor :items
3653
+
3654
+ def initialize(**args)
3655
+ update!(**args)
3656
+ end
3657
+
3658
+ # Update properties of this object
3659
+ def update!(**args)
3660
+ @items = args[:items] if args.key?(:items)
3661
+ end
3662
+ end
3663
+
3664
+ #
3665
+ class InfocardListResponse
3666
+ include Google::Apis::Core::Hashable
3667
+
3668
+ # Etag of this resource.
3669
+ # Corresponds to the JSON property `etag`
3670
+ # @return [String]
3671
+ attr_accessor :etag
3672
+
3673
+ # A list of infocards.
3674
+ # Corresponds to the JSON property `items`
3675
+ # @return [Array<Google::Apis::YoutubeV3::InfoCard>]
3676
+ attr_accessor :items
3677
+
3678
+ # Identifies what kind of resource this is.
3679
+ # Corresponds to the JSON property `kind`
3680
+ # @return [String]
3681
+ attr_accessor :kind
3682
+
3683
+ def initialize(**args)
3684
+ update!(**args)
3685
+ end
3686
+
3687
+ # Update properties of this object
3688
+ def update!(**args)
3689
+ @etag = args[:etag] if args.key?(:etag)
3690
+ @items = args[:items] if args.key?(:items)
3691
+ @kind = args[:kind] if args.key?(:kind)
3692
+ end
3693
+ end
3694
+
3395
3695
  # Describes information necessary for ingesting an RTMP or an HTTP stream.
3396
3696
  class IngestionInfo
3397
3697
  include Google::Apis::Core::Hashable
@@ -3639,6 +3939,77 @@ module Google
3639
3939
  end
3640
3940
  end
3641
3941
 
3942
+ #
3943
+ class LinkCard
3944
+ include Google::Apis::Core::Hashable
3945
+
3946
+ # Custom text to show as the website link.
3947
+ # Required.
3948
+ # Corresponds to the JSON property `customLinkText`
3949
+ # @return [String]
3950
+ attr_accessor :custom_link_text
3951
+
3952
+ # URL to an externally hosted image.
3953
+ # Corresponds to the JSON property `externalImageUrl`
3954
+ # @return [String]
3955
+ attr_accessor :external_image_url
3956
+
3957
+ # The URL to which this card points.
3958
+ # Required.
3959
+ # Corresponds to the JSON property `targetUrl`
3960
+ # @return [String]
3961
+ attr_accessor :target_url
3962
+
3963
+ # The title to show on the card.
3964
+ # Required.
3965
+ # Corresponds to the JSON property `title`
3966
+ # @return [String]
3967
+ attr_accessor :title
3968
+
3969
+ # Previously uploaded image.
3970
+ # Corresponds to the JSON property `uploadedImage`
3971
+ # @return [Google::Apis::YoutubeV3::LinkCardUploadedImage]
3972
+ attr_accessor :uploaded_image
3973
+
3974
+ def initialize(**args)
3975
+ update!(**args)
3976
+ end
3977
+
3978
+ # Update properties of this object
3979
+ def update!(**args)
3980
+ @custom_link_text = args[:custom_link_text] if args.key?(:custom_link_text)
3981
+ @external_image_url = args[:external_image_url] if args.key?(:external_image_url)
3982
+ @target_url = args[:target_url] if args.key?(:target_url)
3983
+ @title = args[:title] if args.key?(:title)
3984
+ @uploaded_image = args[:uploaded_image] if args.key?(:uploaded_image)
3985
+ end
3986
+ end
3987
+
3988
+ #
3989
+ class LinkCardUploadedImage
3990
+ include Google::Apis::Core::Hashable
3991
+
3992
+ # Image reference on the thumbnail service.
3993
+ # Corresponds to the JSON property `imageFile`
3994
+ # @return [String]
3995
+ attr_accessor :image_file
3996
+
3997
+ # The version in the thumbnail service.
3998
+ # Corresponds to the JSON property `version`
3999
+ # @return [Fixnum]
4000
+ attr_accessor :version
4001
+
4002
+ def initialize(**args)
4003
+ update!(**args)
4004
+ end
4005
+
4006
+ # Update properties of this object
4007
+ def update!(**args)
4008
+ @image_file = args[:image_file] if args.key?(:image_file)
4009
+ @version = args[:version] if args.key?(:version)
4010
+ end
4011
+ end
4012
+
3642
4013
  # A <code><strong>liveBroadcast</strong></code> resource represents an event
3643
4014
  # that will be streamed, via live video, on YouTube.
3644
4015
  class LiveBroadcast
@@ -5729,6 +6100,40 @@ module Google
5729
6100
  end
5730
6101
  end
5731
6102
 
6103
+ #
6104
+ class PlaylistCard
6105
+ include Google::Apis::Core::Hashable
6106
+
6107
+ # Each card can have a custom message.
6108
+ # Optional.
6109
+ # Corresponds to the JSON property `customMessage`
6110
+ # @return [String]
6111
+ attr_accessor :custom_message
6112
+
6113
+ # External playlist ID.
6114
+ # Required.
6115
+ # Corresponds to the JSON property `playlistId`
6116
+ # @return [String]
6117
+ attr_accessor :playlist_id
6118
+
6119
+ # Starting video, if not the first.
6120
+ # Optional.
6121
+ # Corresponds to the JSON property `startVideoId`
6122
+ # @return [String]
6123
+ attr_accessor :start_video_id
6124
+
6125
+ def initialize(**args)
6126
+ update!(**args)
6127
+ end
6128
+
6129
+ # Update properties of this object
6130
+ def update!(**args)
6131
+ @custom_message = args[:custom_message] if args.key?(:custom_message)
6132
+ @playlist_id = args[:playlist_id] if args.key?(:playlist_id)
6133
+ @start_video_id = args[:start_video_id] if args.key?(:start_video_id)
6134
+ end
6135
+ end
6136
+
5732
6137
  #
5733
6138
  class PlaylistContentDetails
5734
6139
  include Google::Apis::Core::Hashable
@@ -6365,6 +6770,25 @@ module Google
6365
6770
  end
6366
6771
  end
6367
6772
 
6773
+ #
6774
+ class RelatedEntity
6775
+ include Google::Apis::Core::Hashable
6776
+
6777
+ #
6778
+ # Corresponds to the JSON property `entity`
6779
+ # @return [Google::Apis::YoutubeV3::Entity]
6780
+ attr_accessor :entity
6781
+
6782
+ def initialize(**args)
6783
+ update!(**args)
6784
+ end
6785
+
6786
+ # Update properties of this object
6787
+ def update!(**args)
6788
+ @entity = args[:entity] if args.key?(:entity)
6789
+ end
6790
+ end
6791
+
6368
6792
  # A resource id is a generic reference that points to another YouTube resource.
6369
6793
  class ResourceId
6370
6794
  include Google::Apis::Core::Hashable
@@ -7238,6 +7662,102 @@ module Google
7238
7662
  end
7239
7663
  end
7240
7664
 
7665
+ # A <code><strong>third party account link</strong></code> resource represents
7666
+ # a link between a YouTube account or a channel and an account on a
7667
+ # third-party service.
7668
+ class ThirdPartyLink
7669
+ include Google::Apis::Core::Hashable
7670
+
7671
+ # Etag of this resource
7672
+ # Corresponds to the JSON property `etag`
7673
+ # @return [String]
7674
+ attr_accessor :etag
7675
+
7676
+ # Identifies what kind of resource this is. Value: the fixed string
7677
+ # <code>"youtube#thirdPartyLink"</code>.
7678
+ # Corresponds to the JSON property `kind`
7679
+ # @return [String]
7680
+ attr_accessor :kind
7681
+
7682
+ # The <code>linking_token</code> identifies a YouTube account and
7683
+ # channel with which the third party account is linked.
7684
+ # Corresponds to the JSON property `linkingToken`
7685
+ # @return [String]
7686
+ attr_accessor :linking_token
7687
+
7688
+ # Basic information about a third party account link, including its type and
7689
+ # type-specific information.
7690
+ # Corresponds to the JSON property `snippet`
7691
+ # @return [Google::Apis::YoutubeV3::ThirdPartyLinkSnippet]
7692
+ attr_accessor :snippet
7693
+
7694
+ # The <code>third-party link status</code> object contains information about
7695
+ # the status of the link.
7696
+ # Corresponds to the JSON property `status`
7697
+ # @return [Google::Apis::YoutubeV3::ThirdPartyLinkStatus]
7698
+ attr_accessor :status
7699
+
7700
+ def initialize(**args)
7701
+ update!(**args)
7702
+ end
7703
+
7704
+ # Update properties of this object
7705
+ def update!(**args)
7706
+ @etag = args[:etag] if args.key?(:etag)
7707
+ @kind = args[:kind] if args.key?(:kind)
7708
+ @linking_token = args[:linking_token] if args.key?(:linking_token)
7709
+ @snippet = args[:snippet] if args.key?(:snippet)
7710
+ @status = args[:status] if args.key?(:status)
7711
+ end
7712
+ end
7713
+
7714
+ # Basic information about a third party account link, including its type and
7715
+ # type-specific information.
7716
+ class ThirdPartyLinkSnippet
7717
+ include Google::Apis::Core::Hashable
7718
+
7719
+ # Information specific to a store on a merchandising platform linked to a
7720
+ # YouTube channel.
7721
+ # Corresponds to the JSON property `channelToStoreLink`
7722
+ # @return [Google::Apis::YoutubeV3::ChannelToStoreLinkDetails]
7723
+ attr_accessor :channel_to_store_link
7724
+
7725
+ # Type of the link named after the entities that are being linked.
7726
+ # Corresponds to the JSON property `type`
7727
+ # @return [String]
7728
+ attr_accessor :type
7729
+
7730
+ def initialize(**args)
7731
+ update!(**args)
7732
+ end
7733
+
7734
+ # Update properties of this object
7735
+ def update!(**args)
7736
+ @channel_to_store_link = args[:channel_to_store_link] if args.key?(:channel_to_store_link)
7737
+ @type = args[:type] if args.key?(:type)
7738
+ end
7739
+ end
7740
+
7741
+ # The <code>third-party link status</code> object contains information about
7742
+ # the status of the link.
7743
+ class ThirdPartyLinkStatus
7744
+ include Google::Apis::Core::Hashable
7745
+
7746
+ #
7747
+ # Corresponds to the JSON property `linkStatus`
7748
+ # @return [String]
7749
+ attr_accessor :link_status
7750
+
7751
+ def initialize(**args)
7752
+ update!(**args)
7753
+ end
7754
+
7755
+ # Update properties of this object
7756
+ def update!(**args)
7757
+ @link_status = args[:link_status] if args.key?(:link_status)
7758
+ end
7759
+ end
7760
+
7241
7761
  # A thumbnail is an image representing a YouTube resource.
7242
7762
  class Thumbnail
7243
7763
  include Google::Apis::Core::Hashable
@@ -7719,6 +8239,40 @@ module Google
7719
8239
  end
7720
8240
  end
7721
8241
 
8242
+ #
8243
+ class VideoCard
8244
+ include Google::Apis::Core::Hashable
8245
+
8246
+ # Each card can have a custom message.
8247
+ # Optional.
8248
+ # Corresponds to the JSON property `customMessage`
8249
+ # @return [String]
8250
+ attr_accessor :custom_message
8251
+
8252
+ # Playback start time offset in milliseconds.
8253
+ # Optional.
8254
+ # Corresponds to the JSON property `playbackStartOffset`
8255
+ # @return [String]
8256
+ attr_accessor :playback_start_offset
8257
+
8258
+ # Encrypted Video ID.
8259
+ # Required.
8260
+ # Corresponds to the JSON property `videoId`
8261
+ # @return [String]
8262
+ attr_accessor :video_id
8263
+
8264
+ def initialize(**args)
8265
+ update!(**args)
8266
+ end
8267
+
8268
+ # Update properties of this object
8269
+ def update!(**args)
8270
+ @custom_message = args[:custom_message] if args.key?(:custom_message)
8271
+ @playback_start_offset = args[:playback_start_offset] if args.key?(:playback_start_offset)
8272
+ @video_id = args[:video_id] if args.key?(:video_id)
8273
+ end
8274
+ end
8275
+
7722
8276
  # A <code><strong>videoCategory</strong></code> resource identifies a
7723
8277
  # category that has been or could be associated with uploaded videos.
7724
8278
  class VideoCategory