Module: SearchApi

Extended by:
ModuleMethods
Defined in:
lib/searchapi.rb,
lib/searchapi/helpers.rb,
lib/searchapi/request.rb,
lib/searchapi/version.rb,
lib/searchapi/error_result.rb,
lib/searchapi/module_methods.rb,
lib/searchapi/response_methods.rb,
lib/searchapi/google_news_result.rb,
lib/searchapi/google_light_result.rb,
lib/searchapi/google_local_result.rb,
lib/searchapi/google_news_options.rb,
lib/searchapi/google_news_request.rb,
lib/searchapi/google_images_result.rb,
lib/searchapi/google_light_options.rb,
lib/searchapi/google_light_request.rb,
lib/searchapi/google_local_options.rb,
lib/searchapi/google_local_request.rb,
lib/searchapi/google_search_result.rb,
lib/searchapi/google_finance_result.rb,
lib/searchapi/google_flights_result.rb,
lib/searchapi/google_images_options.rb,
lib/searchapi/google_images_request.rb,
lib/searchapi/google_scholar_result.rb,
lib/searchapi/google_search_options.rb,
lib/searchapi/google_search_request.rb,
lib/searchapi/tiktok_profile_result.rb,
lib/searchapi/youtube_search_result.rb,
lib/searchapi/google_finance_options.rb,
lib/searchapi/google_finance_request.rb,
lib/searchapi/google_flights_options.rb,
lib/searchapi/google_flights_request.rb,
lib/searchapi/google_scholar_options.rb,
lib/searchapi/google_scholar_request.rb,
lib/searchapi/tiktok_profile_options.rb,
lib/searchapi/tiktok_profile_request.rb,
lib/searchapi/youtube_search_options.rb,
lib/searchapi/youtube_search_request.rb,
lib/searchapi/google_news_light_result.rb,
lib/searchapi/instagram_profile_result.rb,
lib/searchapi/google_news_light_options.rb,
lib/searchapi/google_news_light_request.rb,
lib/searchapi/google_news_portal_result.rb,
lib/searchapi/instagram_profile_options.rb,
lib/searchapi/instagram_profile_request.rb,
lib/searchapi/google_news_portal_options.rb,
lib/searchapi/google_news_portal_request.rb

Defined Under Namespace

Modules: Helpers, ModuleMethods, ResponseMethods Classes: ErrorResult, GoogleAIOverview, GoogleAIOverviewReference, GoogleAIOverviewTextBlock, GoogleAd, GoogleAnswerBox, GoogleFinanceAnnual, GoogleFinanceArticle, GoogleFinanceCompanyAbout, GoogleFinanceDiscoverItem, GoogleFinanceDiscoverSection, GoogleFinanceFinancials, GoogleFinanceGraphPoint, GoogleFinanceKeyEvent, GoogleFinanceKnowledgeGraph, GoogleFinanceMarketStock, GoogleFinanceMetadata, GoogleFinanceMetric, GoogleFinanceNewsCategory, GoogleFinanceOptions, GoogleFinanceParameters, GoogleFinancePriceChange, GoogleFinanceQuarterly, GoogleFinanceRequest, GoogleFinanceResult, GoogleFinanceStat, GoogleFinanceSummary, GoogleFinanceTag, GoogleFlightsAirport, GoogleFlightsAirportData, GoogleFlightsAirportDataInner, GoogleFlightsAirportInfo, GoogleFlightsBookingOption, GoogleFlightsBookingRequest, GoogleFlightsCarbonEmissions, GoogleFlightsExtensions, GoogleFlightsFlight, GoogleFlightsLayover, GoogleFlightsLocalPrice, GoogleFlightsMetadata, GoogleFlightsOptions, GoogleFlightsParameters, GoogleFlightsPriceHistory, GoogleFlightsPriceInsights, GoogleFlightsPriceRange, GoogleFlightsRequest, GoogleFlightsResult, GoogleFlightsSegment, GoogleFlightsSelectedFlight, GoogleImage, GoogleImagesMetadata, GoogleImagesOptions, GoogleImagesOriginal, GoogleImagesParameters, GoogleImagesRelatedSearch, GoogleImagesRequest, GoogleImagesResult, GoogleImagesSearchInformation, GoogleImagesSource, GoogleImagesSuggestion, GoogleInlineImage, GoogleInlineImages, GoogleKnowledgeGraph, GoogleLightAnswerBox, GoogleLightAnswerBoxSource, GoogleLightKnowledgeGraph, GoogleLightKnowledgeGraphSource, GoogleLightLatestPost, GoogleLightMetadata, GoogleLightOptions, GoogleLightOrganicResult, GoogleLightPagination, GoogleLightParameters, GoogleLightRelatedQuestion, GoogleLightRelatedSearch, GoogleLightRequest, GoogleLightResult, GoogleLightSearchInformation, GoogleLightSitelink, GoogleLightSitelinks, GoogleLightTopStory, GoogleLocalOptions, GoogleLocalRequest, GoogleLocalResult, GoogleLocalSearchExtractedPrice, GoogleLocalSearchMetadata, GoogleLocalSearchParameters, GoogleLocalSearchResult, GoogleLocalSearchResultItem, GoogleNewsArticle, GoogleNewsLightArticle, GoogleNewsLightMetadata, GoogleNewsLightOptions, GoogleNewsLightParameters, GoogleNewsLightRequest, GoogleNewsLightResult, GoogleNewsLightSearchInformation, GoogleNewsLightTopStory, GoogleNewsMetadata, GoogleNewsMoreLink, GoogleNewsOptions, GoogleNewsPagination, GoogleNewsParameters, GoogleNewsPortalArticle, GoogleNewsPortalFAQ, GoogleNewsPortalMenuTopic, GoogleNewsPortalMetadata, GoogleNewsPortalOptions, GoogleNewsPortalParameters, GoogleNewsPortalPostOnX, GoogleNewsPortalRelatedPublication, GoogleNewsPortalRelatedTopic, GoogleNewsPortalRequest, GoogleNewsPortalResult, GoogleNewsPortalSource, GoogleNewsPortalSubMenuSection, GoogleNewsRequest, GoogleNewsResult, GoogleNewsSearchInformation, GoogleNewsTopStory, GoogleOrganicResult, GooglePagination, GoogleRelatedQuestion, GoogleRelatedSearch, GoogleScholarArticle, GoogleScholarAuthor, GoogleScholarCitedBy, GoogleScholarCitedByLink, GoogleScholarDidYouMean, GoogleScholarInlineLinks, GoogleScholarMetadata, GoogleScholarOptions, GoogleScholarOrganization, GoogleScholarPagination, GoogleScholarParameters, GoogleScholarProfile, GoogleScholarRelatedSearch, GoogleScholarRequest, GoogleScholarResource, GoogleScholarResult, GoogleScholarSearchInformation, GoogleScholarVersions, GoogleSearchInformation, GoogleSearchMetadata, GoogleSearchOptions, GoogleSearchParameters, GoogleSearchRequest, GoogleSearchResult, GoogleShoppingAd, GoogleSitelink, GoogleTopStory, GoogleVideo, InstagramBioLink, InstagramCarouselItem, InstagramPost, InstagramProfile, InstagramProfileMetadata, InstagramProfileOptions, InstagramProfileParameters, InstagramProfileRequest, InstagramProfileResult, InstagramTaggedUser, Request, TikTokProfile, TikTokProfileMetadata, TikTokProfileOptions, TikTokProfileParameters, TikTokProfileRequest, TikTokProfileResult, YouTubeAd, YouTubeAdChannel, YouTubeChannel, YouTubeFeaturedChannel, YouTubeFeaturedVideo, YouTubeFeaturedVideoChannel, YouTubeHighlightedVideo, YouTubeKeyMoment, YouTubeMetadataItems, YouTubeMovie, YouTubeMovieChannel, YouTubePagination, YouTubePeopleAlsoSearchFor, YouTubePlaylist, YouTubePlaylistChannel, YouTubePlaylistVideo, YouTubePost, YouTubePostChannel, YouTubePosts, YouTubeSearchInformation, YouTubeSearchMetadata, YouTubeSearchOptions, YouTubeSearchParameters, YouTubeSearchRequest, YouTubeSearchResult, YouTubeSection, YouTubeSectionChannel, YouTubeSectionItem, YouTubeShort, YouTubeShorts, YouTubeThumbnail, YouTubeVideo, YouTubeVideoChannel

