gogol-youtube-0.4.0: Google YouTube Data SDK.

Copyright(c) 2015-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.Google.Resource.YouTube.Search.List

Contents

Description

Returns a collection of search results that match the query parameters specified in the API request. By default, a search result set identifies matching video, channel, and playlist resources, but you can also configure queries to only retrieve a specific type of resource.

See: YouTube Data API Reference for youtube.search.list.

Synopsis

REST Resource

type SearchListResource = "youtube" :> ("v3" :> ("search" :> (QueryParam "part" Text :> (QueryParam "publishedAfter" DateTime' :> (QueryParam "videoDefinition" SearchListVideoDefinition :> (QueryParam "videoDuration" SearchListVideoDuration :> (QueryParam "videoCaption" SearchListVideoCaption :> (QueryParam "videoLicense" SearchListVideoLicense :> (QueryParam "regionCode" Text :> (QueryParam "forDeveloper" Bool :> (QueryParam "location" Text :> (QueryParam "locationRadius" Text :> (QueryParam "forContentOwner" Bool :> (QueryParam "channelId" Text :> (QueryParam "q" Text :> (QueryParam "forMine" Bool :> (QueryParam "videoEmbeddable" SearchListVideoEmbeddable :> (QueryParam "eventType" SearchListEventType :> (QueryParam "onBehalfOfContentOwner" Text :> (QueryParam "videoCategoryId" Text :> (QueryParam "topicId" Text :> (QueryParam "safeSearch" SearchListSafeSearch :> (QueryParam "videoSyndicated" SearchListVideoSyndicated :> (QueryParam "relatedToVideoId" Text :> (QueryParam "pageToken" Text :> (QueryParam "type" Text :> (QueryParam "channelType" SearchListChannelType :> (QueryParam "relevanceLanguage" Text :> (QueryParam "order" SearchListOrder :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "publishedBefore" DateTime' :> (QueryParam "videoType" SearchListVideoType :> (QueryParam "videoDimension" SearchListVideoDimension :> (QueryParam "alt" AltJSON :> Get '[JSON] SearchListResponse)))))))))))))))))))))))))))))))))) Source #

A resource alias for youtube.search.list method which the SearchList request conforms to.

Creating a Request

data SearchList Source #

Returns a collection of search results that match the query parameters specified in the API request. By default, a search result set identifies matching video, channel, and playlist resources, but you can also configure queries to only retrieve a specific type of resource.

See: searchList smart constructor.

Instances
Eq SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

Data SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SearchList -> c SearchList #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SearchList #

toConstr :: SearchList -> Constr #

dataTypeOf :: SearchList -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SearchList) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SearchList) #

gmapT :: (forall b. Data b => b -> b) -> SearchList -> SearchList #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SearchList -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SearchList -> r #

gmapQ :: (forall d. Data d => d -> u) -> SearchList -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SearchList -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SearchList -> m SearchList #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SearchList -> m SearchList #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SearchList -> m SearchList #

Show SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

Generic SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

Associated Types

type Rep SearchList :: Type -> Type #

GoogleRequest SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

Associated Types

type Rs SearchList :: Type #

type Scopes SearchList :: [Symbol] #

type Rep SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

type Rep SearchList = D1 (MetaData "SearchList" "Network.Google.Resource.YouTube.Search.List" "gogol-youtube-0.4.0-ICfv3TXlvc9ZGnb0rCY6m" False) (C1 (MetaCons "SearchList'" PrefixI True) ((((S1 (MetaSel (Just "_slPublishedAfter") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe DateTime')) :*: (S1 (MetaSel (Just "_slVideoDefinition") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoDefinition)) :*: S1 (MetaSel (Just "_slPart") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))) :*: ((S1 (MetaSel (Just "_slVideoDuration") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoDuration)) :*: S1 (MetaSel (Just "_slVideoCaption") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoCaption))) :*: (S1 (MetaSel (Just "_slVideoLicense") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoLicense)) :*: S1 (MetaSel (Just "_slRegionCode") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))))) :*: (((S1 (MetaSel (Just "_slForDeveloper") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 (MetaSel (Just "_slLocation") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "_slLocationRadius") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_slForContentOwner") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)))) :*: ((S1 (MetaSel (Just "_slChannelId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_slQ") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "_slForMine") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 (MetaSel (Just "_slVideoEmbeddable") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoEmbeddable)))))) :*: ((((S1 (MetaSel (Just "_slEventType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListEventType)) :*: S1 (MetaSel (Just "_slOnBehalfOfContentOwner") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "_slVideoCategoryId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_slTopicId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))) :*: ((S1 (MetaSel (Just "_slSafeSearch") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListSafeSearch)) :*: S1 (MetaSel (Just "_slVideoSyndicated") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoSyndicated))) :*: (S1 (MetaSel (Just "_slRelatedToVideoId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_slPageToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))))) :*: (((S1 (MetaSel (Just "_slType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text) :*: S1 (MetaSel (Just "_slChannelType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListChannelType))) :*: (S1 (MetaSel (Just "_slRelevanceLanguage") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_slOrder") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 SearchListOrder))) :*: ((S1 (MetaSel (Just "_slMaxResults") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Textual Word32)) :*: S1 (MetaSel (Just "_slPublishedBefore") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe DateTime'))) :*: (S1 (MetaSel (Just "_slVideoType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoType)) :*: S1 (MetaSel (Just "_slVideoDimension") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe SearchListVideoDimension))))))))
type Scopes SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

type Scopes SearchList = "https://www.googleapis.com/auth/youtube" ': ("https://www.googleapis.com/auth/youtube.force-ssl" ': ("https://www.googleapis.com/auth/youtube.readonly" ': ("https://www.googleapis.com/auth/youtubepartner" ': ([] :: [Symbol]))))
type Rs SearchList Source # 
Instance details

Defined in Network.Google.Resource.YouTube.Search.List

Request Lenses

slPublishedAfter :: Lens' SearchList (Maybe UTCTime) Source #

The publishedAfter parameter indicates that the API response should only contain resources created after the specified time. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).

slVideoDefinition :: Lens' SearchList (Maybe SearchListVideoDefinition) Source #

The videoDefinition parameter lets you restrict a search to only include either high definition (HD) or standard definition (SD) videos. HD videos are available for playback in at least 720p, though higher resolutions, like 1080p, might also be available. If you specify a value for this parameter, you must also set the type parameter's value to video.

slPart :: Lens' SearchList Text Source #

The part parameter specifies a comma-separated list of one or more search resource properties that the API response will include. Set the parameter value to snippet.

slVideoDuration :: Lens' SearchList (Maybe SearchListVideoDuration) Source #

The videoDuration parameter filters video search results based on their duration. If you specify a value for this parameter, you must also set the type parameter's value to video.

slVideoCaption :: Lens' SearchList (Maybe SearchListVideoCaption) Source #

The videoCaption parameter indicates whether the API should filter video search results based on whether they have captions. If you specify a value for this parameter, you must also set the type parameter's value to video.

slVideoLicense :: Lens' SearchList (Maybe SearchListVideoLicense) Source #

The videoLicense parameter filters search results to only include videos with a particular license. YouTube lets video uploaders choose to attach either the Creative Commons license or the standard YouTube license to each of their videos. If you specify a value for this parameter, you must also set the type parameter's value to video.

slRegionCode :: Lens' SearchList (Maybe Text) Source #

The regionCode parameter instructs the API to return search results for the specified country. The parameter value is an ISO 3166-1 alpha-2 country code.

slForDeveloper :: Lens' SearchList (Maybe Bool) Source #

The forDeveloper parameter restricts the search to only retrieve videos uploaded via the developer's application or website. The API server uses the request's authorization credentials to identify the developer. Therefore, a developer can restrict results to videos uploaded through the developer's own app or website but not to videos uploaded through other apps or sites.

slLocation :: Lens' SearchList (Maybe Text) Source #

The location parameter, in conjunction with the locationRadius parameter, defines a circular geographic area and also restricts a search to videos that specify, in their metadata, a geographic location that falls within that area. The parameter value is a string that specifies latitude/longitude coordinates e.g. (37.42307,-122.08427). - The location parameter value identifies the point at the center of the area. - The locationRadius parameter specifies the maximum distance that the location associated with a video can be from that point for the video to still be included in the search results.The API returns an error if your request specifies a value for the location parameter but does not also specify a value for the locationRadius parameter.

slLocationRadius :: Lens' SearchList (Maybe Text) Source #

The locationRadius parameter, in conjunction with the location parameter, defines a circular geographic area. The parameter value must be a floating point number followed by a measurement unit. Valid measurement units are m, km, ft, and mi. For example, valid parameter values include 1500m, 5km, 10000ft, and 0.75mi. The API does not support locationRadius parameter values larger than 1000 kilometers. Note: See the definition of the location parameter for more information.

slForContentOwner :: Lens' SearchList (Maybe Bool) Source #

Note: This parameter is intended exclusively for YouTube content partners. The forContentOwner parameter restricts the search to only retrieve resources owned by the content owner specified by the onBehalfOfContentOwner parameter. The user must be authenticated using a CMS account linked to the specified content owner and onBehalfOfContentOwner must be provided.

slChannelId :: Lens' SearchList (Maybe Text) Source #

The channelId parameter indicates that the API response should only contain resources created by the channel

slQ :: Lens' SearchList (Maybe Text) Source #

The q parameter specifies the query term to search for. Your request can also use the Boolean NOT (-) and OR (|) operators to exclude videos or to find videos that are associated with one of several search terms. For example, to search for videos matching either "boating" or "sailing", set the q parameter value to boating|sailing. Similarly, to search for videos matching either "boating" or "sailing" but not "fishing", set the q parameter value to boating|sailing -fishing. Note that the pipe character must be URL-escaped when it is sent in your API request. The URL-escaped value for the pipe character is %7C.

slForMine :: Lens' SearchList (Maybe Bool) Source #

The forMine parameter restricts the search to only retrieve videos owned by the authenticated user. If you set this parameter to true, then the type parameter's value must also be set to video.

slVideoEmbeddable :: Lens' SearchList (Maybe SearchListVideoEmbeddable) Source #

The videoEmbeddable parameter lets you to restrict a search to only videos that can be embedded into a webpage. If you specify a value for this parameter, you must also set the type parameter's value to video.

slEventType :: Lens' SearchList (Maybe SearchListEventType) Source #

The eventType parameter restricts a search to broadcast events. If you specify a value for this parameter, you must also set the type parameter's value to video.

slOnBehalfOfContentOwner :: Lens' SearchList (Maybe Text) Source #

Note: This parameter is intended exclusively for YouTube content partners. The onBehalfOfContentOwner parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.

slVideoCategoryId :: Lens' SearchList (Maybe Text) Source #

The videoCategoryId parameter filters video search results based on their category. If you specify a value for this parameter, you must also set the type parameter's value to video.

slTopicId :: Lens' SearchList (Maybe Text) Source #

The topicId parameter indicates that the API response should only contain resources associated with the specified topic. The value identifies a Freebase topic ID.

slSafeSearch :: Lens' SearchList (Maybe SearchListSafeSearch) Source #

The safeSearch parameter indicates whether the search results should include restricted content as well as standard content.

slVideoSyndicated :: Lens' SearchList (Maybe SearchListVideoSyndicated) Source #

The videoSyndicated parameter lets you to restrict a search to only videos that can be played outside youtube.com. If you specify a value for this parameter, you must also set the type parameter's value to video.

slRelatedToVideoId :: Lens' SearchList (Maybe Text) Source #

The relatedToVideoId parameter retrieves a list of videos that are related to the video that the parameter value identifies. The parameter value must be set to a YouTube video ID and, if you are using this parameter, the type parameter must be set to video.

slPageToken :: Lens' SearchList (Maybe Text) Source #

The pageToken parameter identifies a specific page in the result set that should be returned. In an API response, the nextPageToken and prevPageToken properties identify other pages that could be retrieved.

slType :: Lens' SearchList Text Source #

The type parameter restricts a search query to only retrieve a particular type of resource. The value is a comma-separated list of resource types.

slChannelType :: Lens' SearchList (Maybe SearchListChannelType) Source #

The channelType parameter lets you restrict a search to a particular type of channel.

slRelevanceLanguage :: Lens' SearchList (Maybe Text) Source #

The relevanceLanguage parameter instructs the API to return search results that are most relevant to the specified language. The parameter value is typically an ISO 639-1 two-letter language code. However, you should use the values zh-Hans for simplified Chinese and zh-Hant for traditional Chinese. Please note that results in other languages will still be returned if they are highly relevant to the search query term.

slOrder :: Lens' SearchList SearchListOrder Source #

The order parameter specifies the method that will be used to order resources in the API response.

slMaxResults :: Lens' SearchList Word32 Source #

The maxResults parameter specifies the maximum number of items that should be returned in the result set.

slPublishedBefore :: Lens' SearchList (Maybe UTCTime) Source #

The publishedBefore parameter indicates that the API response should only contain resources created before the specified time. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).

slVideoType :: Lens' SearchList (Maybe SearchListVideoType) Source #

The videoType parameter lets you restrict a search to a particular type of videos. If you specify a value for this parameter, you must also set the type parameter's value to video.

slVideoDimension :: Lens' SearchList (Maybe SearchListVideoDimension) Source #

The videoDimension parameter lets you restrict a search to only retrieve 2D or 3D videos. If you specify a value for this parameter, you must also set the type parameter's value to video.