Constant Summary collapse

VERSION =
'1.1.0'
GoogleNewsMetadataSchema =
DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleNewsParametersSchema =
DynamicSchema::Struct.define do
  engine                String
  q                     String
  device                String
  uule                  String
  location              String
  location_used         String, as: :location_used
  google_domain         String, as: :google_domain
  hl                    String
  gl                    String
  lr                    String
  cr                    String
  nfpr                  String
  filter                String
  safe                  String
  page                  String
  time_period           String, as: :time_period
  time_period_min       String, as: :time_period_min
  time_period_max       String, as: :time_period_max
  sort_by               String, as: :sort_by
end
GoogleNewsSearchInformationSchema =
DynamicSchema::Struct.define do
  query_displayed       String, as: :query_displayed
  total_results         Integer, as: :total_results
  page                  Integer
  time_taken_displayed  Float, as: :time_taken_displayed
  detected_location     String, as: :detected_location
  did_you_mean          String, as: :did_you_mean
  has_no_results_for    [ TrueClass, FalseClass ], as: :has_no_results_for
  showing_results_for   String, as: :showing_results_for
end
GoogleNewsArticleSchema =
DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  source                String
  date                  String
  snippet               String
  is_live               [ TrueClass, FalseClass ], as: :is_live
  favicon               String
  thumbnail             String
end
GoogleNewsTopStorySchema =
DynamicSchema::Struct.define do
  title                 String
  link                  String
  author                String
  author_link           String, as: :author_link
  source                String
  date                  String
  snippet               String
  is_live               [ TrueClass, FalseClass ], as: :is_live
  is_video              [ TrueClass, FalseClass ], as: :is_video
  thumbnail             String
end
GoogleNewsMoreLinkSchema =
DynamicSchema::Struct.define do
  link                  String
end
GoogleNewsPaginationSchema =
DynamicSchema::Struct.define do
  current               Integer
  previous              String
  _value                :next, type: String
  other_pages           Hash, as: :other_pages
end
GoogleNewsResultSchema =
DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleNewsParameters, as: :search_parameters
  search_information    GoogleNewsSearchInformation, as: :search_information
  organic_results       GoogleNewsArticle, array: true, as: :organic_results
  top_stories           GoogleNewsTopStory, array: true, as: :top_stories
  top_stories_more_link GoogleNewsMoreLink, as: :top_stories_more_link
  pagination            GoogleNewsPagination
  error                 String
end
GoogleLightMetadataSchema =
DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleLightParametersSchema =
DynamicSchema::Struct.define do
  engine                String
  q                     String
  location              String
  location_used         String, as: :location_used
  uule                  String
  google_domain         String, as: :google_domain
  hl                    String
  gl                    String
  lr                    String
  nfpr                  String
  filter                String
  safe                  String
  page                  Integer
end
GoogleLightSearchInformationSchema =
DynamicSchema::Struct.define do
  query_displayed       String, as: :query_displayed
  page                  Integer
  detected_location     String, as: :detected_location
  did_you_mean          String, as: :did_you_mean
end
GoogleLightAnswerBoxSourceSchema =
DynamicSchema::Struct.define do
  title                 String
  link                  String
  displayed_link        String, as: :displayed_link
end
GoogleLightAnswerBoxSchema =
DynamicSchema::Struct.define do
  question              String
  answer                String
  answer_highlight      String, as: :answer_highlight
  answer_list           String, array: true, as: :answer_list
  source                GoogleLightAnswerBoxSource
end
GoogleLightKnowledgeGraphSourceSchema =
DynamicSchema::Struct.define do
  name                  String
  link                  String
end
GoogleLightKnowledgeGraphSchema =
DynamicSchema::Struct.define do
  title                 String
  type                  String
  rating                Float
  reviews               Integer
  website               String
  directions            String
  source                GoogleLightKnowledgeGraphSource
  description           String
  facts                 Hash
  thumbnail             String
  images                String, array: true
end
GoogleLightSitelinkSchema =
DynamicSchema::Struct.define do
  title                 String
  link                  String
end
GoogleLightSitelinksSchema =
DynamicSchema::Struct.define do
  inline                GoogleLightSitelink, array: true
end
GoogleLightOrganicResultSchema =
DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  displayed_link        String, as: :displayed_link
  snippet               String
  date                  String
  rating                Float
  reviews               Integer
  sitelinks             GoogleLightSitelinks
  extensions            String, array: true
end
GoogleLightTopStorySchema =
DynamicSchema::Struct.define do
  title                 String
  link                  String
  source                String
  date                  String
end
GoogleLightLatestPostSchema =
DynamicSchema::Struct.define do
  title                 String
  link                  String
  source                String
  date                  String
end
GoogleLightRelatedQuestionSchema =
DynamicSchema::Struct.define do
  question              String
  answer                String
  answer_highlight      String, as: :answer_highlight
  answer_list           String, array: true, as: :answer_list
  source                GoogleLightAnswerBoxSource
end
GoogleLightRelatedSearchSchema =
DynamicSchema::Struct.define do
  query                 String
end
GoogleLightPaginationSchema =
DynamicSchema::Struct.define do
  current               Integer
  previous              String
  _value                :next, type: String
end
GoogleLightResultSchema =
DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleLightParameters, as: :search_parameters
  search_information    GoogleLightSearchInformation, as: :search_information
  answer_box            GoogleLightAnswerBox, as: :answer_box
  knowledge_graph       GoogleLightKnowledgeGraph, as: :knowledge_graph
  organic_results       GoogleLightOrganicResult, array: true, as: :organic_results
  top_stories           GoogleLightTopStory, array: true, as: :top_stories
  latest_posts          GoogleLightLatestPost, array: true, as: :latest_posts
  related_questions     GoogleLightRelatedQuestion, array: true, as: :related_questions
  related_searches      GoogleLightRelatedSearch, array: true, as: :related_searches
  pagination            GoogleLightPagination
  error                 String
end
GoogleLocalSearchMetadataSchema =
DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleLocalSearchParametersSchema =
DynamicSchema::Struct.define do
  engine                String
  q                     String
  device                String
  location              String
  location_used         String, as: :location_used
  uule                  String
  google_domain         String, as: :google_domain
  gl                    String
  hl                    String
  page                  Integer
end
GoogleLocalSearchExtractedPriceSchema =
DynamicSchema::Struct.define do
  min                   Integer
  max                   Integer
end
GoogleLocalSearchResultItemSchema =
DynamicSchema::Struct.define do
  position              Integer
  title                 String
  ludocid               String
  rating                Float
  reviews               Integer
  price                 String
  extracted_price       GoogleLocalSearchExtractedPrice, as: :extracted_price
  comment               String
  extensions            String, array: true
  image                 String
  link                  String
  hotel_class           String, as: :hotel_class
  amenities             String, array: true
  direction             String
  website               String
  phone                 String
  order                 String
end
GoogleLocalSearchResultSchema =
DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleLocalSearchParameters, as: :search_parameters
  local_results         GoogleLocalSearchResultItem, array: true, as: :local_results
  error                 String
end
GoogleImagesMetadataSchema =
DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleImagesParametersSchema =
DynamicSchema::Struct.define do
  engine                String
  q                     String
  device                String
  uule                  String
  location              String
  location_used         String, as: :location_used
  cr                    String
  google_domain         String, as: :google_domain
  hl                    String
  gl                    String
  lr                    String
  nfpr                  Integer
  filter                Integer
  safe                  String
  page                  Integer
  tbs                   String
  chips                 String
  size                  String
  color                 String
  image_type            String, as: :image_type
  time_period           String, as: :time_period
  usage_rights          String, as: :usage_rights
  aspect_ratio          String, as: :aspect_ratio
  next_page_token       String, as: :next_page_token
end
GoogleImagesSearchInformationSchema =
DynamicSchema::Struct.define do
  query_displayed       String, as: :query_displayed
  total_results         Integer, as: :total_results
  page                  Integer
  time_taken_displayed  Float, as: :time_taken_displayed
  detected_location     String, as: :detected_location
  did_you_mean          String, as: :did_you_mean
  has_no_results_for    [ TrueClass, FalseClass ], as: :has_no_results_for
  showing_results_for   String, as: :showing_results_for
end
GoogleImagesSuggestionSchema =
DynamicSchema::Struct.define do
  title                 String
  link                  String
  thumbnail             String
end
GoogleImagesSourceSchema =
DynamicSchema::Struct.define do
  name                  String
  link                  String
end
GoogleImagesOriginalSchema =
DynamicSchema::Struct.define do
  link                  String
  width                 Integer
  height                Integer
end
GoogleImageSchema =
DynamicSchema::Struct.define do
  position              Integer
  title                 String
  source                GoogleImagesSource
  original              GoogleImagesOriginal
  thumbnail             String
  tag                   String
end
GoogleImagesRelatedSearchSchema =
DynamicSchema::Struct.define do
  link                  String
  query                 String
  highlighted           String, array: true
  thumbnail             String
end
GoogleImagesResultSchema =
DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleImagesParameters, as: :search_parameters
  search_information    GoogleImagesSearchInformation, as: :search_information
  suggestions           GoogleImagesSuggestion, array: true
  images                GoogleImage, array: true
  related_searches      GoogleImagesRelatedSearch, array: true, as: :related_searches
  error                 String
end
GoogleSearchMetadataSchema =

Search metadata

DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
end
GoogleSearchParametersSchema =

Search parameters

DynamicSchema::Struct.define do
  engine                String
  q                     String
  kgmid                 String
  location              String
  location_used         String, as: :location_used
  uule                  String
  google_domain         String, as: :google_domain
  hl                    String
  gl                    String
  lr                    String
  cr                    String
  device                String
  page                  Integer
  num                   Integer
  safe                  String
  filter                String
  nfpr                  String
  time_period           String, as: :time_period
  time_period_min       String, as: :time_period_min
  time_period_max       String, as: :time_period_max
  optimization_strategy String, as: :optimization_strategy
end
GoogleSearchInformationSchema =

Search information

DynamicSchema::Struct.define do
  query_displayed       String, as: :query_displayed
  total_results         Integer, as: :total_results
  page                  Integer
  time_taken_displayed  String, as: :time_taken_displayed
  detected_location     String, as: :detected_location
  did_you_mean          String, as: :did_you_mean
end
GoogleSitelinkSchema =

Organic result sitelinks

DynamicSchema::Struct.define do
  title                 String
  link                  String
end
GoogleOrganicResultSchema =

Organic result

DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  displayed_link        String, as: :displayed_link
  favicon               String
  snippet               String
  snippet_highlighted_words String, array: true, as: :snippet_highlighted_words
  date                  String
  sitelinks             GoogleSitelink, array: true
  source                String
end
GoogleAdSchema =

Ad result

DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  displayed_link        String, as: :displayed_link
  tracking_link         String, as: :tracking_link
  description           String
  sitelinks             GoogleSitelink, array: true
end
GoogleShoppingAdSchema =

Shopping ad

DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  source                String
  price                 String
  rating                Float
  reviews               Integer
  thumbnail             String
end
GoogleKnowledgeGraphSchema =

Knowledge graph

DynamicSchema::Struct.define do
  title                 String
  type                  String
  description           String
  source                Hash
  image                 String
  attributes            Hash
end
GoogleRelatedQuestionSchema =

Related question

DynamicSchema::Struct.define do
  question              String
  answer                String
  title                 String
  link                  String
  displayed_link        String, as: :displayed_link
end
GoogleRelatedSearchSchema =

Related search

DynamicSchema::Struct.define do
  query                 String
  link                  String
end
GoogleVideoSchema =

Video result

DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  source                String
  channel               String
  date                  String
  duration              String
  thumbnail             String
end
GoogleTopStorySchema =

Top story

DynamicSchema::Struct.define do
  title                 String
  link                  String
  source                String
  date                  String
  thumbnail             String
end
GoogleLocalResultSchema =

Local result

DynamicSchema::Struct.define do
  position              Integer
  title                 String
  place_id              String, as: :place_id
  data_cid              String, as: :data_cid
  rating                Float
  reviews               Integer
  price                 String
  type                  String
  address               String
  hours                 String
  phone                 String
  website               String
  thumbnail             String
  gps_coordinates       Hash, as: :gps_coordinates
end
GooglePaginationSchema =

Pagination

DynamicSchema::Struct.define do
  current               Integer
  _value                :next, type: Integer
  previous              Integer
end
GoogleAIOverviewReferenceSchema =

AI Overview reference link

DynamicSchema::Struct.define do
  link                  String
  title                 String
  source                String
end
GoogleAIOverviewTextBlockSchema =

AI Overview text block

DynamicSchema::Struct.define do
  text                  String
  position              Integer
end
GoogleAIOverviewSchema =

AI Overview

DynamicSchema::Struct.define do
  text_blocks           GoogleAIOverviewTextBlock, array: true, as: :text_blocks
  markdown              String
  reference_links       GoogleAIOverviewReference, array: true, as: :reference_links
  error                 String
end
GoogleAnswerBoxSchema =

Answer box

DynamicSchema::Struct.define do
  type                  String
  title                 String
  answer                String
  link                  String
  snippet               String
  date                  String
  thumbnail             String
end
GoogleInlineImageSchema =

Inline image

DynamicSchema::Struct.define do
  title                 String
  source                String
  link                  String
  thumbnail             String
  original              String
end
GoogleInlineImagesSchema =

Inline images container

DynamicSchema::Struct.define do
  images                GoogleInlineImage, array: true
  more_link             String, as: :more_link
end
GoogleSearchResultSchema =

Main search result

DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleSearchParameters, as: :search_parameters
  search_information    GoogleSearchInformation, as: :search_information
  ai_overview           GoogleAIOverview, as: :ai_overview
  answer_box            GoogleAnswerBox, as: :answer_box
  knowledge_graph       GoogleKnowledgeGraph, as: :knowledge_graph
  ads                   GoogleAd, array: true
  shopping_ads          GoogleShoppingAd, array: true, as: :shopping_ads
  organic_results       GoogleOrganicResult, array: true, as: :organic_results
  related_questions     GoogleRelatedQuestion, array: true, as: :related_questions
  inline_videos         GoogleVideo, array: true, as: :inline_videos
  top_stories           GoogleTopStory, array: true, as: :top_stories
  local_results         GoogleLocalResult, array: true, as: :local_results
  related_searches      GoogleRelatedSearch, array: true, as: :related_searches
  pagination            GooglePagination
end
GoogleFinanceMetadataSchema =

Google Finance Search metadata

DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleFinanceParametersSchema =

Google Finance Search parameters

DynamicSchema::Struct.define do
  engine                String
  q                     String
  hl                    String
  window                String
end
GoogleFinancePriceChangeSchema =

Price change

DynamicSchema::Struct.define do
  percentage            Float
  amount                Float
  movement              String
end
GoogleFinanceSummarySchema =

Summary

DynamicSchema::Struct.define do
  title                 String
  stock                 String
  exchange              String
  price                 Float
  currency              String
  date                  String
  price_change          GoogleFinancePriceChange, as: :price_change
end
GoogleFinanceKeyEventSchema =

Key event

DynamicSchema::Struct.define do
  title                 String
  link                  String
  source                String
  source_date           String, as: :source_date
  date                  String
  price_change          GoogleFinancePriceChange, as: :price_change
end
GoogleFinanceGraphPointSchema =

Graph point

DynamicSchema::Struct.define do
  price                 Float
  currency              String
  date                  String
  volume                Integer
end
GoogleFinanceTagSchema =

Knowledge graph tag

DynamicSchema::Struct.define do
  title                 String
  description           String
end
GoogleFinanceStatSchema =

Knowledge graph stat

DynamicSchema::Struct.define do
  label                 String
  description           String
  value                 String
end
GoogleFinanceCompanyAboutSchema =

Company about

DynamicSchema::Struct.define do
  company               String
  description           String
  address               String
  founded               String
  ceo                   String
  employees             Integer
  website               String
  wikipedia             String
end
GoogleFinanceKnowledgeGraphSchema =

Knowledge graph

DynamicSchema::Struct.define do
  tags                  GoogleFinanceTag, array: true
  stats                 GoogleFinanceStat, array: true
  about                 GoogleFinanceCompanyAbout
end
GoogleFinanceArticleSchema =

News article

DynamicSchema::Struct.define do
  snippet               String
  link                  String
  source                String
  date                  String
  thumbnail             String
end
GoogleFinanceNewsCategorySchema =

News category

DynamicSchema::Struct.define do
  title                 String
  articles              GoogleFinanceArticle, array: true
end
GoogleFinanceMetricSchema =

Financial metric

DynamicSchema::Struct.define do
  value                 Float
  last_year_value       Float, as: :last_year_value
  price_change          GoogleFinancePriceChange, as: :price_change
end
GoogleFinanceQuarterlySchema =

Quarterly financial

DynamicSchema::Struct.define do
  year                  Integer
  quarter               String
  currency              String
  revenue               GoogleFinanceMetric
  net_income            GoogleFinanceMetric, as: :net_income
  earnings_per_share    GoogleFinanceMetric, as: :earnings_per_share
  net_profit_margin     GoogleFinanceMetric, as: :net_profit_margin
  total_assets          GoogleFinanceMetric, as: :total_assets
  total_equity          GoogleFinanceMetric, as: :total_equity
  total_liabilities     GoogleFinanceMetric, as: :total_liabilities
  free_cash_flow        GoogleFinanceMetric, as: :free_cash_flow
end
GoogleFinanceAnnualSchema =

Annual financial

DynamicSchema::Struct.define do
  year                  Integer
  currency              String
  revenue               GoogleFinanceMetric
  net_income            GoogleFinanceMetric, as: :net_income
  earnings_per_share    GoogleFinanceMetric, as: :earnings_per_share
  net_profit_margin     GoogleFinanceMetric, as: :net_profit_margin
  total_assets          GoogleFinanceMetric, as: :total_assets
  total_equity          GoogleFinanceMetric, as: :total_equity
  total_liabilities     GoogleFinanceMetric, as: :total_liabilities
  free_cash_flow        GoogleFinanceMetric, as: :free_cash_flow
end
GoogleFinanceFinancialsSchema =

Financials

DynamicSchema::Struct.define do
  quarterly             GoogleFinanceQuarterly, array: true
  annual                GoogleFinanceAnnual, array: true
end
GoogleFinanceMarketStockSchema =

Market stock

DynamicSchema::Struct.define do
  stock                 String
  exchange              String
  company               String
  link                  String
  name                  String
  price                 Float
  price_change          GoogleFinancePriceChange, as: :price_change
  date                  String
end
GoogleFinanceDiscoverItemSchema =

Discover item

DynamicSchema::Struct.define do
  stock                 String
  link                  String
  name                  String
  price                 Float
  price_change          GoogleFinancePriceChange, as: :price_change
end
GoogleFinanceDiscoverSectionSchema =

Discover section

DynamicSchema::Struct.define do
  title                 String
  items                 GoogleFinanceDiscoverItem, array: true
end
GoogleFinanceResultSchema =

Main Google Finance result

DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleFinanceParameters, as: :search_parameters
  summary               GoogleFinanceSummary
  key_events            GoogleFinanceKeyEvent, array: true, as: :key_events
  graph                 GoogleFinanceGraphPoint, array: true
  knowledge_graph       GoogleFinanceKnowledgeGraph, as: :knowledge_graph
  news                  GoogleFinanceNewsCategory, array: true
  articles              GoogleFinanceArticle, array: true
  financials            GoogleFinanceFinancials
  markets               Hash
  compare_to            GoogleFinanceMarketStock, array: true, as: :compare_to
  discover_more         GoogleFinanceDiscoverSection, array: true, as: :discover_more
  error                 String
end
GoogleFlightsMetadataSchema =

Google Flights Search metadata

DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleFlightsParametersSchema =

Google Flights Search parameters

DynamicSchema::Struct.define do
  engine                String
  departure_id          String, as: :departure_id
  arrival_id            String, as: :arrival_id
  currency              String
  hl                    String
  gl                    String
  outbound_date         String, as: :outbound_date
  return_date           String, as: :return_date
  flight_type           String, as: :flight_type
  travel_class          String, as: :travel_class
  stops                 String
  sort_by               String, as: :sort_by
  adults                Integer
  children              Integer
  infants_in_seat       Integer, as: :infants_in_seat
  infants_on_lap        Integer, as: :infants_on_lap
end
GoogleFlightsAirportSchema =

Airport details

DynamicSchema::Struct.define do
  name                  String
  id                    String
  date                  String
  time                  String
end
GoogleFlightsExtensionsSchema =

Detected extensions (amenities)

DynamicSchema::Struct.define do
  has_power_and_usb_outlets       [ TrueClass, FalseClass ], as: :has_power_and_usb_outlets
  has_personal_video_screen       [ TrueClass, FalseClass ], as: :has_personal_video_screen
  has_live_tv                     [ TrueClass, FalseClass ], as: :has_live_tv
  has_on_demand_video             [ TrueClass, FalseClass ], as: :has_on_demand_video
  has_stream_video_to_own_device  [ TrueClass, FalseClass ], as: :has_stream_video_to_own_device
  wifi                            String
  seat_type                       String, as: :seat_type
  legroom_short                   String, as: :legroom_short
  legroom_long                    String, as: :legroom_long
  carbon_emission                 Float, as: :carbon_emission
end
GoogleFlightsSegmentSchema =

Flight segment

DynamicSchema::Struct.define do
  departure_airport     GoogleFlightsAirport, as: :departure_airport
  arrival_airport       GoogleFlightsAirport, as: :arrival_airport
  duration              Integer
  airplane              String
  airline               String
            String, as: :airline_logo
  travel_class          String, as: :travel_class
  flight_number         String, as: :flight_number
  ticket_also_sold_by   String, array: true, as: :ticket_also_sold_by
  is_overnight          [ TrueClass, FalseClass ], as: :is_overnight
  is_often_delayed      [ TrueClass, FalseClass ], as: :is_often_delayed
  extensions            String, array: true
  detected_extensions   GoogleFlightsExtensions, as: :detected_extensions
end
GoogleFlightsLayoverSchema =

Layover

DynamicSchema::Struct.define do
  duration              Integer
  name                  String
  id                    String
  is_overnight          [ TrueClass, FalseClass ], as: :is_overnight
end
GoogleFlightsCarbonEmissionsSchema =

Carbon emissions

DynamicSchema::Struct.define do
  this_flight           Integer, as: :this_flight
  typical_for_this_route Integer, as: :typical_for_this_route
  difference_percent    Integer, as: :difference_percent
  lowest_route          Integer, as: :lowest_route
end
GoogleFlightsFlightSchema =

Flight option

DynamicSchema::Struct.define do
  flights               GoogleFlightsSegment, array: true
  layovers              GoogleFlightsLayover, array: true
  total_duration        Integer, as: :total_duration
  carbon_emissions      GoogleFlightsCarbonEmissions, as: :carbon_emissions
  price                 Integer
  type                  String
  extensions            String, array: true
            String, as: :airline_logo
  booking_token         String, as: :booking_token
  departure_token       String, as: :departure_token
end
GoogleFlightsPriceRangeSchema =

Price range

DynamicSchema::Struct.define do
  low_price             Integer, as: :low_price
  high_price            Integer, as: :high_price
end
GoogleFlightsPriceHistorySchema =

Price history point

DynamicSchema::Struct.define do
  price                 Integer
  iso_date              String, as: :iso_date
end
GoogleFlightsPriceInsightsSchema =

Price insights

DynamicSchema::Struct.define do
  lowest_price          Integer, as: :lowest_price
  price_level           String, as: :price_level
  typical_price_range   GoogleFlightsPriceRange, as: :typical_price_range
  price_history         GoogleFlightsPriceHistory, array: true, as: :price_history
end
GoogleFlightsAirportDataInnerSchema =

Airport data

DynamicSchema::Struct.define do
  id                    String
  name                  String
end
GoogleFlightsAirportDataSchema =
DynamicSchema::Struct.define do
  airport               GoogleFlightsAirportDataInner
  city                  String
  country               String
  country_code          String, as: :country_code
  image                 String
  thumbnail             String
end
GoogleFlightsAirportInfoSchema =

Airport info

DynamicSchema::Struct.define do
  departure             GoogleFlightsAirportData, array: true
  arrival               GoogleFlightsAirportData, array: true
end
GoogleFlightsBookingRequestSchema =

Booking request

DynamicSchema::Struct.define do
  url                   String
  post_data             String, as: :post_data
end
GoogleFlightsLocalPriceSchema =

Local price

DynamicSchema::Struct.define do
  currency              String
  price                 Integer
end
GoogleFlightsBookingOptionSchema =

Booking option

DynamicSchema::Struct.define do
  book_with             String, as: :book_with
  airline_logos         String, array: true, as: :airline_logos
  flight_numbers        String, array: true, as: :flight_numbers
  price                 Integer
  local_prices          GoogleFlightsLocalPrice, array: true, as: :local_prices
  option_title          String, as: :option_title
  extensions            String, array: true
  baggage_prices        String, array: true, as: :baggage_prices
  booking_phone         String, as: :booking_phone
  booking_request       GoogleFlightsBookingRequest, as: :booking_request
  is_split_booking      [ TrueClass, FalseClass ], as: :is_split_booking
end
GoogleFlightsSelectedFlightSchema =

Selected flight

DynamicSchema::Struct.define do
  flights               GoogleFlightsSegment, array: true
  layovers              GoogleFlightsLayover, array: true
  total_duration        Integer, as: :total_duration
  carbon_emissions      GoogleFlightsCarbonEmissions, as: :carbon_emissions
  type                  String
            String, as: :airline_logo
end
GoogleFlightsResultSchema =

Main Google Flights result

DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleFlightsParameters, as: :search_parameters
  best_flights          GoogleFlightsFlight, array: true, as: :best_flights
  other_flights         GoogleFlightsFlight, array: true, as: :other_flights
  price_insights        GoogleFlightsPriceInsights, as: :price_insights
  airports              GoogleFlightsAirportInfo, array: true
  selected_flights      GoogleFlightsSelectedFlight, array: true, as: :selected_flights
  booking_options       GoogleFlightsBookingOption, array: true, as: :booking_options
  error                 String
end
GoogleScholarMetadataSchema =
DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleScholarParametersSchema =
DynamicSchema::Struct.define do
  engine                String
  q                     String
  cites                 String
  cluster               String
  hl                    String
  lr                    String
  scisbd                Integer
  as_ylo                Integer, as: :as_ylo
  as_yhi                Integer, as: :as_yhi
  as_rr                 Integer, as: :as_rr
  as_vis                Integer, as: :as_vis
  as_sdt                String, as: :as_sdt
  filter                Integer
  safe                  String
  source                String
  num                   Integer
  page                  Integer
end
GoogleScholarDidYouMeanSchema =
DynamicSchema::Struct.define do
  text                  String
  link                  String
end
GoogleScholarSearchInformationSchema =
DynamicSchema::Struct.define do
  total_results         Integer, as: :total_results
  page                  Integer
  time_taken_displayed  Float, as: :time_taken_displayed
  query_displayed       String, as: :query_displayed
  did_you_mean          GoogleScholarDidYouMean, as: :did_you_mean
end
GoogleScholarCitedBySchema =
DynamicSchema::Struct.define do
  total                 Integer
end
GoogleScholarProfileSchema =
DynamicSchema::Struct.define do
  name                  String
  link                  String
  author_id             String, as: :author_id
  affiliations          String
  email                 String
  cited_by              GoogleScholarCitedBy, as: :cited_by
end
GoogleScholarOrganizationSchema =
DynamicSchema::Struct.define do
  name                  String
  link                  String
  org_id                String, as: :org_id
  university            String
end
GoogleScholarResourceSchema =
DynamicSchema::Struct.define do
  name                  String
  format                String
  link                  String
end
GoogleScholarAuthorSchema =
DynamicSchema::Struct.define do
  name                  String
  id                    String
  link                  String
end
GoogleScholarCitedByLinkSchema =
DynamicSchema::Struct.define do
  total                 Integer
  link                  String
  cites_id              String, as: :cites_id
end
GoogleScholarVersionsSchema =
DynamicSchema::Struct.define do
  total                 Integer
  link                  String
  cluster_id            String, as: :cluster_id
end
GoogleScholarInlineLinksSchema =
DynamicSchema::Struct.define do
  cited_by              GoogleScholarCitedByLink, as: :cited_by
  versions              GoogleScholarVersions
  related_articles_link String, as: :related_articles_link
  cached_page_link      String, as: :cached_page_link
end
GoogleScholarArticleSchema =
DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  data_cid              String, as: :data_cid
  type                  String
  publication           String
  snippet               String
  resource              GoogleScholarResource
  authors               GoogleScholarAuthor, array: true
  inline_links          GoogleScholarInlineLinks, as: :inline_links
end
GoogleScholarRelatedSearchSchema =
DynamicSchema::Struct.define do
  query                 String
  highlighted           String, array: true
  link                  String
end
GoogleScholarPaginationSchema =
DynamicSchema::Struct.define do
  current               Integer
  previous              String
  _value                :next, type: String
  other_pages           Hash, as: :other_pages
end
GoogleScholarResultSchema =
DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleScholarParameters, as: :search_parameters
  search_information    GoogleScholarSearchInformation, as: :search_information
  profiles              GoogleScholarProfile, array: true
  organizations         GoogleScholarOrganization, array: true
  organic_results       GoogleScholarArticle, array: true, as: :organic_results
  related_searches      GoogleScholarRelatedSearch, array: true, as: :related_searches
  pagination            GoogleScholarPagination
  error                 String
end
TikTokProfileMetadataSchema =

TikTok Search metadata

DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
TikTokProfileParametersSchema =

TikTok Search parameters

DynamicSchema::Struct.define do
  engine                String
  username              String
end
TikTokProfileSchema =

Profile

DynamicSchema::Struct.define do
  username              String
  name                  String
  bio                   String
  avatar                String
  avatar_hd             String, as: :avatar_hd
  is_verified           [ TrueClass, FalseClass ], as: :is_verified
  is_private            [ TrueClass, FalseClass ], as: :is_private
  is_business           [ TrueClass, FalseClass ], as: :is_business
  posts                 Integer
  followers             Integer
  following             Integer
  category              String
  bio_link              String, as: :bio_link
  hearts                Integer
  language              String
  created_at            String, as: :created_at
end
TikTokProfileResultSchema =

Main TikTok profile result

DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     TikTokProfileParameters, as: :search_parameters
  profile               TikTokProfile
  error                 String
end
YouTubeSearchMetadataSchema =

YouTube Search metadata

DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
YouTubeSearchParametersSchema =

YouTube Search parameters

DynamicSchema::Struct.define do
  engine                String
  q                     String
  sp                    String
  hl                    String
  gl                    String
end
YouTubeSearchInformationSchema =

YouTube Search information

DynamicSchema::Struct.define do
  total_results         Integer, as: :total_results
  state                 String
  original_query        String, as: :original_query
  original_query_sp     String, as: :original_query_sp
  corrected_query       String, as: :corrected_query
end
YouTubeThumbnailSchema =

YouTube Thumbnail

DynamicSchema::Struct.define do
  static                String
  rich                  String
end
YouTubeVideoChannelSchema =

Video channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
  is_verified           [ TrueClass, FalseClass ], as: :is_verified
  thumbnail             String
end
YouTubeKeyMomentSchema =

Key moment

DynamicSchema::Struct.define do
  title                 String
  start_seconds         Integer, as: :start_seconds
  thumbnail             String
end
YouTubeVideoSchema =

Video result

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  title                 String
  link                  String
  description           String
  views                 Integer
  is_live               [ TrueClass, FalseClass ], as: :is_live
  channel               YouTubeVideoChannel
  length                String
  published_time        String, as: :published_time
  badges                String, array: true
  thumbnail             YouTubeThumbnail
  key_moments           YouTubeKeyMoment, array: true, as: :key_moments
end
YouTubeChannelSchema =

Channel result

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  title                 String
  link                  String
  description           String
  is_verified           [ TrueClass, FalseClass ], as: :is_verified
  video_count           Integer, as: :video_count
  subscribers           Integer
  thumbnail             YouTubeThumbnail
end
YouTubePlaylistChannelSchema =

Playlist channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  is_verified           [ TrueClass, FalseClass ], as: :is_verified
  link                  String
end
YouTubePlaylistVideoSchema =

Playlist video

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
  length                String
end
YouTubePlaylistSchema =

Playlist result

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  title                 String
  link                  String
  video_count           Integer, as: :video_count
  channel               YouTubePlaylistChannel
  published_time        String, as: :published_time
  videos                YouTubePlaylistVideo, array: true
  thumbnail             String
end
YouTubeMovieChannelSchema =

Movie channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
  is_verified           [ TrueClass, FalseClass ], as: :is_verified
end
YouTubeMetadataItemsSchema =

Metadata items

DynamicSchema::Struct.define do
  top                   String, array: true
  bottom                String, array: true
end
YouTubeMovieSchema =

Movie result

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  title                 String
  link                  String
  description           String
  channel               YouTubeMovieChannel
  length                String
          YouTubeMetadataItems, as: :metadata_items
  badges                String, array: true
  buttons               String, array: true
  thumbnail             String
end
YouTubeShortSchema =

Short video

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  title                 String
  link                  String
  duration              String
  views                 Integer
  thumbnail             String
end
YouTubeShortsSchema =

Shorts section

DynamicSchema::Struct.define do
  section_title         String, as: :section_title
  position              Integer
  items                 YouTubeShort, array: true
end
YouTubePostChannelSchema =

Post channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
  is_verified           [ TrueClass, FalseClass ], as: :is_verified
  thumbnail             String
end
YouTubePostSchema =

Post item

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  link                  String
  text                  String
  likes                 String
  extracted_likes       Integer, as: :extracted_likes
  comments              String
  extracted_comments    Integer, as: :extracted_comments
  channel               YouTubePostChannel
  published_time        String, as: :published_time
  thumbnail             String
end
YouTubePostsSchema =

Posts section

DynamicSchema::Struct.define do
  section_title         String, as: :section_title
  position              Integer
  items                 YouTubePost, array: true
end
YouTubeSectionChannelSchema =

Section channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
end
YouTubeSectionItemSchema =

Section item

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
  channel               YouTubeSectionChannel
  views                 Integer
  published_time        String, as: :published_time
  length                String
  thumbnail             String
end
YouTubeSectionSchema =

Section

DynamicSchema::Struct.define do
  section_title         String, as: :section_title
  position              Integer
  items                 YouTubeSectionItem, array: true
end
YouTubePeopleAlsoSearchForSchema =

People also search for

DynamicSchema::Struct.define do
  query                 String
  link                  String
  thumbnail             String
end
YouTubeAdChannelSchema =

Ad channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
end
YouTubeAdSchema =

Ad result

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  title                 String
  link                  String
  description           String
  website               String
  channel               YouTubeAdChannel
  length                String
  thumbnail             String
end
YouTubeFeaturedVideoChannelSchema =

Featured video channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  link                  String
end
YouTubeFeaturedVideoSchema =

Featured video

DynamicSchema::Struct.define do
  id                    String
  title                 String
  subtitle              String
  link                  String
  length                String
  channel               YouTubeFeaturedVideoChannel
  thumbnail             String
end
YouTubeHighlightedVideoSchema =

Highlighted video

DynamicSchema::Struct.define do
  id                    String
  title                 String
  subtitle              String
  link                  String
  length                String
end
YouTubeFeaturedChannelSchema =

Featured channel

DynamicSchema::Struct.define do
  id                    String
  title                 String
  subtitle              String
  link                  String
  highlighted_video     YouTubeHighlightedVideo, as: :highlighted_video
  videos                YouTubeFeaturedVideo, array: true
end
YouTubePaginationSchema =

Pagination

DynamicSchema::Struct.define do
  next_page_token       String, as: :next_page_token
end
YouTubeSearchResultSchema =

Main YouTube search result

DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     YouTubeSearchParameters, as: :search_parameters
  search_information    YouTubeSearchInformation, as: :search_information
  suggestions           String, array: true
  ads                   YouTubeAd, array: true
  channels              YouTubeChannel, array: true
  movies                YouTubeMovie, array: true
  videos                YouTubeVideo, array: true
  playlists             YouTubePlaylist, array: true
  sections              YouTubeSection, array: true
  shorts                YouTubeShorts, array: true
  posts                 YouTubePosts, array: true
  people_also_search_for YouTubePeopleAlsoSearchFor, array: true, as: :people_also_search_for
  featured_channel      YouTubeFeaturedChannel, as: :featured_channel
  pagination            YouTubePagination
  error                 String
end
GoogleNewsLightMetadataSchema =
DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleNewsLightParametersSchema =
DynamicSchema::Struct.define do
  engine                String
  q                     String
  location              String
  location_used         String, as: :location_used
  uule                  String
  google_domain         String, as: :google_domain
  gl                    String
  hl                    String
  time_period           String, as: :time_period
  sort_by               String, as: :sort_by
  nfpr                  Integer
  filter                Integer
  safe                  String
  page                  Integer
end
GoogleNewsLightSearchInformationSchema =
DynamicSchema::Struct.define do
  query_displayed       String, as: :query_displayed
  total_results         Integer, as: :total_results
  page                  Integer
  time_taken_displayed  Float, as: :time_taken_displayed
  detected_location     String, as: :detected_location
end
GoogleNewsLightArticleSchema =
DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  source                String
  date                  String
  snippet               String
  thumbnail             String
end
GoogleNewsLightTopStorySchema =
DynamicSchema::Struct.define do
  title                 String
  link                  String
  source                String
  date                  String
end
GoogleNewsLightResultSchema =
DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleNewsLightParameters, as: :search_parameters
  search_information    GoogleNewsLightSearchInformation, as: :search_information
  organic_results       GoogleNewsLightArticle, array: true, as: :organic_results
  top_stories           GoogleNewsLightTopStory, array: true, as: :top_stories
  error                 String
end
InstagramProfileMetadataSchema =

Instagram Search metadata

DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
end
InstagramProfileParametersSchema =

Instagram Search parameters

DynamicSchema::Struct.define do
  engine                String
  username              String
end
InstagramBioLinkSchema =

Bio link

DynamicSchema::Struct.define do
  title                 String
  url                   String
end
InstagramTaggedUserSchema =

Tagged user

DynamicSchema::Struct.define do
  username              String
  x                     Float
  y                     Float
end
InstagramCarouselItemSchema =

Carousel item

DynamicSchema::Struct.define do
  type                  String
  link                  String
  width                 Integer
  height                Integer
  thumbnail             String
end
InstagramPostSchema =

Post

DynamicSchema::Struct.define do
  position              Integer
  id                    String
  permalink             String
  type                  String
  link                  String
  width                 Integer
  height                Integer
  thumbnail             String
  caption               String
  likes                 Integer
  comments              Integer
  iso_date              String, as: :iso_date
  tagged_users          InstagramTaggedUser, array: true, as: :tagged_users
  carousel_items        InstagramCarouselItem, array: true, as: :carousel_items
end
InstagramProfileSchema =

Profile

DynamicSchema::Struct.define do
  username              String
  name                  String
  bio                   String
  avatar                String
  avatar_hd             String, as: :avatar_hd
  is_verified           [ TrueClass, FalseClass ], as: :is_verified
  is_business           [ TrueClass, FalseClass ], as: :is_business
  posts                 Integer
  followers             Integer
  following             Integer
  external_link         String, as: :external_link
  bio_links             InstagramBioLink, array: true, as: :bio_links
end
InstagramProfileResultSchema =

Main Instagram profile result

DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     InstagramProfileParameters, as: :search_parameters
  profile               InstagramProfile
  posts                 InstagramPost, array: true
  error                 String
end
GoogleNewsPortalMetadataSchema =
DynamicSchema::Struct.define do
  id                    String
  status                String
  created_at            String, as: :created_at
  request_time_taken    Float, as: :request_time_taken
  parsing_time_taken    Float, as: :parsing_time_taken
  total_time_taken      Float, as: :total_time_taken
  request_url           String, as: :request_url
  html_url              String, as: :html_url
  json_url              String, as: :json_url
end
GoogleNewsPortalParametersSchema =
DynamicSchema::Struct.define do
  engine                String
  q                     String
  ceid                  String
  story_token           String, as: :story_token
  topic_token           String, as: :topic_token
  publication_token     String, as: :publication_token
  section_token         String, as: :section_token
  sort_by               String, as: :sort_by
end
GoogleNewsPortalSourceSchema =
DynamicSchema::Struct.define do
  name                  String
  favicon               String
  authors               String, array: true
end
GoogleNewsPortalArticleSchema =
DynamicSchema::Struct.define do
  position              Integer
  title                 String
  link                  String
  thumbnail             String
  iso_date              String, as: :iso_date
  story_token           String, as: :story_token
  story_title           String, as: :story_title
  section               String
  source                GoogleNewsPortalSource
end
GoogleNewsPortalMenuTopicSchema =
DynamicSchema::Struct.define do
  title                 String
  topic_token           String, as: :topic_token
end
GoogleNewsPortalRelatedTopicSchema =
DynamicSchema::Struct.define do
  title                 String
  topic_token           String, as: :topic_token
  thumbnail             String
end
GoogleNewsPortalRelatedPublicationSchema =
DynamicSchema::Struct.define do
  name                  String
  publication_token     String, as: :publication_token
  thumbnail             String
end
GoogleNewsPortalSubMenuSectionSchema =
DynamicSchema::Struct.define do
  title                 String
  section_token         String, as: :section_token
end
GoogleNewsPortalPostOnXSchema =
DynamicSchema::Struct.define do
  link                  String
  snippet               String
  author                String
  author_link           String, as: :author_link
  author_thumbnail      String, as: :author_thumbnail
  date                  String
end
GoogleNewsPortalFAQSchema =
DynamicSchema::Struct.define do
  question              String
  answer                String
  link                  String
end
GoogleNewsPortalResultSchema =
DynamicSchema::Struct.define do
         , as: :search_metadata
  search_parameters     GoogleNewsPortalParameters, as: :search_parameters
  organic_results       GoogleNewsPortalArticle, array: true, as: :organic_results
  menu_topics           GoogleNewsPortalMenuTopic, array: true, as: :menu_topics
  related_topics        GoogleNewsPortalRelatedTopic, array: true, as: :related_topics
  related_publications  GoogleNewsPortalRelatedPublication, array: true, as: :related_publications
  sub_menu_sections     GoogleNewsPortalSubMenuSection, array: true, as: :sub_menu_sections
  posts_on_x            GoogleNewsPortalPostOnX, array: true, as: :posts_on_x
  frequently_asked_questions GoogleNewsPortalFAQ, array: true, as: :frequently_asked_questions
  error                 String
end

Method Summary

Methods included from ModuleMethods

api_key, connection, finance, flights, google, google_light, images, instagram, local, news, news_light, news_portal, scholar, tiktok, youtube