@keystrokehq/serpapi 0.0.16 → 0.1.2

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 (429) hide show
  1. package/README.md +14 -2
  2. package/dist/action.cjs +21 -0
  3. package/dist/action.cjs.map +1 -0
  4. package/dist/action.mjs +21 -0
  5. package/dist/action.mjs.map +1 -0
  6. package/dist/actions/baidu-search.cjs +41 -0
  7. package/dist/actions/baidu-search.cjs.map +1 -0
  8. package/dist/actions/baidu-search.d.cts +49 -0
  9. package/dist/actions/baidu-search.d.cts.map +1 -0
  10. package/dist/actions/baidu-search.d.mts +49 -0
  11. package/dist/actions/baidu-search.d.mts.map +1 -0
  12. package/dist/actions/baidu-search.mjs +38 -0
  13. package/dist/actions/baidu-search.mjs.map +1 -0
  14. package/dist/actions/bing-maps.cjs +135 -0
  15. package/dist/actions/bing-maps.cjs.map +1 -0
  16. package/dist/actions/bing-maps.d.cts +128 -0
  17. package/dist/actions/bing-maps.d.cts.map +1 -0
  18. package/dist/actions/bing-maps.d.mts +128 -0
  19. package/dist/actions/bing-maps.d.mts.map +1 -0
  20. package/dist/actions/bing-maps.mjs +134 -0
  21. package/dist/actions/bing-maps.mjs.map +1 -0
  22. package/dist/actions/bing-search.cjs +32 -0
  23. package/dist/actions/bing-search.cjs.map +1 -0
  24. package/dist/actions/bing-search.d.cts +34 -0
  25. package/dist/actions/bing-search.d.cts.map +1 -0
  26. package/dist/actions/bing-search.d.mts +34 -0
  27. package/dist/actions/bing-search.d.mts.map +1 -0
  28. package/dist/actions/bing-search.mjs +29 -0
  29. package/dist/actions/bing-search.mjs.map +1 -0
  30. package/dist/actions/duck-duck-go-light-search.cjs +72 -0
  31. package/dist/actions/duck-duck-go-light-search.cjs.map +1 -0
  32. package/dist/actions/duck-duck-go-light-search.d.cts +70 -0
  33. package/dist/actions/duck-duck-go-light-search.d.cts.map +1 -0
  34. package/dist/actions/duck-duck-go-light-search.d.mts +70 -0
  35. package/dist/actions/duck-duck-go-light-search.d.mts.map +1 -0
  36. package/dist/actions/duck-duck-go-light-search.mjs +71 -0
  37. package/dist/actions/duck-duck-go-light-search.mjs.map +1 -0
  38. package/dist/actions/duck-duck-go-maps.cjs +93 -0
  39. package/dist/actions/duck-duck-go-maps.cjs.map +1 -0
  40. package/dist/actions/duck-duck-go-maps.d.cts +84 -0
  41. package/dist/actions/duck-duck-go-maps.d.cts.map +1 -0
  42. package/dist/actions/duck-duck-go-maps.d.mts +84 -0
  43. package/dist/actions/duck-duck-go-maps.d.mts.map +1 -0
  44. package/dist/actions/duck-duck-go-maps.mjs +92 -0
  45. package/dist/actions/duck-duck-go-maps.mjs.map +1 -0
  46. package/dist/actions/duck-duck-go-search.cjs +116 -0
  47. package/dist/actions/duck-duck-go-search.cjs.map +1 -0
  48. package/dist/actions/duck-duck-go-search.d.cts +107 -0
  49. package/dist/actions/duck-duck-go-search.d.cts.map +1 -0
  50. package/dist/actions/duck-duck-go-search.d.mts +107 -0
  51. package/dist/actions/duck-duck-go-search.d.mts.map +1 -0
  52. package/dist/actions/duck-duck-go-search.mjs +115 -0
  53. package/dist/actions/duck-duck-go-search.mjs.map +1 -0
  54. package/dist/actions/ebay-search.cjs +108 -0
  55. package/dist/actions/ebay-search.cjs.map +1 -0
  56. package/dist/actions/ebay-search.d.cts +105 -0
  57. package/dist/actions/ebay-search.d.cts.map +1 -0
  58. package/dist/actions/ebay-search.d.mts +105 -0
  59. package/dist/actions/ebay-search.d.mts.map +1 -0
  60. package/dist/actions/ebay-search.mjs +107 -0
  61. package/dist/actions/ebay-search.mjs.map +1 -0
  62. package/dist/actions/event-search.cjs +83 -0
  63. package/dist/actions/event-search.cjs.map +1 -0
  64. package/dist/actions/event-search.d.cts +71 -0
  65. package/dist/actions/event-search.d.cts.map +1 -0
  66. package/dist/actions/event-search.d.mts +71 -0
  67. package/dist/actions/event-search.d.mts.map +1 -0
  68. package/dist/actions/event-search.mjs +82 -0
  69. package/dist/actions/event-search.mjs.map +1 -0
  70. package/dist/actions/finance-search.cjs +193 -0
  71. package/dist/actions/finance-search.cjs.map +1 -0
  72. package/dist/actions/finance-search.d.cts +254 -0
  73. package/dist/actions/finance-search.d.cts.map +1 -0
  74. package/dist/actions/finance-search.d.mts +254 -0
  75. package/dist/actions/finance-search.d.mts.map +1 -0
  76. package/dist/actions/finance-search.mjs +192 -0
  77. package/dist/actions/finance-search.mjs.map +1 -0
  78. package/dist/actions/get-available-location-options-for-google-searches.cjs +31 -0
  79. package/dist/actions/get-available-location-options-for-google-searches.cjs.map +1 -0
  80. package/dist/actions/get-available-location-options-for-google-searches.d.cts +28 -0
  81. package/dist/actions/get-available-location-options-for-google-searches.d.cts.map +1 -0
  82. package/dist/actions/get-available-location-options-for-google-searches.d.mts +28 -0
  83. package/dist/actions/get-available-location-options-for-google-searches.d.mts.map +1 -0
  84. package/dist/actions/get-available-location-options-for-google-searches.mjs +30 -0
  85. package/dist/actions/get-available-location-options-for-google-searches.mjs.map +1 -0
  86. package/dist/actions/get-facebook-profile.cjs +108 -0
  87. package/dist/actions/get-facebook-profile.cjs.map +1 -0
  88. package/dist/actions/get-facebook-profile.d.cts +94 -0
  89. package/dist/actions/get-facebook-profile.d.cts.map +1 -0
  90. package/dist/actions/get-facebook-profile.d.mts +94 -0
  91. package/dist/actions/get-facebook-profile.d.mts.map +1 -0
  92. package/dist/actions/get-facebook-profile.mjs +107 -0
  93. package/dist/actions/get-facebook-profile.mjs.map +1 -0
  94. package/dist/actions/get-google-about-this-result.cjs +115 -0
  95. package/dist/actions/get-google-about-this-result.cjs.map +1 -0
  96. package/dist/actions/get-google-about-this-result.d.cts +102 -0
  97. package/dist/actions/get-google-about-this-result.d.cts.map +1 -0
  98. package/dist/actions/get-google-about-this-result.d.mts +102 -0
  99. package/dist/actions/get-google-about-this-result.d.mts.map +1 -0
  100. package/dist/actions/get-google-about-this-result.mjs +114 -0
  101. package/dist/actions/get-google-about-this-result.mjs.map +1 -0
  102. package/dist/actions/get-google-hotels-autocomplete-suggestions.cjs +51 -0
  103. package/dist/actions/get-google-hotels-autocomplete-suggestions.cjs.map +1 -0
  104. package/dist/actions/get-google-hotels-autocomplete-suggestions.d.cts +48 -0
  105. package/dist/actions/get-google-hotels-autocomplete-suggestions.d.cts.map +1 -0
  106. package/dist/actions/get-google-hotels-autocomplete-suggestions.d.mts +48 -0
  107. package/dist/actions/get-google-hotels-autocomplete-suggestions.d.mts.map +1 -0
  108. package/dist/actions/get-google-hotels-autocomplete-suggestions.mjs +50 -0
  109. package/dist/actions/get-google-hotels-autocomplete-suggestions.mjs.map +1 -0
  110. package/dist/actions/get-google-images-related-content.cjs +64 -0
  111. package/dist/actions/get-google-images-related-content.cjs.map +1 -0
  112. package/dist/actions/get-google-images-related-content.d.cts +61 -0
  113. package/dist/actions/get-google-images-related-content.d.cts.map +1 -0
  114. package/dist/actions/get-google-images-related-content.d.mts +61 -0
  115. package/dist/actions/get-google-images-related-content.d.mts.map +1 -0
  116. package/dist/actions/get-google-images-related-content.mjs +63 -0
  117. package/dist/actions/get-google-images-related-content.mjs.map +1 -0
  118. package/dist/actions/get-google-patent-details.cjs +107 -0
  119. package/dist/actions/get-google-patent-details.cjs.map +1 -0
  120. package/dist/actions/get-google-patent-details.d.cts +100 -0
  121. package/dist/actions/get-google-patent-details.d.cts.map +1 -0
  122. package/dist/actions/get-google-patent-details.d.mts +100 -0
  123. package/dist/actions/get-google-patent-details.d.mts.map +1 -0
  124. package/dist/actions/get-google-patent-details.mjs +106 -0
  125. package/dist/actions/get-google-patent-details.mjs.map +1 -0
  126. package/dist/actions/get-search-archive.cjs +85 -0
  127. package/dist/actions/get-search-archive.cjs.map +1 -0
  128. package/dist/actions/get-search-archive.d.cts +73 -0
  129. package/dist/actions/get-search-archive.d.cts.map +1 -0
  130. package/dist/actions/get-search-archive.d.mts +73 -0
  131. package/dist/actions/get-search-archive.d.mts.map +1 -0
  132. package/dist/actions/get-search-archive.mjs +84 -0
  133. package/dist/actions/get-search-archive.mjs.map +1 -0
  134. package/dist/actions/google-domains-list.cjs +24 -0
  135. package/dist/actions/google-domains-list.cjs.map +1 -0
  136. package/dist/actions/google-domains-list.d.cts +18 -0
  137. package/dist/actions/google-domains-list.d.cts.map +1 -0
  138. package/dist/actions/google-domains-list.d.mts +18 -0
  139. package/dist/actions/google-domains-list.d.mts.map +1 -0
  140. package/dist/actions/google-domains-list.mjs +23 -0
  141. package/dist/actions/google-domains-list.mjs.map +1 -0
  142. package/dist/actions/google-forums-search.cjs +132 -0
  143. package/dist/actions/google-forums-search.cjs.map +1 -0
  144. package/dist/actions/google-forums-search.d.cts +129 -0
  145. package/dist/actions/google-forums-search.d.cts.map +1 -0
  146. package/dist/actions/google-forums-search.d.mts +129 -0
  147. package/dist/actions/google-forums-search.d.mts.map +1 -0
  148. package/dist/actions/google-forums-search.mjs +131 -0
  149. package/dist/actions/google-forums-search.mjs.map +1 -0
  150. package/dist/actions/google-jobs-search.cjs +107 -0
  151. package/dist/actions/google-jobs-search.cjs.map +1 -0
  152. package/dist/actions/google-jobs-search.d.cts +110 -0
  153. package/dist/actions/google-jobs-search.d.cts.map +1 -0
  154. package/dist/actions/google-jobs-search.d.mts +110 -0
  155. package/dist/actions/google-jobs-search.d.mts.map +1 -0
  156. package/dist/actions/google-jobs-search.mjs +106 -0
  157. package/dist/actions/google-jobs-search.mjs.map +1 -0
  158. package/dist/actions/google-lens-search.cjs +75 -0
  159. package/dist/actions/google-lens-search.cjs.map +1 -0
  160. package/dist/actions/google-lens-search.d.cts +69 -0
  161. package/dist/actions/google-lens-search.d.cts.map +1 -0
  162. package/dist/actions/google-lens-search.d.mts +69 -0
  163. package/dist/actions/google-lens-search.d.mts.map +1 -0
  164. package/dist/actions/google-lens-search.mjs +74 -0
  165. package/dist/actions/google-lens-search.mjs.map +1 -0
  166. package/dist/actions/google-light-search.cjs +92 -0
  167. package/dist/actions/google-light-search.cjs.map +1 -0
  168. package/dist/actions/google-light-search.d.cts +97 -0
  169. package/dist/actions/google-light-search.d.cts.map +1 -0
  170. package/dist/actions/google-light-search.d.mts +97 -0
  171. package/dist/actions/google-light-search.d.mts.map +1 -0
  172. package/dist/actions/google-light-search.mjs +91 -0
  173. package/dist/actions/google-light-search.mjs.map +1 -0
  174. package/dist/actions/google-maps-posts.cjs +62 -0
  175. package/dist/actions/google-maps-posts.cjs.map +1 -0
  176. package/dist/actions/google-maps-posts.d.cts +55 -0
  177. package/dist/actions/google-maps-posts.d.cts.map +1 -0
  178. package/dist/actions/google-maps-posts.d.mts +55 -0
  179. package/dist/actions/google-maps-posts.d.mts.map +1 -0
  180. package/dist/actions/google-maps-posts.mjs +61 -0
  181. package/dist/actions/google-maps-posts.mjs.map +1 -0
  182. package/dist/actions/google-maps-search.cjs +135 -0
  183. package/dist/actions/google-maps-search.cjs.map +1 -0
  184. package/dist/actions/google-maps-search.d.cts +128 -0
  185. package/dist/actions/google-maps-search.d.cts.map +1 -0
  186. package/dist/actions/google-maps-search.d.mts +128 -0
  187. package/dist/actions/google-maps-search.d.mts.map +1 -0
  188. package/dist/actions/google-maps-search.mjs +134 -0
  189. package/dist/actions/google-maps-search.mjs.map +1 -0
  190. package/dist/actions/google-play-product.cjs +184 -0
  191. package/dist/actions/google-play-product.cjs.map +1 -0
  192. package/dist/actions/google-play-product.d.cts +169 -0
  193. package/dist/actions/google-play-product.d.cts.map +1 -0
  194. package/dist/actions/google-play-product.d.mts +169 -0
  195. package/dist/actions/google-play-product.d.mts.map +1 -0
  196. package/dist/actions/google-play-product.mjs +183 -0
  197. package/dist/actions/google-play-product.mjs.map +1 -0
  198. package/dist/actions/google-scholar-author.cjs +90 -0
  199. package/dist/actions/google-scholar-author.cjs.map +1 -0
  200. package/dist/actions/google-scholar-author.d.cts +88 -0
  201. package/dist/actions/google-scholar-author.d.cts.map +1 -0
  202. package/dist/actions/google-scholar-author.d.mts +88 -0
  203. package/dist/actions/google-scholar-author.d.mts.map +1 -0
  204. package/dist/actions/google-scholar-author.mjs +89 -0
  205. package/dist/actions/google-scholar-author.mjs.map +1 -0
  206. package/dist/actions/google-scholar-cite.cjs +44 -0
  207. package/dist/actions/google-scholar-cite.cjs.map +1 -0
  208. package/dist/actions/google-scholar-cite.d.cts +38 -0
  209. package/dist/actions/google-scholar-cite.d.cts.map +1 -0
  210. package/dist/actions/google-scholar-cite.d.mts +38 -0
  211. package/dist/actions/google-scholar-cite.d.mts.map +1 -0
  212. package/dist/actions/google-scholar-cite.mjs +43 -0
  213. package/dist/actions/google-scholar-cite.mjs.map +1 -0
  214. package/dist/actions/google-videos-light.cjs +71 -0
  215. package/dist/actions/google-videos-light.cjs.map +1 -0
  216. package/dist/actions/google-videos-light.d.cts +85 -0
  217. package/dist/actions/google-videos-light.d.cts.map +1 -0
  218. package/dist/actions/google-videos-light.d.mts +85 -0
  219. package/dist/actions/google-videos-light.d.mts.map +1 -0
  220. package/dist/actions/google-videos-light.mjs +70 -0
  221. package/dist/actions/google-videos-light.mjs.map +1 -0
  222. package/dist/actions/hotel-search.cjs +50 -0
  223. package/dist/actions/hotel-search.cjs.map +1 -0
  224. package/dist/actions/hotel-search.d.cts +71 -0
  225. package/dist/actions/hotel-search.d.cts.map +1 -0
  226. package/dist/actions/hotel-search.d.mts +71 -0
  227. package/dist/actions/hotel-search.d.mts.map +1 -0
  228. package/dist/actions/hotel-search.mjs +47 -0
  229. package/dist/actions/hotel-search.mjs.map +1 -0
  230. package/dist/actions/image-search.cjs +19 -0
  231. package/dist/actions/image-search.cjs.map +1 -0
  232. package/dist/actions/image-search.d.cts +17 -0
  233. package/dist/actions/image-search.d.cts.map +1 -0
  234. package/dist/actions/image-search.d.mts +17 -0
  235. package/dist/actions/image-search.d.mts.map +1 -0
  236. package/dist/actions/image-search.mjs +16 -0
  237. package/dist/actions/image-search.mjs.map +1 -0
  238. package/dist/actions/index.cjs +97 -0
  239. package/dist/actions/index.d.cts +49 -0
  240. package/dist/actions/index.d.mts +49 -0
  241. package/dist/actions/index.mjs +49 -0
  242. package/dist/actions/naver-search.cjs +174 -0
  243. package/dist/actions/naver-search.cjs.map +1 -0
  244. package/dist/actions/naver-search.d.cts +164 -0
  245. package/dist/actions/naver-search.d.cts.map +1 -0
  246. package/dist/actions/naver-search.d.mts +164 -0
  247. package/dist/actions/naver-search.d.mts.map +1 -0
  248. package/dist/actions/naver-search.mjs +173 -0
  249. package/dist/actions/naver-search.mjs.map +1 -0
  250. package/dist/actions/news-search.cjs +20 -0
  251. package/dist/actions/news-search.cjs.map +1 -0
  252. package/dist/actions/news-search.d.cts +19 -0
  253. package/dist/actions/news-search.d.cts.map +1 -0
  254. package/dist/actions/news-search.d.mts +19 -0
  255. package/dist/actions/news-search.d.mts.map +1 -0
  256. package/dist/actions/news-search.mjs +17 -0
  257. package/dist/actions/news-search.mjs.map +1 -0
  258. package/dist/actions/open-table-reviews.cjs +118 -0
  259. package/dist/actions/open-table-reviews.cjs.map +1 -0
  260. package/dist/actions/open-table-reviews.d.cts +109 -0
  261. package/dist/actions/open-table-reviews.d.cts.map +1 -0
  262. package/dist/actions/open-table-reviews.d.mts +109 -0
  263. package/dist/actions/open-table-reviews.d.mts.map +1 -0
  264. package/dist/actions/open-table-reviews.mjs +117 -0
  265. package/dist/actions/open-table-reviews.mjs.map +1 -0
  266. package/dist/actions/play-search.cjs +37 -0
  267. package/dist/actions/play-search.cjs.map +1 -0
  268. package/dist/actions/play-search.d.cts +45 -0
  269. package/dist/actions/play-search.d.cts.map +1 -0
  270. package/dist/actions/play-search.d.mts +45 -0
  271. package/dist/actions/play-search.d.mts.map +1 -0
  272. package/dist/actions/play-search.mjs +34 -0
  273. package/dist/actions/play-search.mjs.map +1 -0
  274. package/dist/actions/scholar-search.cjs +20 -0
  275. package/dist/actions/scholar-search.cjs.map +1 -0
  276. package/dist/actions/scholar-search.d.cts +19 -0
  277. package/dist/actions/scholar-search.d.cts.map +1 -0
  278. package/dist/actions/scholar-search.d.mts +19 -0
  279. package/dist/actions/scholar-search.d.mts.map +1 -0
  280. package/dist/actions/scholar-search.mjs +17 -0
  281. package/dist/actions/scholar-search.mjs.map +1 -0
  282. package/dist/actions/search-apple-app-store.cjs +72 -0
  283. package/dist/actions/search-apple-app-store.cjs.map +1 -0
  284. package/dist/actions/search-apple-app-store.d.cts +69 -0
  285. package/dist/actions/search-apple-app-store.d.cts.map +1 -0
  286. package/dist/actions/search-apple-app-store.d.mts +69 -0
  287. package/dist/actions/search-apple-app-store.d.mts.map +1 -0
  288. package/dist/actions/search-apple-app-store.mjs +71 -0
  289. package/dist/actions/search-apple-app-store.mjs.map +1 -0
  290. package/dist/actions/search-google-images-light.cjs +81 -0
  291. package/dist/actions/search-google-images-light.cjs.map +1 -0
  292. package/dist/actions/search-google-images-light.d.cts +87 -0
  293. package/dist/actions/search-google-images-light.d.cts.map +1 -0
  294. package/dist/actions/search-google-images-light.d.mts +87 -0
  295. package/dist/actions/search-google-images-light.d.mts.map +1 -0
  296. package/dist/actions/search-google-images-light.mjs +80 -0
  297. package/dist/actions/search-google-images-light.mjs.map +1 -0
  298. package/dist/actions/search-google-local-services.cjs +59 -0
  299. package/dist/actions/search-google-local-services.cjs.map +1 -0
  300. package/dist/actions/search-google-local-services.d.cts +63 -0
  301. package/dist/actions/search-google-local-services.d.cts.map +1 -0
  302. package/dist/actions/search-google-local-services.d.mts +63 -0
  303. package/dist/actions/search-google-local-services.d.mts.map +1 -0
  304. package/dist/actions/search-google-local-services.mjs +58 -0
  305. package/dist/actions/search-google-local-services.mjs.map +1 -0
  306. package/dist/actions/search-yelp.cjs +47 -0
  307. package/dist/actions/search-yelp.cjs.map +1 -0
  308. package/dist/actions/search-yelp.d.cts +47 -0
  309. package/dist/actions/search-yelp.d.cts.map +1 -0
  310. package/dist/actions/search-yelp.d.mts +47 -0
  311. package/dist/actions/search-yelp.d.mts.map +1 -0
  312. package/dist/actions/search-yelp.mjs +46 -0
  313. package/dist/actions/search-yelp.mjs.map +1 -0
  314. package/dist/actions/search.cjs +22 -0
  315. package/dist/actions/search.cjs.map +1 -0
  316. package/dist/actions/search.d.cts +21 -0
  317. package/dist/actions/search.d.cts.map +1 -0
  318. package/dist/actions/search.d.mts +21 -0
  319. package/dist/actions/search.d.mts.map +1 -0
  320. package/dist/actions/search.mjs +21 -0
  321. package/dist/actions/search.mjs.map +1 -0
  322. package/dist/actions/shopping-search.cjs +20 -0
  323. package/dist/actions/shopping-search.cjs.map +1 -0
  324. package/dist/actions/shopping-search.d.cts +19 -0
  325. package/dist/actions/shopping-search.d.cts.map +1 -0
  326. package/dist/actions/shopping-search.d.mts +19 -0
  327. package/dist/actions/shopping-search.d.mts.map +1 -0
  328. package/dist/actions/shopping-search.mjs +17 -0
  329. package/dist/actions/shopping-search.mjs.map +1 -0
  330. package/dist/actions/trends-search.cjs +114 -0
  331. package/dist/actions/trends-search.cjs.map +1 -0
  332. package/dist/actions/trends-search.d.cts +112 -0
  333. package/dist/actions/trends-search.d.cts.map +1 -0
  334. package/dist/actions/trends-search.d.mts +112 -0
  335. package/dist/actions/trends-search.d.mts.map +1 -0
  336. package/dist/actions/trends-search.mjs +113 -0
  337. package/dist/actions/trends-search.mjs.map +1 -0
  338. package/dist/actions/walmart-product-reviews.cjs +105 -0
  339. package/dist/actions/walmart-product-reviews.cjs.map +1 -0
  340. package/dist/actions/walmart-product-reviews.d.cts +115 -0
  341. package/dist/actions/walmart-product-reviews.d.cts.map +1 -0
  342. package/dist/actions/walmart-product-reviews.d.mts +115 -0
  343. package/dist/actions/walmart-product-reviews.d.mts.map +1 -0
  344. package/dist/actions/walmart-product-reviews.mjs +104 -0
  345. package/dist/actions/walmart-product-reviews.mjs.map +1 -0
  346. package/dist/actions/walmart-search.cjs +32 -0
  347. package/dist/actions/walmart-search.cjs.map +1 -0
  348. package/dist/actions/walmart-search.d.cts +35 -0
  349. package/dist/actions/walmart-search.d.cts.map +1 -0
  350. package/dist/actions/walmart-search.d.mts +35 -0
  351. package/dist/actions/walmart-search.d.mts.map +1 -0
  352. package/dist/actions/walmart-search.mjs +29 -0
  353. package/dist/actions/walmart-search.mjs.map +1 -0
  354. package/dist/actions/yahoo-search.cjs +42 -0
  355. package/dist/actions/yahoo-search.cjs.map +1 -0
  356. package/dist/actions/yahoo-search.d.cts +50 -0
  357. package/dist/actions/yahoo-search.d.cts.map +1 -0
  358. package/dist/actions/yahoo-search.d.mts +50 -0
  359. package/dist/actions/yahoo-search.d.mts.map +1 -0
  360. package/dist/actions/yahoo-search.mjs +39 -0
  361. package/dist/actions/yahoo-search.mjs.map +1 -0
  362. package/dist/actions/yahoo-videos.cjs +94 -0
  363. package/dist/actions/yahoo-videos.cjs.map +1 -0
  364. package/dist/actions/yahoo-videos.d.cts +93 -0
  365. package/dist/actions/yahoo-videos.d.cts.map +1 -0
  366. package/dist/actions/yahoo-videos.d.mts +93 -0
  367. package/dist/actions/yahoo-videos.d.mts.map +1 -0
  368. package/dist/actions/yahoo-videos.mjs +93 -0
  369. package/dist/actions/yahoo-videos.mjs.map +1 -0
  370. package/dist/actions/yandex-images-search.cjs +97 -0
  371. package/dist/actions/yandex-images-search.cjs.map +1 -0
  372. package/dist/actions/yandex-images-search.d.cts +103 -0
  373. package/dist/actions/yandex-images-search.d.cts.map +1 -0
  374. package/dist/actions/yandex-images-search.d.mts +103 -0
  375. package/dist/actions/yandex-images-search.d.mts.map +1 -0
  376. package/dist/actions/yandex-images-search.mjs +96 -0
  377. package/dist/actions/yandex-images-search.mjs.map +1 -0
  378. package/dist/actions/yandex-search.cjs +30 -0
  379. package/dist/actions/yandex-search.cjs.map +1 -0
  380. package/dist/actions/yandex-search.d.cts +30 -0
  381. package/dist/actions/yandex-search.d.cts.map +1 -0
  382. package/dist/actions/yandex-search.d.mts +30 -0
  383. package/dist/actions/yandex-search.d.mts.map +1 -0
  384. package/dist/actions/yandex-search.mjs +27 -0
  385. package/dist/actions/yandex-search.mjs.map +1 -0
  386. package/dist/actions/you-tube-search.cjs +38 -0
  387. package/dist/actions/you-tube-search.cjs.map +1 -0
  388. package/dist/actions/you-tube-search.d.cts +40 -0
  389. package/dist/actions/you-tube-search.d.cts.map +1 -0
  390. package/dist/actions/you-tube-search.d.mts +40 -0
  391. package/dist/actions/you-tube-search.d.mts.map +1 -0
  392. package/dist/actions/you-tube-search.mjs +35 -0
  393. package/dist/actions/you-tube-search.mjs.map +1 -0
  394. package/dist/app.cjs +9 -0
  395. package/dist/app.cjs.map +1 -0
  396. package/dist/app.d.cts +5 -0
  397. package/dist/app.d.cts.map +1 -0
  398. package/dist/app.d.mts +5 -0
  399. package/dist/app.d.mts.map +1 -0
  400. package/dist/app.mjs +10 -0
  401. package/dist/app.mjs.map +1 -0
  402. package/dist/catalog.cjs +21 -0
  403. package/dist/catalog.cjs.map +1 -0
  404. package/dist/catalog.d.cts +22 -0
  405. package/dist/catalog.d.cts.map +1 -0
  406. package/dist/catalog.d.mts +22 -0
  407. package/dist/catalog.d.mts.map +1 -0
  408. package/dist/catalog.mjs +21 -0
  409. package/dist/catalog.mjs.map +1 -0
  410. package/dist/execute.cjs +18 -0
  411. package/dist/execute.cjs.map +1 -0
  412. package/dist/execute.mjs +18 -0
  413. package/dist/execute.mjs.map +1 -0
  414. package/dist/index.cjs +102 -0
  415. package/dist/index.d.cts +51 -0
  416. package/dist/index.d.mts +51 -3
  417. package/dist/index.mjs +52 -4
  418. package/package.json +31 -55
  419. package/LICENSE +0 -21
  420. package/dist/credential-sets/index.d.mts +0 -2
  421. package/dist/credential-sets/index.mjs +0 -3
  422. package/dist/operations/index.d.mts +0 -2
  423. package/dist/operations/index.mjs +0 -3
  424. package/dist/schemas/index.d.mts +0 -1
  425. package/dist/schemas/index.mjs +0 -1
  426. package/dist/serpapi.credential-set-5iG6pd3Y.d.mts +0 -14
  427. package/dist/serpapi.credential-set-CuEBudaA.mjs +0 -15
  428. package/dist/youtube-video-transcript.operation-BoQHn90s.mjs +0 -2763
  429. package/dist/youtube-video-transcript.operation-IqJOT2iH.d.mts +0 -1988
@@ -1,2763 +0,0 @@
1
- import { t as serpApiCredentialSet } from "./serpapi.credential-set-CuEBudaA.mjs";
2
- import { Operation } from "@keystrokehq/core";
3
- import { z } from "zod";
4
- import { getAccount, getJson, getJsonBySearchId, getLocations } from "serpapi";
5
-
6
- //#region src/utils/client.ts
7
- async function serpApiSearch(credentials, engine, params) {
8
- return await getJson({
9
- engine,
10
- api_key: credentials.SERPAPI_API_KEY,
11
- ...params
12
- });
13
- }
14
- async function serpApiGetAccount(credentials) {
15
- return await getAccount({ api_key: credentials.SERPAPI_API_KEY });
16
- }
17
- async function serpApiGetLocations(params = {}) {
18
- return await getLocations(params);
19
- }
20
-
21
- //#endregion
22
- //#region src/operations/account.operation.ts
23
- const serpApiAccountOperation = new Operation({
24
- id: "serpapi.account",
25
- name: "SerpApi Account",
26
- description: "Get SerpApi account information",
27
- credentialSets: [serpApiCredentialSet],
28
- input: z.object({}),
29
- output: z.object({
30
- account_id: z.string().optional(),
31
- account_email: z.string().optional(),
32
- plan_name: z.string().optional(),
33
- searches_per_month: z.number().optional(),
34
- total_searches_left: z.number().optional()
35
- }).passthrough(),
36
- run: async (_input, context) => {
37
- return await serpApiGetAccount(context.credentials.serpapi);
38
- }
39
- });
40
-
41
- //#endregion
42
- //#region src/operations/amazon-product.operation.ts
43
- const amazonProductOperation = new Operation({
44
- id: "serpapi.amazon-product",
45
- name: "Amazon Product",
46
- description: "Get Amazon product details via SerpApi",
47
- credentialSets: [serpApiCredentialSet],
48
- input: z.object({
49
- product_id: z.string(),
50
- amazon_domain: z.string().optional(),
51
- offers_page_token: z.string().optional()
52
- }),
53
- output: z.object({
54
- search_metadata: z.record(z.string(), z.unknown()).optional(),
55
- search_parameters: z.record(z.string(), z.unknown()).optional(),
56
- product_results: z.record(z.string(), z.unknown()).optional(),
57
- about_item: z.array(z.record(z.string(), z.unknown())).optional(),
58
- bought_together: z.array(z.record(z.string(), z.unknown())).optional(),
59
- compare_with_similar: z.array(z.record(z.string(), z.unknown())).optional(),
60
- product_description: z.string().optional(),
61
- product_details: z.record(z.string(), z.unknown()).optional()
62
- }).passthrough(),
63
- run: async (input, context) => {
64
- return await serpApiSearch(context.credentials.serpapi, "amazon_product", input);
65
- }
66
- });
67
-
68
- //#endregion
69
- //#region src/operations/amazon-search.operation.ts
70
- const amazonSearchOperation = new Operation({
71
- id: "serpapi.amazon-search",
72
- name: "Amazon Search",
73
- description: "Search Amazon via SerpApi",
74
- credentialSets: [serpApiCredentialSet],
75
- input: z.object({
76
- k: z.string(),
77
- amazon_domain: z.string().optional(),
78
- department_id: z.string().optional(),
79
- sort_by: z.string().optional(),
80
- price_low: z.number().optional(),
81
- price_high: z.number().optional(),
82
- page: z.number().optional(),
83
- star_rating: z.string().optional(),
84
- delivery: z.string().optional(),
85
- condition: z.string().optional(),
86
- brand: z.string().optional(),
87
- prime: z.boolean().optional()
88
- }),
89
- output: z.object({
90
- search_metadata: z.record(z.string(), z.unknown()).optional(),
91
- search_parameters: z.record(z.string(), z.unknown()).optional(),
92
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
93
- featured_products: z.array(z.record(z.string(), z.unknown())).optional(),
94
- product_ads: z.array(z.record(z.string(), z.unknown())).optional(),
95
- filters: z.array(z.record(z.string(), z.unknown())).optional(),
96
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
97
- }).passthrough(),
98
- run: async (input, context) => {
99
- return await serpApiSearch(context.credentials.serpapi, "amazon", input);
100
- }
101
- });
102
-
103
- //#endregion
104
- //#region src/operations/apple-app-store.operation.ts
105
- const appleAppStoreOperation = new Operation({
106
- id: "serpapi.apple-app-store",
107
- name: "Apple App Store Search",
108
- description: "Search the Apple App Store via SerpApi",
109
- credentialSets: [serpApiCredentialSet],
110
- input: z.object({
111
- term: z.string(),
112
- country: z.string().optional(),
113
- lang: z.string().optional(),
114
- num: z.number().optional(),
115
- page: z.number().optional()
116
- }),
117
- output: z.object({
118
- search_metadata: z.record(z.string(), z.unknown()).optional(),
119
- search_parameters: z.record(z.string(), z.unknown()).optional(),
120
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
121
- }).passthrough(),
122
- run: async (input, context) => {
123
- return await serpApiSearch(context.credentials.serpapi, "apple_app_store", input);
124
- }
125
- });
126
-
127
- //#endregion
128
- //#region src/operations/apple-product.operation.ts
129
- const appleProductOperation = new Operation({
130
- id: "serpapi.apple-product",
131
- name: "Apple Product",
132
- description: "Get Apple product details via SerpApi",
133
- credentialSets: [serpApiCredentialSet],
134
- input: z.object({
135
- product_id: z.string(),
136
- country: z.string().optional(),
137
- lang: z.string().optional()
138
- }),
139
- output: z.object({
140
- search_metadata: z.record(z.string(), z.unknown()).optional(),
141
- search_parameters: z.record(z.string(), z.unknown()).optional(),
142
- product: z.record(z.string(), z.unknown()).optional()
143
- }).passthrough(),
144
- run: async (input, context) => {
145
- return await serpApiSearch(context.credentials.serpapi, "apple_product", input);
146
- }
147
- });
148
-
149
- //#endregion
150
- //#region src/operations/apple-reviews.operation.ts
151
- const appleReviewsOperation = new Operation({
152
- id: "serpapi.apple-reviews",
153
- name: "Apple Reviews",
154
- description: "Get Apple product reviews via SerpApi",
155
- credentialSets: [serpApiCredentialSet],
156
- input: z.object({
157
- product_id: z.string(),
158
- country: z.string().optional(),
159
- lang: z.string().optional(),
160
- sort: z.string().optional(),
161
- page: z.number().optional()
162
- }),
163
- output: z.object({
164
- search_metadata: z.record(z.string(), z.unknown()).optional(),
165
- search_parameters: z.record(z.string(), z.unknown()).optional(),
166
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
167
- }).passthrough(),
168
- run: async (input, context) => {
169
- return await serpApiSearch(context.credentials.serpapi, "apple_reviews", input);
170
- }
171
- });
172
-
173
- //#endregion
174
- //#region src/operations/baidu-search.operation.ts
175
- const baiduSearchOperation = new Operation({
176
- id: "serpapi.baidu-search",
177
- name: "Baidu Search",
178
- description: "Search Baidu via SerpApi",
179
- credentialSets: [serpApiCredentialSet],
180
- input: z.object({
181
- q: z.string(),
182
- ct: z.string().optional(),
183
- rn: z.number().optional(),
184
- pn: z.number().optional()
185
- }),
186
- output: z.object({
187
- search_metadata: z.record(z.string(), z.unknown()).optional(),
188
- search_parameters: z.record(z.string(), z.unknown()).optional(),
189
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
190
- ads_results: z.array(z.record(z.string(), z.unknown())).optional(),
191
- answer_box: z.record(z.string(), z.unknown()).optional(),
192
- news_results: z.array(z.record(z.string(), z.unknown())).optional(),
193
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
194
- }).passthrough(),
195
- run: async (input, context) => {
196
- return await serpApiSearch(context.credentials.serpapi, "baidu", input);
197
- }
198
- });
199
-
200
- //#endregion
201
- //#region src/operations/bing-copilot.operation.ts
202
- const bingCopilotOperation = new Operation({
203
- id: "serpapi.bing-copilot",
204
- name: "Bing Copilot",
205
- description: "Search Bing Copilot via SerpApi",
206
- credentialSets: [serpApiCredentialSet],
207
- input: z.object({
208
- q: z.string(),
209
- cc: z.string().optional(),
210
- mkt: z.string().optional(),
211
- device: z.string().optional()
212
- }),
213
- output: z.object({
214
- search_metadata: z.record(z.string(), z.unknown()).optional(),
215
- search_parameters: z.record(z.string(), z.unknown()).optional(),
216
- copilot_response: z.record(z.string(), z.unknown()).optional()
217
- }).passthrough(),
218
- run: async (input, context) => {
219
- return await serpApiSearch(context.credentials.serpapi, "bing_copilot", input);
220
- }
221
- });
222
-
223
- //#endregion
224
- //#region src/operations/bing-images.operation.ts
225
- const bingImagesOperation = new Operation({
226
- id: "serpapi.bing-images",
227
- name: "Bing Images Search",
228
- description: "Search Bing Images via SerpApi",
229
- credentialSets: [serpApiCredentialSet],
230
- input: z.object({
231
- q: z.string(),
232
- cc: z.string().optional(),
233
- mkt: z.string().optional(),
234
- first: z.number().optional(),
235
- count: z.number().optional(),
236
- safeSearch: z.string().optional(),
237
- device: z.string().optional()
238
- }),
239
- output: z.object({
240
- search_metadata: z.record(z.string(), z.unknown()).optional(),
241
- search_parameters: z.record(z.string(), z.unknown()).optional(),
242
- images_results: z.array(z.record(z.string(), z.unknown())).optional()
243
- }).passthrough(),
244
- run: async (input, context) => {
245
- return await serpApiSearch(context.credentials.serpapi, "bing_images", input);
246
- }
247
- });
248
-
249
- //#endregion
250
- //#region src/operations/bing-maps.operation.ts
251
- const bingMapsOperation = new Operation({
252
- id: "serpapi.bing-maps",
253
- name: "Bing Maps Search",
254
- description: "Search Bing Maps via SerpApi",
255
- credentialSets: [serpApiCredentialSet],
256
- input: z.object({
257
- q: z.string(),
258
- cc: z.string().optional(),
259
- mkt: z.string().optional(),
260
- device: z.string().optional()
261
- }),
262
- output: z.object({
263
- search_metadata: z.record(z.string(), z.unknown()).optional(),
264
- search_parameters: z.record(z.string(), z.unknown()).optional(),
265
- local_results: z.array(z.record(z.string(), z.unknown())).optional()
266
- }).passthrough(),
267
- run: async (input, context) => {
268
- return await serpApiSearch(context.credentials.serpapi, "bing_maps", input);
269
- }
270
- });
271
-
272
- //#endregion
273
- //#region src/operations/bing-news.operation.ts
274
- const bingNewsOperation = new Operation({
275
- id: "serpapi.bing-news",
276
- name: "Bing News Search",
277
- description: "Search Bing News via SerpApi",
278
- credentialSets: [serpApiCredentialSet],
279
- input: z.object({
280
- q: z.string(),
281
- cc: z.string().optional(),
282
- mkt: z.string().optional(),
283
- first: z.number().optional(),
284
- count: z.number().optional(),
285
- freshness: z.string().optional(),
286
- device: z.string().optional()
287
- }),
288
- output: z.object({
289
- search_metadata: z.record(z.string(), z.unknown()).optional(),
290
- search_parameters: z.record(z.string(), z.unknown()).optional(),
291
- news_results: z.array(z.record(z.string(), z.unknown())).optional()
292
- }).passthrough(),
293
- run: async (input, context) => {
294
- return await serpApiSearch(context.credentials.serpapi, "bing_news", input);
295
- }
296
- });
297
-
298
- //#endregion
299
- //#region src/operations/bing-reverse-image.operation.ts
300
- const bingReverseImageOperation = new Operation({
301
- id: "serpapi.bing-reverse-image",
302
- name: "Bing Reverse Image Search",
303
- description: "Search Bing Reverse Image via SerpApi",
304
- credentialSets: [serpApiCredentialSet],
305
- input: z.object({
306
- image_url: z.string(),
307
- cc: z.string().optional(),
308
- mkt: z.string().optional()
309
- }),
310
- output: z.object({
311
- search_metadata: z.record(z.string(), z.unknown()).optional(),
312
- search_parameters: z.record(z.string(), z.unknown()).optional(),
313
- visual_matches: z.array(z.record(z.string(), z.unknown())).optional(),
314
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
315
- }).passthrough(),
316
- run: async (input, context) => {
317
- return await serpApiSearch(context.credentials.serpapi, "bing_reverse_image", input);
318
- }
319
- });
320
-
321
- //#endregion
322
- //#region src/operations/bing-search.operation.ts
323
- const bingSearchOperation = new Operation({
324
- id: "serpapi.bing-search",
325
- name: "Bing Search",
326
- description: "Search Bing via SerpApi",
327
- credentialSets: [serpApiCredentialSet],
328
- input: z.object({
329
- q: z.string(),
330
- location: z.string().optional(),
331
- cc: z.string().optional(),
332
- mkt: z.string().optional(),
333
- first: z.number().optional(),
334
- count: z.number().optional(),
335
- safeSearch: z.enum([
336
- "off",
337
- "moderate",
338
- "strict"
339
- ]).optional(),
340
- device: z.string().optional()
341
- }),
342
- output: z.object({
343
- search_metadata: z.record(z.string(), z.unknown()).optional(),
344
- search_parameters: z.record(z.string(), z.unknown()).optional(),
345
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
346
- ad_results: z.array(z.record(z.string(), z.unknown())).optional(),
347
- answer_box: z.record(z.string(), z.unknown()).optional(),
348
- knowledge_graph: z.record(z.string(), z.unknown()).optional(),
349
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
350
- }).passthrough(),
351
- run: async (input, context) => {
352
- return await serpApiSearch(context.credentials.serpapi, "bing", input);
353
- }
354
- });
355
-
356
- //#endregion
357
- //#region src/operations/bing-shopping.operation.ts
358
- const bingShoppingOperation = new Operation({
359
- id: "serpapi.bing-shopping",
360
- name: "Bing Shopping Search",
361
- description: "Search Bing Shopping via SerpApi",
362
- credentialSets: [serpApiCredentialSet],
363
- input: z.object({
364
- q: z.string(),
365
- cc: z.string().optional(),
366
- mkt: z.string().optional(),
367
- first: z.number().optional(),
368
- count: z.number().optional(),
369
- device: z.string().optional()
370
- }),
371
- output: z.object({
372
- search_metadata: z.record(z.string(), z.unknown()).optional(),
373
- search_parameters: z.record(z.string(), z.unknown()).optional(),
374
- shopping_results: z.array(z.record(z.string(), z.unknown())).optional()
375
- }).passthrough(),
376
- run: async (input, context) => {
377
- return await serpApiSearch(context.credentials.serpapi, "bing_shopping", input);
378
- }
379
- });
380
-
381
- //#endregion
382
- //#region src/operations/bing-videos.operation.ts
383
- const bingVideosOperation = new Operation({
384
- id: "serpapi.bing-videos",
385
- name: "Bing Videos Search",
386
- description: "Search Bing Videos via SerpApi",
387
- credentialSets: [serpApiCredentialSet],
388
- input: z.object({
389
- q: z.string(),
390
- cc: z.string().optional(),
391
- mkt: z.string().optional(),
392
- first: z.number().optional(),
393
- count: z.number().optional(),
394
- device: z.string().optional()
395
- }),
396
- output: z.object({
397
- search_metadata: z.record(z.string(), z.unknown()).optional(),
398
- search_parameters: z.record(z.string(), z.unknown()).optional(),
399
- video_results: z.array(z.record(z.string(), z.unknown())).optional()
400
- }).passthrough(),
401
- run: async (input, context) => {
402
- return await serpApiSearch(context.credentials.serpapi, "bing_videos", input);
403
- }
404
- });
405
-
406
- //#endregion
407
- //#region src/operations/brave-ai-mode.operation.ts
408
- const braveAiModeOperation = new Operation({
409
- id: "serpapi.brave-ai-mode",
410
- name: "Brave AI Mode",
411
- description: "Search Brave AI Mode via SerpApi",
412
- credentialSets: [serpApiCredentialSet],
413
- input: z.object({
414
- q: z.string(),
415
- device: z.string().optional()
416
- }),
417
- output: z.object({
418
- search_metadata: z.record(z.string(), z.unknown()).optional(),
419
- search_parameters: z.record(z.string(), z.unknown()).optional(),
420
- ai_response: z.record(z.string(), z.unknown()).optional()
421
- }).passthrough(),
422
- run: async (input, context) => {
423
- return await serpApiSearch(context.credentials.serpapi, "brave_ai_mode", input);
424
- }
425
- });
426
-
427
- //#endregion
428
- //#region src/operations/duckduckgo-light.operation.ts
429
- const duckduckgoLightOperation = new Operation({
430
- id: "serpapi.duckduckgo-light",
431
- name: "DuckDuckGo Light Search",
432
- description: "Search DuckDuckGo Light via SerpApi",
433
- credentialSets: [serpApiCredentialSet],
434
- input: z.object({
435
- q: z.string(),
436
- kl: z.string().optional(),
437
- safe: z.string().optional(),
438
- device: z.string().optional()
439
- }),
440
- output: z.object({
441
- search_metadata: z.record(z.string(), z.unknown()).optional(),
442
- search_parameters: z.record(z.string(), z.unknown()).optional(),
443
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
444
- }).passthrough(),
445
- run: async (input, context) => {
446
- return await serpApiSearch(context.credentials.serpapi, "duckduckgo_light", input);
447
- }
448
- });
449
-
450
- //#endregion
451
- //#region src/operations/duckduckgo-maps.operation.ts
452
- const duckduckgoMapsOperation = new Operation({
453
- id: "serpapi.duckduckgo-maps",
454
- name: "DuckDuckGo Maps Search",
455
- description: "Search DuckDuckGo Maps via SerpApi",
456
- credentialSets: [serpApiCredentialSet],
457
- input: z.object({
458
- q: z.string(),
459
- kl: z.string().optional()
460
- }),
461
- output: z.object({
462
- search_metadata: z.record(z.string(), z.unknown()).optional(),
463
- search_parameters: z.record(z.string(), z.unknown()).optional(),
464
- local_results: z.array(z.record(z.string(), z.unknown())).optional()
465
- }).passthrough(),
466
- run: async (input, context) => {
467
- return await serpApiSearch(context.credentials.serpapi, "duckduckgo_maps", input);
468
- }
469
- });
470
-
471
- //#endregion
472
- //#region src/operations/duckduckgo-news.operation.ts
473
- const duckduckgoNewsOperation = new Operation({
474
- id: "serpapi.duckduckgo-news",
475
- name: "DuckDuckGo News Search",
476
- description: "Search DuckDuckGo News via SerpApi",
477
- credentialSets: [serpApiCredentialSet],
478
- input: z.object({
479
- q: z.string(),
480
- kl: z.string().optional(),
481
- safe: z.string().optional(),
482
- device: z.string().optional()
483
- }),
484
- output: z.object({
485
- search_metadata: z.record(z.string(), z.unknown()).optional(),
486
- search_parameters: z.record(z.string(), z.unknown()).optional(),
487
- news_results: z.array(z.record(z.string(), z.unknown())).optional()
488
- }).passthrough(),
489
- run: async (input, context) => {
490
- return await serpApiSearch(context.credentials.serpapi, "duckduckgo_news", input);
491
- }
492
- });
493
-
494
- //#endregion
495
- //#region src/operations/duckduckgo-search.operation.ts
496
- const duckduckgoSearchOperation = new Operation({
497
- id: "serpapi.duckduckgo-search",
498
- name: "DuckDuckGo Search",
499
- description: "Search DuckDuckGo via SerpApi",
500
- credentialSets: [serpApiCredentialSet],
501
- input: z.object({
502
- q: z.string(),
503
- kl: z.string().optional(),
504
- safe: z.string().optional(),
505
- device: z.string().optional()
506
- }),
507
- output: z.object({
508
- search_metadata: z.record(z.string(), z.unknown()).optional(),
509
- search_parameters: z.record(z.string(), z.unknown()).optional(),
510
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
511
- ad_results: z.array(z.record(z.string(), z.unknown())).optional(),
512
- knowledge_graph: z.record(z.string(), z.unknown()).optional(),
513
- news_results: z.array(z.record(z.string(), z.unknown())).optional(),
514
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
515
- }).passthrough(),
516
- run: async (input, context) => {
517
- return await serpApiSearch(context.credentials.serpapi, "duckduckgo", input);
518
- }
519
- });
520
-
521
- //#endregion
522
- //#region src/operations/duckduckgo-search-assist.operation.ts
523
- const duckduckgoSearchAssistOperation = new Operation({
524
- id: "serpapi.duckduckgo-search-assist",
525
- name: "DuckDuckGo Search Assist",
526
- description: "Get DuckDuckGo search suggestions via SerpApi",
527
- credentialSets: [serpApiCredentialSet],
528
- input: z.object({
529
- q: z.string(),
530
- kl: z.string().optional()
531
- }),
532
- output: z.object({
533
- search_metadata: z.record(z.string(), z.unknown()).optional(),
534
- search_parameters: z.record(z.string(), z.unknown()).optional(),
535
- suggestions: z.array(z.record(z.string(), z.unknown())).optional()
536
- }).passthrough(),
537
- run: async (input, context) => {
538
- return await serpApiSearch(context.credentials.serpapi, "duckduckgo_search_assist", input);
539
- }
540
- });
541
-
542
- //#endregion
543
- //#region src/operations/ebay-product.operation.ts
544
- const ebayProductOperation = new Operation({
545
- id: "serpapi.ebay-product",
546
- name: "eBay Product",
547
- description: "Get eBay product details via SerpApi",
548
- credentialSets: [serpApiCredentialSet],
549
- input: z.object({
550
- product_id: z.string().optional(),
551
- epid: z.string().optional(),
552
- ebay_domain: z.string().optional()
553
- }).refine((data) => data.product_id || data.epid, { message: "At least one of product_id or epid is required" }),
554
- output: z.object({
555
- search_metadata: z.record(z.string(), z.unknown()).optional(),
556
- search_parameters: z.record(z.string(), z.unknown()).optional(),
557
- product: z.record(z.string(), z.unknown()).optional(),
558
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
559
- }).passthrough(),
560
- run: async (input, context) => {
561
- return await serpApiSearch(context.credentials.serpapi, "ebay_product", input);
562
- }
563
- });
564
-
565
- //#endregion
566
- //#region src/operations/ebay-search.operation.ts
567
- const ebaySearchOperation = new Operation({
568
- id: "serpapi.ebay-search",
569
- name: "eBay Search",
570
- description: "Search eBay via SerpApi",
571
- credentialSets: [serpApiCredentialSet],
572
- input: z.object({
573
- _nkw: z.string(),
574
- ebay_domain: z.string().optional(),
575
- _sacat: z.string().optional(),
576
- _udlo: z.number().optional(),
577
- _udhi: z.number().optional(),
578
- _sop: z.string().optional(),
579
- LH_BIN: z.string().optional(),
580
- LH_Auction: z.string().optional(),
581
- LH_ItemCondition: z.string().optional(),
582
- _pgn: z.number().optional()
583
- }),
584
- output: z.object({
585
- search_metadata: z.record(z.string(), z.unknown()).optional(),
586
- search_parameters: z.record(z.string(), z.unknown()).optional(),
587
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
588
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
589
- }).passthrough(),
590
- run: async (input, context) => {
591
- return await serpApiSearch(context.credentials.serpapi, "ebay", input);
592
- }
593
- });
594
-
595
- //#endregion
596
- //#region src/operations/facebook-profile.operation.ts
597
- const facebookProfileOperation = new Operation({
598
- id: "serpapi.facebook-profile",
599
- name: "Facebook Profile",
600
- description: "Get Facebook profile data via SerpApi",
601
- credentialSets: [serpApiCredentialSet],
602
- input: z.object({ page_id: z.string() }),
603
- output: z.object({
604
- search_metadata: z.record(z.string(), z.unknown()).optional(),
605
- search_parameters: z.record(z.string(), z.unknown()).optional(),
606
- profile: z.record(z.string(), z.unknown()).optional()
607
- }).passthrough(),
608
- run: async (input, context) => {
609
- return await serpApiSearch(context.credentials.serpapi, "facebook_profile", input);
610
- }
611
- });
612
-
613
- //#endregion
614
- //#region src/operations/google-ads-transparency.operation.ts
615
- const googleAdsTransparencyOperation = new Operation({
616
- id: "serpapi.google-ads-transparency",
617
- name: "Google Ads Transparency Center",
618
- description: "Search Google Ads Transparency Center via SerpApi",
619
- credentialSets: [serpApiCredentialSet],
620
- input: z.object({
621
- advertiser_id: z.string().optional(),
622
- domain: z.string().optional(),
623
- gl: z.string().optional(),
624
- hl: z.string().optional(),
625
- device: z.string().optional()
626
- }),
627
- output: z.object({
628
- search_metadata: z.record(z.string(), z.unknown()).optional(),
629
- search_parameters: z.record(z.string(), z.unknown()).optional(),
630
- ads: z.array(z.record(z.string(), z.unknown())).optional()
631
- }).passthrough(),
632
- run: async (input, context) => {
633
- return await serpApiSearch(context.credentials.serpapi, "google_ads_transparency_center", input);
634
- }
635
- });
636
-
637
- //#endregion
638
- //#region src/operations/google-ai-mode.operation.ts
639
- const googleAiModeOperation = new Operation({
640
- id: "serpapi.google-ai-mode",
641
- name: "Google AI Mode",
642
- description: "Search Google AI Mode via SerpApi",
643
- credentialSets: [serpApiCredentialSet],
644
- input: z.object({
645
- q: z.string(),
646
- gl: z.string().optional(),
647
- hl: z.string().optional(),
648
- device: z.string().optional()
649
- }),
650
- output: z.object({
651
- search_metadata: z.record(z.string(), z.unknown()).optional(),
652
- search_parameters: z.record(z.string(), z.unknown()).optional(),
653
- ai_response: z.record(z.string(), z.unknown()).optional()
654
- }).passthrough(),
655
- run: async (input, context) => {
656
- return await serpApiSearch(context.credentials.serpapi, "google_ai_mode", input);
657
- }
658
- });
659
-
660
- //#endregion
661
- //#region src/operations/google-ai-overview.operation.ts
662
- const googleAiOverviewOperation = new Operation({
663
- id: "serpapi.google-ai-overview",
664
- name: "Google AI Overview",
665
- description: "Search Google AI Overview via SerpApi",
666
- credentialSets: [serpApiCredentialSet],
667
- input: z.object({
668
- q: z.string(),
669
- gl: z.string().optional(),
670
- hl: z.string().optional(),
671
- device: z.string().optional()
672
- }),
673
- output: z.object({
674
- search_metadata: z.record(z.string(), z.unknown()).optional(),
675
- search_parameters: z.record(z.string(), z.unknown()).optional(),
676
- ai_overview: z.record(z.string(), z.unknown()).optional()
677
- }).passthrough(),
678
- run: async (input, context) => {
679
- return await serpApiSearch(context.credentials.serpapi, "google_ai_overview", input);
680
- }
681
- });
682
-
683
- //#endregion
684
- //#region src/operations/google-autocomplete.operation.ts
685
- const googleAutocompleteOperation = new Operation({
686
- id: "serpapi.google-autocomplete",
687
- name: "Google Autocomplete",
688
- description: "Search Google Autocomplete via SerpApi",
689
- credentialSets: [serpApiCredentialSet],
690
- input: z.object({
691
- q: z.string(),
692
- gl: z.string().optional(),
693
- hl: z.string().optional(),
694
- device: z.string().optional()
695
- }),
696
- output: z.object({
697
- search_metadata: z.record(z.string(), z.unknown()).optional(),
698
- search_parameters: z.record(z.string(), z.unknown()).optional(),
699
- suggestions: z.array(z.record(z.string(), z.unknown())).optional()
700
- }).passthrough(),
701
- run: async (input, context) => {
702
- return await serpApiSearch(context.credentials.serpapi, "google_autocomplete", input);
703
- }
704
- });
705
-
706
- //#endregion
707
- //#region src/operations/google-events.operation.ts
708
- const googleEventsOperation = new Operation({
709
- id: "serpapi.google-events",
710
- name: "Google Events Search",
711
- description: "Search Google Events via SerpApi",
712
- credentialSets: [serpApiCredentialSet],
713
- input: z.object({
714
- q: z.string(),
715
- location: z.string().optional(),
716
- gl: z.string().optional(),
717
- hl: z.string().optional(),
718
- device: z.string().optional()
719
- }),
720
- output: z.object({
721
- search_metadata: z.record(z.string(), z.unknown()).optional(),
722
- search_parameters: z.record(z.string(), z.unknown()).optional(),
723
- events_results: z.array(z.record(z.string(), z.unknown())).optional()
724
- }).passthrough(),
725
- run: async (input, context) => {
726
- return await serpApiSearch(context.credentials.serpapi, "google_events", input);
727
- }
728
- });
729
-
730
- //#endregion
731
- //#region src/operations/google-finance.operation.ts
732
- const googleFinanceOperation = new Operation({
733
- id: "serpapi.google-finance",
734
- name: "Google Finance Search",
735
- description: "Search Google Finance via SerpApi",
736
- credentialSets: [serpApiCredentialSet],
737
- input: z.object({
738
- q: z.string(),
739
- gl: z.string().optional(),
740
- hl: z.string().optional(),
741
- device: z.string().optional()
742
- }),
743
- output: z.object({
744
- search_metadata: z.record(z.string(), z.unknown()).optional(),
745
- search_parameters: z.record(z.string(), z.unknown()).optional(),
746
- summary: z.record(z.string(), z.unknown()).optional(),
747
- graph: z.array(z.record(z.string(), z.unknown())).optional(),
748
- financials: z.record(z.string(), z.unknown()).optional(),
749
- news_results: z.array(z.record(z.string(), z.unknown())).optional()
750
- }).passthrough(),
751
- run: async (input, context) => {
752
- return await serpApiSearch(context.credentials.serpapi, "google_finance", input);
753
- }
754
- });
755
-
756
- //#endregion
757
- //#region src/operations/google-finance-markets.operation.ts
758
- const googleFinanceMarketsOperation = new Operation({
759
- id: "serpapi.google-finance-markets",
760
- name: "Google Finance Markets",
761
- description: "Search Google Finance Markets via SerpApi",
762
- credentialSets: [serpApiCredentialSet],
763
- input: z.object({
764
- trend: z.enum([
765
- "indexes",
766
- "most-active",
767
- "gainers",
768
- "losers",
769
- "climate-leaders",
770
- "crypto",
771
- "currencies"
772
- ]).optional(),
773
- gl: z.string().optional(),
774
- hl: z.string().optional(),
775
- device: z.string().optional()
776
- }),
777
- output: z.object({
778
- search_metadata: z.record(z.string(), z.unknown()).optional(),
779
- search_parameters: z.record(z.string(), z.unknown()).optional(),
780
- market_trends: z.array(z.record(z.string(), z.unknown())).optional()
781
- }).passthrough(),
782
- run: async (input, context) => {
783
- return await serpApiSearch(context.credentials.serpapi, "google_finance_markets", input);
784
- }
785
- });
786
-
787
- //#endregion
788
- //#region src/operations/google-flights.operation.ts
789
- const googleFlightsOperation = new Operation({
790
- id: "serpapi.google-flights",
791
- name: "Google Flights Search",
792
- description: "Search Google Flights via SerpApi",
793
- credentialSets: [serpApiCredentialSet],
794
- input: z.object({
795
- departure_id: z.string(),
796
- arrival_id: z.string(),
797
- outbound_date: z.string(),
798
- return_date: z.string().optional(),
799
- type: z.number().optional(),
800
- travel_class: z.number().optional(),
801
- adults: z.number().optional(),
802
- children: z.number().optional(),
803
- infants_in_seat: z.number().optional(),
804
- infants_on_lap: z.number().optional(),
805
- stops: z.number().optional(),
806
- currency: z.string().optional(),
807
- hl: z.string().optional(),
808
- gl: z.string().optional(),
809
- bags: z.number().optional(),
810
- max_price: z.number().optional(),
811
- exclude_airlines: z.string().optional(),
812
- include_airlines: z.string().optional()
813
- }),
814
- output: z.object({
815
- search_metadata: z.record(z.string(), z.unknown()).optional(),
816
- search_parameters: z.record(z.string(), z.unknown()).optional(),
817
- best_flights: z.array(z.record(z.string(), z.unknown())).optional(),
818
- other_flights: z.array(z.record(z.string(), z.unknown())).optional(),
819
- airports: z.array(z.record(z.string(), z.unknown())).optional(),
820
- price_insights: z.record(z.string(), z.unknown()).optional()
821
- }).passthrough(),
822
- run: async (input, context) => {
823
- return await serpApiSearch(context.credentials.serpapi, "google_flights", input);
824
- }
825
- });
826
-
827
- //#endregion
828
- //#region src/operations/google-flights-autocomplete.operation.ts
829
- const googleFlightsAutocompleteOperation = new Operation({
830
- id: "serpapi.google-flights-autocomplete",
831
- name: "Google Flights Autocomplete",
832
- description: "Search Google Flights Autocomplete via SerpApi",
833
- credentialSets: [serpApiCredentialSet],
834
- input: z.object({
835
- q: z.string(),
836
- hl: z.string().optional(),
837
- gl: z.string().optional()
838
- }),
839
- output: z.object({
840
- search_metadata: z.record(z.string(), z.unknown()).optional(),
841
- search_parameters: z.record(z.string(), z.unknown()).optional(),
842
- airports: z.array(z.record(z.string(), z.unknown())).optional()
843
- }).passthrough(),
844
- run: async (input, context) => {
845
- return await serpApiSearch(context.credentials.serpapi, "google_flights_autocomplete", input);
846
- }
847
- });
848
-
849
- //#endregion
850
- //#region src/operations/google-forums.operation.ts
851
- const googleForumsOperation = new Operation({
852
- id: "serpapi.google-forums",
853
- name: "Google Forums Search",
854
- description: "Search Google Forums via SerpApi",
855
- credentialSets: [serpApiCredentialSet],
856
- input: z.object({
857
- q: z.string(),
858
- location: z.string().optional(),
859
- gl: z.string().optional(),
860
- hl: z.string().optional(),
861
- device: z.string().optional()
862
- }),
863
- output: z.object({
864
- search_metadata: z.record(z.string(), z.unknown()).optional(),
865
- search_parameters: z.record(z.string(), z.unknown()).optional(),
866
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
867
- }).passthrough(),
868
- run: async (input, context) => {
869
- return await serpApiSearch(context.credentials.serpapi, "google_forums", input);
870
- }
871
- });
872
-
873
- //#endregion
874
- //#region src/operations/google-hotels.operation.ts
875
- const googleHotelsOperation = new Operation({
876
- id: "serpapi.google-hotels",
877
- name: "Google Hotels Search",
878
- description: "Search Google Hotels via SerpApi",
879
- credentialSets: [serpApiCredentialSet],
880
- input: z.object({
881
- q: z.string(),
882
- check_in_date: z.string().optional(),
883
- check_out_date: z.string().optional(),
884
- adults: z.number().optional(),
885
- children: z.number().optional(),
886
- children_ages: z.string().optional(),
887
- currency: z.string().optional(),
888
- gl: z.string().optional(),
889
- hl: z.string().optional(),
890
- sort_by: z.number().optional(),
891
- min_price: z.number().optional(),
892
- max_price: z.number().optional(),
893
- rating: z.number().optional(),
894
- amenities: z.string().optional(),
895
- vacation_rentals: z.boolean().optional(),
896
- hotel_class: z.number().optional(),
897
- free_cancellation: z.boolean().optional(),
898
- property_token: z.string().optional(),
899
- device: z.string().optional()
900
- }),
901
- output: z.object({
902
- search_metadata: z.record(z.string(), z.unknown()).optional(),
903
- search_parameters: z.record(z.string(), z.unknown()).optional(),
904
- properties: z.array(z.record(z.string(), z.unknown())).optional(),
905
- ads: z.array(z.record(z.string(), z.unknown())).optional()
906
- }).passthrough(),
907
- run: async (input, context) => {
908
- return await serpApiSearch(context.credentials.serpapi, "google_hotels", input);
909
- }
910
- });
911
-
912
- //#endregion
913
- //#region src/operations/google-hotels-autocomplete.operation.ts
914
- const googleHotelsAutocompleteOperation = new Operation({
915
- id: "serpapi.google-hotels-autocomplete",
916
- name: "Google Hotels Autocomplete",
917
- description: "Search Google Hotels Autocomplete via SerpApi",
918
- credentialSets: [serpApiCredentialSet],
919
- input: z.object({
920
- q: z.string(),
921
- gl: z.string().optional(),
922
- hl: z.string().optional()
923
- }),
924
- output: z.object({
925
- search_metadata: z.record(z.string(), z.unknown()).optional(),
926
- search_parameters: z.record(z.string(), z.unknown()).optional(),
927
- suggestions: z.array(z.record(z.string(), z.unknown())).optional()
928
- }).passthrough(),
929
- run: async (input, context) => {
930
- return await serpApiSearch(context.credentials.serpapi, "google_hotels_autocomplete", input);
931
- }
932
- });
933
-
934
- //#endregion
935
- //#region src/operations/google-hotels-photos.operation.ts
936
- const googleHotelsPhotosOperation = new Operation({
937
- id: "serpapi.google-hotels-photos",
938
- name: "Google Hotels Photos",
939
- description: "Get Google Hotels photos via SerpApi",
940
- credentialSets: [serpApiCredentialSet],
941
- input: z.object({
942
- property_token: z.string(),
943
- gl: z.string().optional(),
944
- hl: z.string().optional()
945
- }),
946
- output: z.object({
947
- search_metadata: z.record(z.string(), z.unknown()).optional(),
948
- search_parameters: z.record(z.string(), z.unknown()).optional(),
949
- photos: z.array(z.record(z.string(), z.unknown())).optional()
950
- }).passthrough(),
951
- run: async (input, context) => {
952
- return await serpApiSearch(context.credentials.serpapi, "google_hotels_photos", input);
953
- }
954
- });
955
-
956
- //#endregion
957
- //#region src/operations/google-hotels-reviews.operation.ts
958
- const googleHotelsReviewsOperation = new Operation({
959
- id: "serpapi.google-hotels-reviews",
960
- name: "Google Hotels Reviews",
961
- description: "Get Google Hotels reviews via SerpApi",
962
- credentialSets: [serpApiCredentialSet],
963
- input: z.object({
964
- property_token: z.string(),
965
- gl: z.string().optional(),
966
- hl: z.string().optional(),
967
- sort_by: z.number().optional(),
968
- next_page_token: z.string().optional()
969
- }),
970
- output: z.object({
971
- search_metadata: z.record(z.string(), z.unknown()).optional(),
972
- search_parameters: z.record(z.string(), z.unknown()).optional(),
973
- reviews: z.array(z.record(z.string(), z.unknown())).optional(),
974
- rating_distribution: z.record(z.string(), z.unknown()).optional()
975
- }).passthrough(),
976
- run: async (input, context) => {
977
- return await serpApiSearch(context.credentials.serpapi, "google_hotels_reviews", input);
978
- }
979
- });
980
-
981
- //#endregion
982
- //#region src/operations/google-images.operation.ts
983
- const googleImagesOperation = new Operation({
984
- id: "serpapi.google-images",
985
- name: "Google Images Search",
986
- description: "Search Google Images via SerpApi",
987
- credentialSets: [serpApiCredentialSet],
988
- input: z.object({
989
- q: z.string(),
990
- location: z.string().optional(),
991
- gl: z.string().optional(),
992
- hl: z.string().optional(),
993
- tbs: z.string().optional(),
994
- chips: z.string().optional(),
995
- ijn: z.number().optional(),
996
- safe: z.string().optional(),
997
- device: z.string().optional()
998
- }),
999
- output: z.object({
1000
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1001
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1002
- images_results: z.array(z.record(z.string(), z.unknown())).optional(),
1003
- suggested_searches: z.array(z.record(z.string(), z.unknown())).optional(),
1004
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
1005
- }).passthrough(),
1006
- run: async (input, context) => {
1007
- return await serpApiSearch(context.credentials.serpapi, "google_images", input);
1008
- }
1009
- });
1010
-
1011
- //#endregion
1012
- //#region src/operations/google-images-light.operation.ts
1013
- const googleImagesLightOperation = new Operation({
1014
- id: "serpapi.google-images-light",
1015
- name: "Google Images Light Search",
1016
- description: "Search Google Images Light via SerpApi",
1017
- credentialSets: [serpApiCredentialSet],
1018
- input: z.object({
1019
- q: z.string(),
1020
- gl: z.string().optional(),
1021
- hl: z.string().optional(),
1022
- tbs: z.string().optional(),
1023
- ijn: z.number().optional(),
1024
- device: z.string().optional()
1025
- }),
1026
- output: z.object({
1027
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1028
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1029
- images_results: z.array(z.record(z.string(), z.unknown())).optional()
1030
- }).passthrough(),
1031
- run: async (input, context) => {
1032
- return await serpApiSearch(context.credentials.serpapi, "google_images_light", input);
1033
- }
1034
- });
1035
-
1036
- //#endregion
1037
- //#region src/operations/google-images-related.operation.ts
1038
- const googleImagesRelatedOperation = new Operation({
1039
- id: "serpapi.google-images-related",
1040
- name: "Google Images Related Content",
1041
- description: "Search Google Images Related Content via SerpApi",
1042
- credentialSets: [serpApiCredentialSet],
1043
- input: z.object({
1044
- q: z.string(),
1045
- gl: z.string().optional(),
1046
- hl: z.string().optional(),
1047
- device: z.string().optional()
1048
- }),
1049
- output: z.object({
1050
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1051
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1052
- related_content: z.array(z.record(z.string(), z.unknown())).optional()
1053
- }).passthrough(),
1054
- run: async (input, context) => {
1055
- return await serpApiSearch(context.credentials.serpapi, "google_images_related_content", input);
1056
- }
1057
- });
1058
-
1059
- //#endregion
1060
- //#region src/operations/google-immersive-product.operation.ts
1061
- const googleImmersiveProductOperation = new Operation({
1062
- id: "serpapi.google-immersive-product",
1063
- name: "Google Immersive Product",
1064
- description: "Get Google Immersive Product details via SerpApi",
1065
- credentialSets: [serpApiCredentialSet],
1066
- input: z.object({
1067
- page_token: z.string(),
1068
- gl: z.string().optional(),
1069
- hl: z.string().optional()
1070
- }),
1071
- output: z.object({
1072
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1073
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1074
- product_results: z.record(z.string(), z.unknown()).optional(),
1075
- sellers: z.array(z.record(z.string(), z.unknown())).optional()
1076
- }).passthrough(),
1077
- run: async (input, context) => {
1078
- return await serpApiSearch(context.credentials.serpapi, "google_immersive_product", input);
1079
- }
1080
- });
1081
-
1082
- //#endregion
1083
- //#region src/operations/google-jobs.operation.ts
1084
- const googleJobsOperation = new Operation({
1085
- id: "serpapi.google-jobs",
1086
- name: "Google Jobs Search",
1087
- description: "Search Google Jobs via SerpApi",
1088
- credentialSets: [serpApiCredentialSet],
1089
- input: z.object({
1090
- q: z.string(),
1091
- location: z.string().optional(),
1092
- gl: z.string().optional(),
1093
- hl: z.string().optional(),
1094
- chips: z.string().optional(),
1095
- ltype: z.string().optional(),
1096
- start: z.number().optional(),
1097
- device: z.string().optional()
1098
- }),
1099
- output: z.object({
1100
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1101
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1102
- jobs_results: z.array(z.record(z.string(), z.unknown())).optional(),
1103
- chips: z.array(z.record(z.string(), z.unknown())).optional()
1104
- }).passthrough(),
1105
- run: async (input, context) => {
1106
- return await serpApiSearch(context.credentials.serpapi, "google_jobs", input);
1107
- }
1108
- });
1109
-
1110
- //#endregion
1111
- //#region src/operations/google-jobs-listing.operation.ts
1112
- const googleJobsListingOperation = new Operation({
1113
- id: "serpapi.google-jobs-listing",
1114
- name: "Google Jobs Listing",
1115
- description: "Get Google Jobs listing details via SerpApi",
1116
- credentialSets: [serpApiCredentialSet],
1117
- input: z.object({
1118
- q: z.string(),
1119
- gl: z.string().optional(),
1120
- hl: z.string().optional()
1121
- }),
1122
- output: z.object({
1123
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1124
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1125
- job: z.record(z.string(), z.unknown()).optional()
1126
- }).passthrough(),
1127
- run: async (input, context) => {
1128
- return await serpApiSearch(context.credentials.serpapi, "google_jobs_listing", input);
1129
- }
1130
- });
1131
-
1132
- //#endregion
1133
- //#region src/operations/google-lens.operation.ts
1134
- const googleLensOperation = new Operation({
1135
- id: "serpapi.google-lens",
1136
- name: "Google Lens Search",
1137
- description: "Search Google Lens via SerpApi",
1138
- credentialSets: [serpApiCredentialSet],
1139
- input: z.object({
1140
- url: z.string(),
1141
- hl: z.string().optional(),
1142
- country: z.string().optional(),
1143
- device: z.string().optional()
1144
- }),
1145
- output: z.object({
1146
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1147
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1148
- visual_matches: z.array(z.record(z.string(), z.unknown())).optional(),
1149
- knowledge_graph: z.array(z.record(z.string(), z.unknown())).optional(),
1150
- text_results: z.array(z.record(z.string(), z.unknown())).optional(),
1151
- reverse_image_search: z.record(z.string(), z.unknown()).optional()
1152
- }).passthrough(),
1153
- run: async (input, context) => {
1154
- return await serpApiSearch(context.credentials.serpapi, "google_lens", input);
1155
- }
1156
- });
1157
-
1158
- //#endregion
1159
- //#region src/operations/google-light-search.operation.ts
1160
- const googleLightSearchOperation = new Operation({
1161
- id: "serpapi.google-light-search",
1162
- name: "Google Light Search",
1163
- description: "Search Google Light via SerpApi",
1164
- credentialSets: [serpApiCredentialSet],
1165
- input: z.object({
1166
- q: z.string(),
1167
- location: z.string().optional(),
1168
- gl: z.string().optional(),
1169
- hl: z.string().optional(),
1170
- tbs: z.string().optional(),
1171
- safe: z.string().optional(),
1172
- start: z.number().optional(),
1173
- num: z.number().optional(),
1174
- device: z.string().optional()
1175
- }),
1176
- output: z.object({
1177
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1178
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1179
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
1180
- answer_box: z.record(z.string(), z.unknown()).optional(),
1181
- knowledge_graph: z.record(z.string(), z.unknown()).optional(),
1182
- related_questions: z.array(z.record(z.string(), z.unknown())).optional(),
1183
- related_searches: z.array(z.record(z.string(), z.unknown())).optional(),
1184
- top_stories: z.array(z.record(z.string(), z.unknown())).optional(),
1185
- pagination: z.record(z.string(), z.unknown()).optional()
1186
- }).passthrough(),
1187
- run: async (input, context) => {
1188
- return await serpApiSearch(context.credentials.serpapi, "google_light", input);
1189
- }
1190
- });
1191
-
1192
- //#endregion
1193
- //#region src/operations/google-local.operation.ts
1194
- const googleLocalOperation = new Operation({
1195
- id: "serpapi.google-local",
1196
- name: "Google Local Search",
1197
- description: "Search Google Local via SerpApi",
1198
- credentialSets: [serpApiCredentialSet],
1199
- input: z.object({
1200
- q: z.string(),
1201
- location: z.string().optional(),
1202
- gl: z.string().optional(),
1203
- hl: z.string().optional(),
1204
- ludocid: z.string().optional(),
1205
- lsig: z.string().optional(),
1206
- device: z.string().optional()
1207
- }),
1208
- output: z.object({
1209
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1210
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1211
- local_results: z.array(z.record(z.string(), z.unknown())).optional(),
1212
- ad_results: z.array(z.record(z.string(), z.unknown())).optional()
1213
- }).passthrough(),
1214
- run: async (input, context) => {
1215
- return await serpApiSearch(context.credentials.serpapi, "google_local", input);
1216
- }
1217
- });
1218
-
1219
- //#endregion
1220
- //#region src/operations/google-local-services.operation.ts
1221
- const googleLocalServicesOperation = new Operation({
1222
- id: "serpapi.google-local-services",
1223
- name: "Google Local Services Search",
1224
- description: "Search Google Local Services via SerpApi",
1225
- credentialSets: [serpApiCredentialSet],
1226
- input: z.object({
1227
- q: z.string(),
1228
- place_id: z.string().optional(),
1229
- data_cid: z.string().optional(),
1230
- gl: z.string().optional(),
1231
- hl: z.string().optional(),
1232
- device: z.string().optional()
1233
- }),
1234
- output: z.object({
1235
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1236
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1237
- local_services_results: z.array(z.record(z.string(), z.unknown())).optional()
1238
- }).passthrough(),
1239
- run: async (input, context) => {
1240
- return await serpApiSearch(context.credentials.serpapi, "google_local_services", input);
1241
- }
1242
- });
1243
-
1244
- //#endregion
1245
- //#region src/operations/google-maps.operation.ts
1246
- const googleMapsOperation = new Operation({
1247
- id: "serpapi.google-maps",
1248
- name: "Google Maps Search",
1249
- description: "Search Google Maps via SerpApi",
1250
- credentialSets: [serpApiCredentialSet],
1251
- input: z.object({
1252
- q: z.string(),
1253
- ll: z.string().optional(),
1254
- type: z.string().optional(),
1255
- data: z.string().optional(),
1256
- start: z.number().optional(),
1257
- hl: z.string().optional(),
1258
- gl: z.string().optional(),
1259
- device: z.string().optional()
1260
- }),
1261
- output: z.object({
1262
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1263
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1264
- local_results: z.array(z.record(z.string(), z.unknown())).optional(),
1265
- place_results: z.record(z.string(), z.unknown()).optional()
1266
- }).passthrough(),
1267
- run: async (input, context) => {
1268
- return await serpApiSearch(context.credentials.serpapi, "google_maps", input);
1269
- }
1270
- });
1271
-
1272
- //#endregion
1273
- //#region src/operations/google-maps-autocomplete.operation.ts
1274
- const googleMapsAutocompleteOperation = new Operation({
1275
- id: "serpapi.google-maps-autocomplete",
1276
- name: "Google Maps Autocomplete",
1277
- description: "Search Google Maps Autocomplete via SerpApi",
1278
- credentialSets: [serpApiCredentialSet],
1279
- input: z.object({
1280
- q: z.string(),
1281
- ll: z.string().optional(),
1282
- hl: z.string().optional(),
1283
- gl: z.string().optional()
1284
- }),
1285
- output: z.object({
1286
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1287
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1288
- suggestions: z.array(z.record(z.string(), z.unknown())).optional()
1289
- }).passthrough(),
1290
- run: async (input, context) => {
1291
- return await serpApiSearch(context.credentials.serpapi, "google_maps_autocomplete", input);
1292
- }
1293
- });
1294
-
1295
- //#endregion
1296
- //#region src/operations/google-maps-contributor-reviews.operation.ts
1297
- const googleMapsContributorReviewsOperation = new Operation({
1298
- id: "serpapi.google-maps-contributor-reviews",
1299
- name: "Google Maps Contributor Reviews",
1300
- description: "Get Google Maps contributor reviews via SerpApi",
1301
- credentialSets: [serpApiCredentialSet],
1302
- input: z.object({
1303
- contributor_id: z.string(),
1304
- hl: z.string().optional(),
1305
- gl: z.string().optional(),
1306
- next_page_token: z.string().optional()
1307
- }),
1308
- output: z.object({
1309
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1310
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1311
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
1312
- }).passthrough(),
1313
- run: async (input, context) => {
1314
- return await serpApiSearch(context.credentials.serpapi, "google_maps_contributor_reviews", input);
1315
- }
1316
- });
1317
-
1318
- //#endregion
1319
- //#region src/operations/google-maps-directions.operation.ts
1320
- const googleMapsDirectionsOperation = new Operation({
1321
- id: "serpapi.google-maps-directions",
1322
- name: "Google Maps Directions",
1323
- description: "Get Google Maps directions via SerpApi",
1324
- credentialSets: [serpApiCredentialSet],
1325
- input: z.object({
1326
- start_addr: z.string(),
1327
- end_addr: z.string(),
1328
- travel_mode: z.enum([
1329
- "driving",
1330
- "walking",
1331
- "transit",
1332
- "cycling"
1333
- ]).optional(),
1334
- hl: z.string().optional(),
1335
- gl: z.string().optional()
1336
- }),
1337
- output: z.object({
1338
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1339
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1340
- directions: z.array(z.record(z.string(), z.unknown())).optional()
1341
- }).passthrough(),
1342
- run: async (input, context) => {
1343
- return await serpApiSearch(context.credentials.serpapi, "google_maps_directions", input);
1344
- }
1345
- });
1346
-
1347
- //#endregion
1348
- //#region src/operations/google-maps-photo-meta.operation.ts
1349
- const googleMapsPhotoMetaOperation = new Operation({
1350
- id: "serpapi.google-maps-photo-meta",
1351
- name: "Google Maps Photo Meta",
1352
- description: "Get Google Maps photo metadata via SerpApi",
1353
- credentialSets: [serpApiCredentialSet],
1354
- input: z.object({
1355
- data_id: z.string(),
1356
- hl: z.string().optional(),
1357
- gl: z.string().optional()
1358
- }),
1359
- output: z.object({
1360
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1361
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1362
- photos: z.array(z.record(z.string(), z.unknown())).optional()
1363
- }).passthrough(),
1364
- run: async (input, context) => {
1365
- return await serpApiSearch(context.credentials.serpapi, "google_maps_photo_meta", input);
1366
- }
1367
- });
1368
-
1369
- //#endregion
1370
- //#region src/operations/google-maps-photos.operation.ts
1371
- const googleMapsPhotosOperation = new Operation({
1372
- id: "serpapi.google-maps-photos",
1373
- name: "Google Maps Photos",
1374
- description: "Get Google Maps photos via SerpApi",
1375
- credentialSets: [serpApiCredentialSet],
1376
- input: z.object({
1377
- data_id: z.string(),
1378
- category_id: z.string().optional(),
1379
- hl: z.string().optional(),
1380
- gl: z.string().optional(),
1381
- next_page_token: z.string().optional()
1382
- }),
1383
- output: z.object({
1384
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1385
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1386
- photos: z.array(z.record(z.string(), z.unknown())).optional()
1387
- }).passthrough(),
1388
- run: async (input, context) => {
1389
- return await serpApiSearch(context.credentials.serpapi, "google_maps_photos", input);
1390
- }
1391
- });
1392
-
1393
- //#endregion
1394
- //#region src/operations/google-maps-posts.operation.ts
1395
- const googleMapsPostsOperation = new Operation({
1396
- id: "serpapi.google-maps-posts",
1397
- name: "Google Maps Posts",
1398
- description: "Get Google Maps posts via SerpApi",
1399
- credentialSets: [serpApiCredentialSet],
1400
- input: z.object({
1401
- data_id: z.string(),
1402
- hl: z.string().optional(),
1403
- gl: z.string().optional(),
1404
- next_page_token: z.string().optional()
1405
- }),
1406
- output: z.object({
1407
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1408
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1409
- posts: z.array(z.record(z.string(), z.unknown())).optional()
1410
- }).passthrough(),
1411
- run: async (input, context) => {
1412
- return await serpApiSearch(context.credentials.serpapi, "google_maps_posts", input);
1413
- }
1414
- });
1415
-
1416
- //#endregion
1417
- //#region src/operations/google-maps-reviews.operation.ts
1418
- const googleMapsReviewsOperation = new Operation({
1419
- id: "serpapi.google-maps-reviews",
1420
- name: "Google Maps Reviews",
1421
- description: "Get Google Maps reviews via SerpApi",
1422
- credentialSets: [serpApiCredentialSet],
1423
- input: z.object({
1424
- data_id: z.string(),
1425
- place_id: z.string().optional(),
1426
- hl: z.string().optional(),
1427
- sort_by: z.number().optional(),
1428
- topic_id: z.string().optional(),
1429
- next_page_token: z.string().optional()
1430
- }),
1431
- output: z.object({
1432
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1433
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1434
- reviews: z.array(z.record(z.string(), z.unknown())).optional(),
1435
- topics: z.array(z.record(z.string(), z.unknown())).optional(),
1436
- rating_distribution: z.record(z.string(), z.unknown()).optional()
1437
- }).passthrough(),
1438
- run: async (input, context) => {
1439
- return await serpApiSearch(context.credentials.serpapi, "google_maps_reviews", input);
1440
- }
1441
- });
1442
-
1443
- //#endregion
1444
- //#region src/operations/google-news.operation.ts
1445
- const googleNewsOperation = new Operation({
1446
- id: "serpapi.google-news",
1447
- name: "Google News Search",
1448
- description: "Search Google News via SerpApi",
1449
- credentialSets: [serpApiCredentialSet],
1450
- input: z.object({
1451
- q: z.string(),
1452
- gl: z.string().optional(),
1453
- hl: z.string().optional(),
1454
- topic_token: z.string().optional(),
1455
- device: z.string().optional()
1456
- }),
1457
- output: z.object({
1458
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1459
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1460
- news_results: z.array(z.record(z.string(), z.unknown())).optional()
1461
- }).passthrough(),
1462
- run: async (input, context) => {
1463
- return await serpApiSearch(context.credentials.serpapi, "google_news", input);
1464
- }
1465
- });
1466
-
1467
- //#endregion
1468
- //#region src/operations/google-news-light.operation.ts
1469
- const googleNewsLightOperation = new Operation({
1470
- id: "serpapi.google-news-light",
1471
- name: "Google News Light Search",
1472
- description: "Search Google News Light via SerpApi",
1473
- credentialSets: [serpApiCredentialSet],
1474
- input: z.object({
1475
- q: z.string(),
1476
- gl: z.string().optional(),
1477
- hl: z.string().optional(),
1478
- device: z.string().optional()
1479
- }),
1480
- output: z.object({
1481
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1482
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1483
- top_stories: z.array(z.record(z.string(), z.unknown())).optional()
1484
- }).passthrough(),
1485
- run: async (input, context) => {
1486
- return await serpApiSearch(context.credentials.serpapi, "google_news_light", input);
1487
- }
1488
- });
1489
-
1490
- //#endregion
1491
- //#region src/operations/google-patents.operation.ts
1492
- const googlePatentsOperation = new Operation({
1493
- id: "serpapi.google-patents",
1494
- name: "Google Patents Search",
1495
- description: "Search Google Patents via SerpApi",
1496
- credentialSets: [serpApiCredentialSet],
1497
- input: z.object({
1498
- q: z.string(),
1499
- page: z.number().optional(),
1500
- scholar: z.boolean().optional(),
1501
- before: z.string().optional(),
1502
- after: z.string().optional(),
1503
- inventor: z.string().optional(),
1504
- assignee: z.string().optional(),
1505
- country: z.string().optional(),
1506
- language: z.string().optional(),
1507
- status: z.string().optional(),
1508
- type: z.string().optional(),
1509
- litigation: z.boolean().optional()
1510
- }),
1511
- output: z.object({
1512
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1513
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1514
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
1515
- }).passthrough(),
1516
- run: async (input, context) => {
1517
- return await serpApiSearch(context.credentials.serpapi, "google_patents", input);
1518
- }
1519
- });
1520
-
1521
- //#endregion
1522
- //#region src/operations/google-patents-details.operation.ts
1523
- const googlePatentsDetailsOperation = new Operation({
1524
- id: "serpapi.google-patents-details",
1525
- name: "Google Patents Details",
1526
- description: "Get Google Patents details via SerpApi",
1527
- credentialSets: [serpApiCredentialSet],
1528
- input: z.object({ patent_id: z.string() }),
1529
- output: z.object({
1530
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1531
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1532
- patent: z.record(z.string(), z.unknown()).optional()
1533
- }).passthrough(),
1534
- run: async (input, context) => {
1535
- return await serpApiSearch(context.credentials.serpapi, "google_patents_details", input);
1536
- }
1537
- });
1538
-
1539
- //#endregion
1540
- //#region src/operations/google-play.operation.ts
1541
- const googlePlayOperation = new Operation({
1542
- id: "serpapi.google-play",
1543
- name: "Google Play Search",
1544
- description: "Search Google Play via SerpApi",
1545
- credentialSets: [serpApiCredentialSet],
1546
- input: z.object({
1547
- q: z.string(),
1548
- store: z.enum([
1549
- "apps",
1550
- "books",
1551
- "movies",
1552
- "games"
1553
- ]),
1554
- gl: z.string().optional(),
1555
- hl: z.string().optional(),
1556
- price: z.number().optional(),
1557
- age: z.string().optional(),
1558
- content_rating: z.string().optional(),
1559
- device: z.string().optional()
1560
- }),
1561
- output: z.object({
1562
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1563
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1564
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
1565
- }).passthrough(),
1566
- run: async (input, context) => {
1567
- return await serpApiSearch(context.credentials.serpapi, "google_play", input);
1568
- }
1569
- });
1570
-
1571
- //#endregion
1572
- //#region src/operations/google-play-books.operation.ts
1573
- const googlePlayBooksOperation = new Operation({
1574
- id: "serpapi.google-play-books",
1575
- name: "Google Play Books Search",
1576
- description: "Search Google Play Books via SerpApi",
1577
- credentialSets: [serpApiCredentialSet],
1578
- input: z.object({
1579
- q: z.string(),
1580
- gl: z.string().optional(),
1581
- hl: z.string().optional()
1582
- }),
1583
- output: z.object({
1584
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1585
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1586
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
1587
- }).passthrough(),
1588
- run: async (input, context) => {
1589
- return await serpApiSearch(context.credentials.serpapi, "google_play_books", input);
1590
- }
1591
- });
1592
-
1593
- //#endregion
1594
- //#region src/operations/google-play-games.operation.ts
1595
- const googlePlayGamesOperation = new Operation({
1596
- id: "serpapi.google-play-games",
1597
- name: "Google Play Games Search",
1598
- description: "Search Google Play Games via SerpApi",
1599
- credentialSets: [serpApiCredentialSet],
1600
- input: z.object({
1601
- q: z.string(),
1602
- gl: z.string().optional(),
1603
- hl: z.string().optional()
1604
- }),
1605
- output: z.object({
1606
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1607
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1608
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
1609
- }).passthrough(),
1610
- run: async (input, context) => {
1611
- return await serpApiSearch(context.credentials.serpapi, "google_play_games", input);
1612
- }
1613
- });
1614
-
1615
- //#endregion
1616
- //#region src/operations/google-play-movies.operation.ts
1617
- const googlePlayMoviesOperation = new Operation({
1618
- id: "serpapi.google-play-movies",
1619
- name: "Google Play Movies Search",
1620
- description: "Search Google Play Movies via SerpApi",
1621
- credentialSets: [serpApiCredentialSet],
1622
- input: z.object({
1623
- q: z.string(),
1624
- gl: z.string().optional(),
1625
- hl: z.string().optional()
1626
- }),
1627
- output: z.object({
1628
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1629
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1630
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
1631
- }).passthrough(),
1632
- run: async (input, context) => {
1633
- return await serpApiSearch(context.credentials.serpapi, "google_play_movies", input);
1634
- }
1635
- });
1636
-
1637
- //#endregion
1638
- //#region src/operations/google-play-product.operation.ts
1639
- const googlePlayProductOperation = new Operation({
1640
- id: "serpapi.google-play-product",
1641
- name: "Google Play Product",
1642
- description: "Get Google Play product details via SerpApi",
1643
- credentialSets: [serpApiCredentialSet],
1644
- input: z.object({
1645
- product_id: z.string(),
1646
- store: z.enum([
1647
- "apps",
1648
- "books",
1649
- "movies",
1650
- "games"
1651
- ]),
1652
- gl: z.string().optional(),
1653
- hl: z.string().optional()
1654
- }),
1655
- output: z.object({
1656
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1657
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1658
- product: z.record(z.string(), z.unknown()).optional()
1659
- }).passthrough(),
1660
- run: async (input, context) => {
1661
- return await serpApiSearch(context.credentials.serpapi, "google_play_product", input);
1662
- }
1663
- });
1664
-
1665
- //#endregion
1666
- //#region src/operations/google-related-questions.operation.ts
1667
- const googleRelatedQuestionsOperation = new Operation({
1668
- id: "serpapi.google-related-questions",
1669
- name: "Google Related Questions",
1670
- description: "Search Google Related Questions via SerpApi",
1671
- credentialSets: [serpApiCredentialSet],
1672
- input: z.object({
1673
- q: z.string(),
1674
- gl: z.string().optional(),
1675
- hl: z.string().optional(),
1676
- device: z.string().optional()
1677
- }),
1678
- output: z.object({
1679
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1680
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1681
- related_questions: z.array(z.record(z.string(), z.unknown())).optional()
1682
- }).passthrough(),
1683
- run: async (input, context) => {
1684
- return await serpApiSearch(context.credentials.serpapi, "google_related_questions", input);
1685
- }
1686
- });
1687
-
1688
- //#endregion
1689
- //#region src/operations/google-reverse-image.operation.ts
1690
- const googleReverseImageOperation = new Operation({
1691
- id: "serpapi.google-reverse-image",
1692
- name: "Google Reverse Image Search",
1693
- description: "Search Google Reverse Image via SerpApi",
1694
- credentialSets: [serpApiCredentialSet],
1695
- input: z.object({
1696
- image_url: z.string(),
1697
- gl: z.string().optional(),
1698
- hl: z.string().optional(),
1699
- device: z.string().optional()
1700
- }),
1701
- output: z.object({
1702
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1703
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1704
- image_results: z.array(z.record(z.string(), z.unknown())).optional(),
1705
- inline_images: z.array(z.record(z.string(), z.unknown())).optional()
1706
- }).passthrough(),
1707
- run: async (input, context) => {
1708
- return await serpApiSearch(context.credentials.serpapi, "google_reverse_image", input);
1709
- }
1710
- });
1711
-
1712
- //#endregion
1713
- //#region src/operations/google-scholar.operation.ts
1714
- const googleScholarOperation = new Operation({
1715
- id: "serpapi.google-scholar",
1716
- name: "Google Scholar Search",
1717
- description: "Search Google Scholar via SerpApi",
1718
- credentialSets: [serpApiCredentialSet],
1719
- input: z.object({
1720
- q: z.string(),
1721
- cites: z.string().optional(),
1722
- as_ylo: z.number().optional(),
1723
- as_yhi: z.number().optional(),
1724
- scisbd: z.number().optional(),
1725
- cluster: z.string().optional(),
1726
- hl: z.string().optional(),
1727
- lr: z.string().optional(),
1728
- start: z.number().optional(),
1729
- num: z.number().optional(),
1730
- as_sdt: z.string().optional(),
1731
- device: z.string().optional()
1732
- }),
1733
- output: z.object({
1734
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1735
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1736
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
1737
- cited_by: z.record(z.string(), z.unknown()).optional()
1738
- }).passthrough(),
1739
- run: async (input, context) => {
1740
- return await serpApiSearch(context.credentials.serpapi, "google_scholar", input);
1741
- }
1742
- });
1743
-
1744
- //#endregion
1745
- //#region src/operations/google-scholar-author.operation.ts
1746
- const googleScholarAuthorOperation = new Operation({
1747
- id: "serpapi.google-scholar-author",
1748
- name: "Google Scholar Author",
1749
- description: "Get Google Scholar author details via SerpApi",
1750
- credentialSets: [serpApiCredentialSet],
1751
- input: z.object({
1752
- author_id: z.string(),
1753
- hl: z.string().optional(),
1754
- start: z.number().optional(),
1755
- num: z.number().optional(),
1756
- sort: z.string().optional()
1757
- }),
1758
- output: z.object({
1759
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1760
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1761
- author: z.record(z.string(), z.unknown()).optional(),
1762
- articles: z.array(z.record(z.string(), z.unknown())).optional(),
1763
- cited_by: z.record(z.string(), z.unknown()).optional()
1764
- }).passthrough(),
1765
- run: async (input, context) => {
1766
- return await serpApiSearch(context.credentials.serpapi, "google_scholar_author", input);
1767
- }
1768
- });
1769
-
1770
- //#endregion
1771
- //#region src/operations/google-scholar-cite.operation.ts
1772
- const googleScholarCiteOperation = new Operation({
1773
- id: "serpapi.google-scholar-cite",
1774
- name: "Google Scholar Cite",
1775
- description: "Get Google Scholar citation details via SerpApi",
1776
- credentialSets: [serpApiCredentialSet],
1777
- input: z.object({
1778
- q: z.string(),
1779
- hl: z.string().optional()
1780
- }),
1781
- output: z.object({
1782
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1783
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1784
- citations: z.array(z.record(z.string(), z.unknown())).optional(),
1785
- links: z.array(z.record(z.string(), z.unknown())).optional()
1786
- }).passthrough(),
1787
- run: async (input, context) => {
1788
- return await serpApiSearch(context.credentials.serpapi, "google_scholar_cite", input);
1789
- }
1790
- });
1791
-
1792
- //#endregion
1793
- //#region src/operations/google-scholar-profiles.operation.ts
1794
- const googleScholarProfilesOperation = new Operation({
1795
- id: "serpapi.google-scholar-profiles",
1796
- name: "Google Scholar Profiles Search",
1797
- description: "Search Google Scholar Profiles via SerpApi",
1798
- credentialSets: [serpApiCredentialSet],
1799
- input: z.object({
1800
- mauthors: z.string(),
1801
- hl: z.string().optional(),
1802
- after_author: z.string().optional(),
1803
- before_author: z.string().optional()
1804
- }),
1805
- output: z.object({
1806
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1807
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1808
- profiles: z.array(z.record(z.string(), z.unknown())).optional()
1809
- }).passthrough(),
1810
- run: async (input, context) => {
1811
- return await serpApiSearch(context.credentials.serpapi, "google_scholar_profiles", input);
1812
- }
1813
- });
1814
-
1815
- //#endregion
1816
- //#region src/operations/google-search.operation.ts
1817
- const googleSearchOperation = new Operation({
1818
- id: "serpapi.google-search",
1819
- name: "Google Search",
1820
- description: "Search Google via SerpApi",
1821
- credentialSets: [serpApiCredentialSet],
1822
- input: z.object({
1823
- q: z.string(),
1824
- location: z.string().optional(),
1825
- uule: z.string().optional(),
1826
- google_domain: z.string().optional(),
1827
- gl: z.string().optional(),
1828
- hl: z.string().optional(),
1829
- lr: z.string().optional(),
1830
- cr: z.string().optional(),
1831
- tbs: z.string().optional(),
1832
- safe: z.string().optional(),
1833
- nfpr: z.number().optional(),
1834
- filter: z.number().optional(),
1835
- tbm: z.string().optional(),
1836
- start: z.number().optional(),
1837
- num: z.number().optional(),
1838
- device: z.string().optional()
1839
- }),
1840
- output: z.object({
1841
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1842
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1843
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
1844
- local_results: z.record(z.string(), z.unknown()).optional(),
1845
- local_map: z.record(z.string(), z.unknown()).optional(),
1846
- knowledge_graph: z.record(z.string(), z.unknown()).optional(),
1847
- answer_box: z.record(z.string(), z.unknown()).optional(),
1848
- ai_overview: z.record(z.string(), z.unknown()).optional(),
1849
- related_questions: z.array(z.record(z.string(), z.unknown())).optional(),
1850
- related_searches: z.array(z.record(z.string(), z.unknown())).optional(),
1851
- shopping_results: z.array(z.record(z.string(), z.unknown())).optional(),
1852
- news_results: z.array(z.record(z.string(), z.unknown())).optional(),
1853
- inline_videos: z.array(z.record(z.string(), z.unknown())).optional(),
1854
- inline_images: z.array(z.record(z.string(), z.unknown())).optional(),
1855
- ads: z.array(z.record(z.string(), z.unknown())).optional(),
1856
- pagination: z.record(z.string(), z.unknown()).optional()
1857
- }).passthrough(),
1858
- run: async (input, context) => {
1859
- return await serpApiSearch(context.credentials.serpapi, "google", input);
1860
- }
1861
- });
1862
-
1863
- //#endregion
1864
- //#region src/operations/google-shopping.operation.ts
1865
- const googleShoppingOperation = new Operation({
1866
- id: "serpapi.google-shopping",
1867
- name: "Google Shopping Search",
1868
- description: "Search Google Shopping via SerpApi",
1869
- credentialSets: [serpApiCredentialSet],
1870
- input: z.object({
1871
- q: z.string(),
1872
- location: z.string().optional(),
1873
- gl: z.string().optional(),
1874
- hl: z.string().optional(),
1875
- tbs: z.string().optional(),
1876
- start: z.number().optional(),
1877
- device: z.string().optional()
1878
- }),
1879
- output: z.object({
1880
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1881
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1882
- shopping_results: z.array(z.record(z.string(), z.unknown())).optional(),
1883
- filters_results: z.array(z.record(z.string(), z.unknown())).optional()
1884
- }).passthrough(),
1885
- run: async (input, context) => {
1886
- return await serpApiSearch(context.credentials.serpapi, "google_shopping", input);
1887
- }
1888
- });
1889
-
1890
- //#endregion
1891
- //#region src/operations/google-shopping-light.operation.ts
1892
- const googleShoppingLightOperation = new Operation({
1893
- id: "serpapi.google-shopping-light",
1894
- name: "Google Shopping Light Search",
1895
- description: "Search Google Shopping Light via SerpApi",
1896
- credentialSets: [serpApiCredentialSet],
1897
- input: z.object({
1898
- q: z.string(),
1899
- gl: z.string().optional(),
1900
- hl: z.string().optional(),
1901
- tbs: z.string().optional(),
1902
- device: z.string().optional()
1903
- }),
1904
- output: z.object({
1905
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1906
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1907
- shopping_results: z.array(z.record(z.string(), z.unknown())).optional()
1908
- }).passthrough(),
1909
- run: async (input, context) => {
1910
- return await serpApiSearch(context.credentials.serpapi, "google_shopping_light", input);
1911
- }
1912
- });
1913
-
1914
- //#endregion
1915
- //#region src/operations/google-short-videos.operation.ts
1916
- const googleShortVideosOperation = new Operation({
1917
- id: "serpapi.google-short-videos",
1918
- name: "Google Short Videos Search",
1919
- description: "Search Google Short Videos via SerpApi",
1920
- credentialSets: [serpApiCredentialSet],
1921
- input: z.object({
1922
- q: z.string(),
1923
- gl: z.string().optional(),
1924
- hl: z.string().optional(),
1925
- device: z.string().optional()
1926
- }),
1927
- output: z.object({
1928
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1929
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1930
- short_videos_results: z.array(z.record(z.string(), z.unknown())).optional()
1931
- }).passthrough(),
1932
- run: async (input, context) => {
1933
- return await serpApiSearch(context.credentials.serpapi, "google_short_videos", input);
1934
- }
1935
- });
1936
-
1937
- //#endregion
1938
- //#region src/operations/google-travel-explore.operation.ts
1939
- const googleTravelExploreOperation = new Operation({
1940
- id: "serpapi.google-travel-explore",
1941
- name: "Google Travel Explore",
1942
- description: "Explore Google Travel destinations via SerpApi",
1943
- credentialSets: [serpApiCredentialSet],
1944
- input: z.object({
1945
- departure_token: z.string().optional(),
1946
- gl: z.string().optional(),
1947
- hl: z.string().optional(),
1948
- currency: z.string().optional()
1949
- }),
1950
- output: z.object({
1951
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1952
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1953
- destinations: z.array(z.record(z.string(), z.unknown())).optional(),
1954
- flights: z.array(z.record(z.string(), z.unknown())).optional()
1955
- }).passthrough(),
1956
- run: async (input, context) => {
1957
- return await serpApiSearch(context.credentials.serpapi, "google_travel_explore", input);
1958
- }
1959
- });
1960
-
1961
- //#endregion
1962
- //#region src/operations/google-trends.operation.ts
1963
- const googleTrendsOperation = new Operation({
1964
- id: "serpapi.google-trends",
1965
- name: "Google Trends Search",
1966
- description: "Search Google Trends via SerpApi",
1967
- credentialSets: [serpApiCredentialSet],
1968
- input: z.object({
1969
- q: z.string(),
1970
- data_type: z.enum([
1971
- "TIMESERIES",
1972
- "GEO_MAP",
1973
- "GEO_MAP_0",
1974
- "RELATED_TOPICS",
1975
- "RELATED_QUERIES"
1976
- ]).optional(),
1977
- date: z.string().optional(),
1978
- tz: z.number().optional(),
1979
- geo: z.string().optional(),
1980
- gprop: z.string().optional(),
1981
- cat: z.number().optional()
1982
- }),
1983
- output: z.object({
1984
- search_metadata: z.record(z.string(), z.unknown()).optional(),
1985
- search_parameters: z.record(z.string(), z.unknown()).optional(),
1986
- interest_over_time: z.record(z.string(), z.unknown()).optional(),
1987
- compared_breakdown_by_region: z.array(z.record(z.string(), z.unknown())).optional(),
1988
- related_topics: z.record(z.string(), z.unknown()).optional(),
1989
- related_queries: z.record(z.string(), z.unknown()).optional()
1990
- }).passthrough(),
1991
- run: async (input, context) => {
1992
- return await serpApiSearch(context.credentials.serpapi, "google_trends", input);
1993
- }
1994
- });
1995
-
1996
- //#endregion
1997
- //#region src/operations/google-trends-autocomplete.operation.ts
1998
- const googleTrendsAutocompleteOperation = new Operation({
1999
- id: "serpapi.google-trends-autocomplete",
2000
- name: "Google Trends Autocomplete",
2001
- description: "Search Google Trends Autocomplete via SerpApi",
2002
- credentialSets: [serpApiCredentialSet],
2003
- input: z.object({
2004
- q: z.string(),
2005
- hl: z.string().optional()
2006
- }),
2007
- output: z.object({
2008
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2009
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2010
- suggestions: z.array(z.record(z.string(), z.unknown())).optional()
2011
- }).passthrough(),
2012
- run: async (input, context) => {
2013
- return await serpApiSearch(context.credentials.serpapi, "google_trends_autocomplete", input);
2014
- }
2015
- });
2016
-
2017
- //#endregion
2018
- //#region src/operations/google-trends-news.operation.ts
2019
- const googleTrendsNewsOperation = new Operation({
2020
- id: "serpapi.google-trends-news",
2021
- name: "Google Trends News",
2022
- description: "Get Google Trends news via SerpApi",
2023
- credentialSets: [serpApiCredentialSet],
2024
- input: z.object({
2025
- q: z.string(),
2026
- date: z.string().optional(),
2027
- geo: z.string().optional(),
2028
- hl: z.string().optional()
2029
- }),
2030
- output: z.object({
2031
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2032
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2033
- news_results: z.array(z.record(z.string(), z.unknown())).optional()
2034
- }).passthrough(),
2035
- run: async (input, context) => {
2036
- return await serpApiSearch(context.credentials.serpapi, "google_trends_news", input);
2037
- }
2038
- });
2039
-
2040
- //#endregion
2041
- //#region src/operations/google-trends-trending-now.operation.ts
2042
- const googleTrendsTrendingNowOperation = new Operation({
2043
- id: "serpapi.google-trends-trending-now",
2044
- name: "Google Trends Trending Now",
2045
- description: "Get Google Trends trending searches via SerpApi",
2046
- credentialSets: [serpApiCredentialSet],
2047
- input: z.object({
2048
- geo: z.string().optional(),
2049
- hl: z.string().optional(),
2050
- date: z.string().optional()
2051
- }),
2052
- output: z.object({
2053
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2054
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2055
- trending_searches: z.array(z.record(z.string(), z.unknown())).optional()
2056
- }).passthrough(),
2057
- run: async (input, context) => {
2058
- return await serpApiSearch(context.credentials.serpapi, "google_trends_trending_now", input);
2059
- }
2060
- });
2061
-
2062
- //#endregion
2063
- //#region src/operations/google-videos.operation.ts
2064
- const googleVideosOperation = new Operation({
2065
- id: "serpapi.google-videos",
2066
- name: "Google Videos Search",
2067
- description: "Search Google Videos via SerpApi",
2068
- credentialSets: [serpApiCredentialSet],
2069
- input: z.object({
2070
- q: z.string(),
2071
- location: z.string().optional(),
2072
- gl: z.string().optional(),
2073
- hl: z.string().optional(),
2074
- tbs: z.string().optional(),
2075
- device: z.string().optional()
2076
- }),
2077
- output: z.object({
2078
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2079
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2080
- video_results: z.array(z.record(z.string(), z.unknown())).optional()
2081
- }).passthrough(),
2082
- run: async (input, context) => {
2083
- return await serpApiSearch(context.credentials.serpapi, "google_videos", input);
2084
- }
2085
- });
2086
-
2087
- //#endregion
2088
- //#region src/operations/google-videos-light.operation.ts
2089
- const googleVideosLightOperation = new Operation({
2090
- id: "serpapi.google-videos-light",
2091
- name: "Google Videos Light Search",
2092
- description: "Search Google Videos Light via SerpApi",
2093
- credentialSets: [serpApiCredentialSet],
2094
- input: z.object({
2095
- q: z.string(),
2096
- gl: z.string().optional(),
2097
- hl: z.string().optional(),
2098
- device: z.string().optional()
2099
- }),
2100
- output: z.object({
2101
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2102
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2103
- video_results: z.array(z.record(z.string(), z.unknown())).optional()
2104
- }).passthrough(),
2105
- run: async (input, context) => {
2106
- return await serpApiSearch(context.credentials.serpapi, "google_videos_light", input);
2107
- }
2108
- });
2109
-
2110
- //#endregion
2111
- //#region src/operations/home-depot-product.operation.ts
2112
- const homeDepotProductOperation = new Operation({
2113
- id: "serpapi.home-depot-product",
2114
- name: "Home Depot Product",
2115
- description: "Get Home Depot product details via SerpApi",
2116
- credentialSets: [serpApiCredentialSet],
2117
- input: z.object({ product_id: z.string() }),
2118
- output: z.object({
2119
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2120
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2121
- product: z.record(z.string(), z.unknown()).optional()
2122
- }).passthrough(),
2123
- run: async (input, context) => {
2124
- return await serpApiSearch(context.credentials.serpapi, "home_depot_product", input);
2125
- }
2126
- });
2127
-
2128
- //#endregion
2129
- //#region src/operations/home-depot-product-reviews.operation.ts
2130
- const homeDepotProductReviewsOperation = new Operation({
2131
- id: "serpapi.home-depot-product-reviews",
2132
- name: "Home Depot Product Reviews",
2133
- description: "Get Home Depot product reviews via SerpApi",
2134
- credentialSets: [serpApiCredentialSet],
2135
- input: z.object({
2136
- product_id: z.string(),
2137
- sort_by: z.string().optional(),
2138
- page: z.number().optional()
2139
- }),
2140
- output: z.object({
2141
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2142
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2143
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
2144
- }).passthrough(),
2145
- run: async (input, context) => {
2146
- return await serpApiSearch(context.credentials.serpapi, "home_depot_product_reviews", input);
2147
- }
2148
- });
2149
-
2150
- //#endregion
2151
- //#region src/operations/home-depot-search.operation.ts
2152
- const homeDepotSearchOperation = new Operation({
2153
- id: "serpapi.home-depot-search",
2154
- name: "Home Depot Search",
2155
- description: "Search Home Depot via SerpApi",
2156
- credentialSets: [serpApiCredentialSet],
2157
- input: z.object({
2158
- q: z.string(),
2159
- nao: z.number().optional(),
2160
- ps: z.number().optional(),
2161
- lowerbound: z.number().optional(),
2162
- upperbound: z.number().optional(),
2163
- sortby: z.string().optional(),
2164
- sortorder: z.string().optional()
2165
- }),
2166
- output: z.object({
2167
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2168
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2169
- products: z.array(z.record(z.string(), z.unknown())).optional(),
2170
- filtering: z.record(z.string(), z.unknown()).optional()
2171
- }).passthrough(),
2172
- run: async (input, context) => {
2173
- return await serpApiSearch(context.credentials.serpapi, "home_depot", input);
2174
- }
2175
- });
2176
-
2177
- //#endregion
2178
- //#region src/operations/locations.operation.ts
2179
- const serpApiLocationsOperation = new Operation({
2180
- id: "serpapi.locations",
2181
- name: "SerpApi Locations",
2182
- description: "Get supported SerpApi locations",
2183
- credentialSets: [serpApiCredentialSet],
2184
- input: z.object({
2185
- q: z.string().optional(),
2186
- limit: z.number().optional()
2187
- }),
2188
- output: z.object({ locations: z.array(z.record(z.string(), z.unknown())) }).passthrough(),
2189
- run: async (input, _context) => {
2190
- return { locations: await serpApiGetLocations(input) };
2191
- }
2192
- });
2193
-
2194
- //#endregion
2195
- //#region src/operations/naver-ai-overview.operation.ts
2196
- const naverAiOverviewOperation = new Operation({
2197
- id: "serpapi.naver-ai-overview",
2198
- name: "Naver AI Overview",
2199
- description: "Get Naver AI Overview via SerpApi",
2200
- credentialSets: [serpApiCredentialSet],
2201
- input: z.object({ q: z.string() }),
2202
- output: z.object({
2203
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2204
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2205
- ai_overview: z.record(z.string(), z.unknown()).optional()
2206
- }).passthrough(),
2207
- run: async (input, context) => {
2208
- return await serpApiSearch(context.credentials.serpapi, "naver_ai_overview", input);
2209
- }
2210
- });
2211
-
2212
- //#endregion
2213
- //#region src/operations/naver-search.operation.ts
2214
- const naverSearchOperation = new Operation({
2215
- id: "serpapi.naver-search",
2216
- name: "Naver Search",
2217
- description: "Search Naver via SerpApi",
2218
- credentialSets: [serpApiCredentialSet],
2219
- input: z.object({
2220
- query: z.string(),
2221
- where: z.string().optional()
2222
- }),
2223
- output: z.object({
2224
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2225
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2226
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
2227
- ad_results: z.array(z.record(z.string(), z.unknown())).optional(),
2228
- ai_overview: z.record(z.string(), z.unknown()).optional(),
2229
- news_results: z.array(z.record(z.string(), z.unknown())).optional(),
2230
- shopping_results: z.array(z.record(z.string(), z.unknown())).optional(),
2231
- video_results: z.array(z.record(z.string(), z.unknown())).optional()
2232
- }).passthrough(),
2233
- run: async (input, context) => {
2234
- return await serpApiSearch(context.credentials.serpapi, "naver", input);
2235
- }
2236
- });
2237
-
2238
- //#endregion
2239
- //#region src/operations/opentable-reviews.operation.ts
2240
- const opentableReviewsOperation = new Operation({
2241
- id: "serpapi.opentable-reviews",
2242
- name: "OpenTable Reviews",
2243
- description: "Get OpenTable restaurant reviews via SerpApi",
2244
- credentialSets: [serpApiCredentialSet],
2245
- input: z.object({
2246
- restaurant_id: z.string(),
2247
- sort_by: z.string().optional(),
2248
- page: z.number().optional()
2249
- }),
2250
- output: z.object({
2251
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2252
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2253
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
2254
- }).passthrough(),
2255
- run: async (input, context) => {
2256
- return await serpApiSearch(context.credentials.serpapi, "open_table_reviews", input);
2257
- }
2258
- });
2259
-
2260
- //#endregion
2261
- //#region src/operations/search-archive.operation.ts
2262
- const serpApiSearchArchiveOperation = new Operation({
2263
- id: "serpapi.search-archive",
2264
- name: "SerpApi Search Archive",
2265
- description: "Retrieve archived SerpApi search results by ID",
2266
- credentialSets: [serpApiCredentialSet],
2267
- input: z.object({ search_id: z.string() }),
2268
- output: z.record(z.string(), z.unknown()),
2269
- run: async (input, context) => {
2270
- return await getJsonBySearchId(input.search_id, { api_key: context.credentials.serpapi.SERPAPI_API_KEY });
2271
- }
2272
- });
2273
-
2274
- //#endregion
2275
- //#region src/operations/search-index.operation.ts
2276
- const serpApiSearchIndexOperation = new Operation({
2277
- id: "serpapi.search-index",
2278
- name: "SerpApi Search Index",
2279
- description: "Search across SerpApi search index",
2280
- credentialSets: [serpApiCredentialSet],
2281
- input: z.object({ q: z.string() }),
2282
- output: z.object({
2283
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2284
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2285
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
2286
- }).passthrough(),
2287
- run: async (input, context) => {
2288
- return await serpApiSearch(context.credentials.serpapi, "search_index", input);
2289
- }
2290
- });
2291
-
2292
- //#endregion
2293
- //#region src/operations/tripadvisor-place.operation.ts
2294
- const tripadvisorPlaceOperation = new Operation({
2295
- id: "serpapi.tripadvisor-place",
2296
- name: "TripAdvisor Place",
2297
- description: "Get TripAdvisor place details via SerpApi",
2298
- credentialSets: [serpApiCredentialSet],
2299
- input: z.object({
2300
- place_id: z.string(),
2301
- domain: z.string().optional()
2302
- }),
2303
- output: z.object({
2304
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2305
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2306
- place: z.record(z.string(), z.unknown()).optional()
2307
- }).passthrough(),
2308
- run: async (input, context) => {
2309
- return await serpApiSearch(context.credentials.serpapi, "tripadvisor_place", input);
2310
- }
2311
- });
2312
-
2313
- //#endregion
2314
- //#region src/operations/tripadvisor-reviews.operation.ts
2315
- const tripadvisorReviewsOperation = new Operation({
2316
- id: "serpapi.tripadvisor-reviews",
2317
- name: "TripAdvisor Reviews",
2318
- description: "Get TripAdvisor place reviews via SerpApi",
2319
- credentialSets: [serpApiCredentialSet],
2320
- input: z.object({
2321
- place_id: z.string(),
2322
- domain: z.string().optional(),
2323
- sort_by: z.string().optional(),
2324
- page: z.number().optional()
2325
- }),
2326
- output: z.object({
2327
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2328
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2329
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
2330
- }).passthrough(),
2331
- run: async (input, context) => {
2332
- return await serpApiSearch(context.credentials.serpapi, "tripadvisor_reviews", input);
2333
- }
2334
- });
2335
-
2336
- //#endregion
2337
- //#region src/operations/tripadvisor-search.operation.ts
2338
- const tripadvisorSearchOperation = new Operation({
2339
- id: "serpapi.tripadvisor-search",
2340
- name: "TripAdvisor Search",
2341
- description: "Search TripAdvisor via SerpApi",
2342
- credentialSets: [serpApiCredentialSet],
2343
- input: z.object({
2344
- q: z.string(),
2345
- domain: z.string().optional(),
2346
- page: z.number().optional()
2347
- }),
2348
- output: z.object({
2349
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2350
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2351
- organic_results: z.array(z.record(z.string(), z.unknown())).optional()
2352
- }).passthrough(),
2353
- run: async (input, context) => {
2354
- return await serpApiSearch(context.credentials.serpapi, "tripadvisor", input);
2355
- }
2356
- });
2357
-
2358
- //#endregion
2359
- //#region src/operations/walmart-product.operation.ts
2360
- const walmartProductOperation = new Operation({
2361
- id: "serpapi.walmart-product",
2362
- name: "Walmart Product",
2363
- description: "Get Walmart product details via SerpApi",
2364
- credentialSets: [serpApiCredentialSet],
2365
- input: z.object({ product_id: z.string() }),
2366
- output: z.object({
2367
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2368
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2369
- product: z.record(z.string(), z.unknown()).optional()
2370
- }).passthrough(),
2371
- run: async (input, context) => {
2372
- return await serpApiSearch(context.credentials.serpapi, "walmart_product", input);
2373
- }
2374
- });
2375
-
2376
- //#endregion
2377
- //#region src/operations/walmart-product-reviews.operation.ts
2378
- const walmartProductReviewsOperation = new Operation({
2379
- id: "serpapi.walmart-product-reviews",
2380
- name: "Walmart Product Reviews",
2381
- description: "Get Walmart product reviews via SerpApi",
2382
- credentialSets: [serpApiCredentialSet],
2383
- input: z.object({
2384
- product_id: z.string(),
2385
- sort: z.string().optional(),
2386
- page: z.number().optional()
2387
- }),
2388
- output: z.object({
2389
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2390
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2391
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
2392
- }).passthrough(),
2393
- run: async (input, context) => {
2394
- return await serpApiSearch(context.credentials.serpapi, "walmart_product_reviews", input);
2395
- }
2396
- });
2397
-
2398
- //#endregion
2399
- //#region src/operations/walmart-product-sellers.operation.ts
2400
- const walmartProductSellersOperation = new Operation({
2401
- id: "serpapi.walmart-product-sellers",
2402
- name: "Walmart Product Sellers",
2403
- description: "Get Walmart product sellers via SerpApi",
2404
- credentialSets: [serpApiCredentialSet],
2405
- input: z.object({
2406
- product_id: z.string(),
2407
- page: z.number().optional()
2408
- }),
2409
- output: z.object({
2410
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2411
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2412
- sellers: z.array(z.record(z.string(), z.unknown())).optional()
2413
- }).passthrough(),
2414
- run: async (input, context) => {
2415
- return await serpApiSearch(context.credentials.serpapi, "walmart_product_sellers", input);
2416
- }
2417
- });
2418
-
2419
- //#endregion
2420
- //#region src/operations/walmart-search.operation.ts
2421
- const walmartSearchOperation = new Operation({
2422
- id: "serpapi.walmart-search",
2423
- name: "Walmart Search",
2424
- description: "Search Walmart via SerpApi",
2425
- credentialSets: [serpApiCredentialSet],
2426
- input: z.object({
2427
- query: z.string(),
2428
- cat_id: z.string().optional(),
2429
- sort: z.string().optional(),
2430
- soft_sort: z.string().optional(),
2431
- facet: z.string().optional(),
2432
- store_id: z.string().optional(),
2433
- min_price: z.number().optional(),
2434
- max_price: z.number().optional(),
2435
- spelling: z.boolean().optional(),
2436
- page: z.number().optional(),
2437
- include_filters: z.boolean().optional()
2438
- }),
2439
- output: z.object({
2440
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2441
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2442
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
2443
- filters: z.array(z.record(z.string(), z.unknown())).optional(),
2444
- related_queries: z.array(z.record(z.string(), z.unknown())).optional()
2445
- }).passthrough(),
2446
- run: async (input, context) => {
2447
- return await serpApiSearch(context.credentials.serpapi, "walmart", input);
2448
- }
2449
- });
2450
-
2451
- //#endregion
2452
- //#region src/operations/yahoo-images.operation.ts
2453
- const yahooImagesOperation = new Operation({
2454
- id: "serpapi.yahoo-images",
2455
- name: "Yahoo Images Search",
2456
- description: "Search Yahoo Images via SerpApi",
2457
- credentialSets: [serpApiCredentialSet],
2458
- input: z.object({
2459
- p: z.string(),
2460
- yahoo_domain: z.string().optional(),
2461
- vl: z.string().optional(),
2462
- vc: z.string().optional()
2463
- }),
2464
- output: z.object({
2465
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2466
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2467
- images_results: z.array(z.record(z.string(), z.unknown())).optional()
2468
- }).passthrough(),
2469
- run: async (input, context) => {
2470
- return await serpApiSearch(context.credentials.serpapi, "yahoo_images", input);
2471
- }
2472
- });
2473
-
2474
- //#endregion
2475
- //#region src/operations/yahoo-search.operation.ts
2476
- const yahooSearchOperation = new Operation({
2477
- id: "serpapi.yahoo-search",
2478
- name: "Yahoo Search",
2479
- description: "Search Yahoo via SerpApi",
2480
- credentialSets: [serpApiCredentialSet],
2481
- input: z.object({
2482
- p: z.string(),
2483
- yahoo_domain: z.string().optional(),
2484
- vl: z.string().optional(),
2485
- vc: z.string().optional(),
2486
- vs: z.string().optional(),
2487
- b: z.number().optional(),
2488
- p_ext: z.string().optional()
2489
- }),
2490
- output: z.object({
2491
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2492
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2493
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
2494
- ad_results: z.array(z.record(z.string(), z.unknown())).optional(),
2495
- answer_box: z.record(z.string(), z.unknown()).optional(),
2496
- knowledge_graph: z.record(z.string(), z.unknown()).optional(),
2497
- related_searches: z.array(z.record(z.string(), z.unknown())).optional()
2498
- }).passthrough(),
2499
- run: async (input, context) => {
2500
- return await serpApiSearch(context.credentials.serpapi, "yahoo", input);
2501
- }
2502
- });
2503
-
2504
- //#endregion
2505
- //#region src/operations/yahoo-shopping.operation.ts
2506
- const yahooShoppingOperation = new Operation({
2507
- id: "serpapi.yahoo-shopping",
2508
- name: "Yahoo Shopping Search",
2509
- description: "Search Yahoo Shopping via SerpApi",
2510
- credentialSets: [serpApiCredentialSet],
2511
- input: z.object({
2512
- p: z.string(),
2513
- yahoo_domain: z.string().optional(),
2514
- vl: z.string().optional(),
2515
- vc: z.string().optional()
2516
- }),
2517
- output: z.object({
2518
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2519
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2520
- shopping_results: z.array(z.record(z.string(), z.unknown())).optional()
2521
- }).passthrough(),
2522
- run: async (input, context) => {
2523
- return await serpApiSearch(context.credentials.serpapi, "yahoo_shopping", input);
2524
- }
2525
- });
2526
-
2527
- //#endregion
2528
- //#region src/operations/yahoo-videos.operation.ts
2529
- const yahooVideosOperation = new Operation({
2530
- id: "serpapi.yahoo-videos",
2531
- name: "Yahoo Videos Search",
2532
- description: "Search Yahoo Videos via SerpApi",
2533
- credentialSets: [serpApiCredentialSet],
2534
- input: z.object({
2535
- p: z.string(),
2536
- yahoo_domain: z.string().optional(),
2537
- vl: z.string().optional(),
2538
- vc: z.string().optional()
2539
- }),
2540
- output: z.object({
2541
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2542
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2543
- video_results: z.array(z.record(z.string(), z.unknown())).optional()
2544
- }).passthrough(),
2545
- run: async (input, context) => {
2546
- return await serpApiSearch(context.credentials.serpapi, "yahoo_videos", input);
2547
- }
2548
- });
2549
-
2550
- //#endregion
2551
- //#region src/operations/yandex-images.operation.ts
2552
- const yandexImagesOperation = new Operation({
2553
- id: "serpapi.yandex-images",
2554
- name: "Yandex Images Search",
2555
- description: "Search Yandex Images via SerpApi",
2556
- credentialSets: [serpApiCredentialSet],
2557
- input: z.object({
2558
- text: z.string(),
2559
- yandex_domain: z.string().optional(),
2560
- lr: z.string().optional(),
2561
- lang: z.string().optional(),
2562
- p: z.number().optional()
2563
- }),
2564
- output: z.object({
2565
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2566
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2567
- images_results: z.array(z.record(z.string(), z.unknown())).optional()
2568
- }).passthrough(),
2569
- run: async (input, context) => {
2570
- return await serpApiSearch(context.credentials.serpapi, "yandex_images", input);
2571
- }
2572
- });
2573
-
2574
- //#endregion
2575
- //#region src/operations/yandex-search.operation.ts
2576
- const yandexSearchOperation = new Operation({
2577
- id: "serpapi.yandex-search",
2578
- name: "Yandex Search",
2579
- description: "Search Yandex via SerpApi",
2580
- credentialSets: [serpApiCredentialSet],
2581
- input: z.object({
2582
- text: z.string(),
2583
- yandex_domain: z.string().optional(),
2584
- lr: z.string().optional(),
2585
- lang: z.string().optional(),
2586
- p: z.number().optional()
2587
- }),
2588
- output: z.object({
2589
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2590
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2591
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
2592
- ad_results: z.array(z.record(z.string(), z.unknown())).optional(),
2593
- knowledge_graph: z.record(z.string(), z.unknown()).optional()
2594
- }).passthrough(),
2595
- run: async (input, context) => {
2596
- return await serpApiSearch(context.credentials.serpapi, "yandex", input);
2597
- }
2598
- });
2599
-
2600
- //#endregion
2601
- //#region src/operations/yandex-videos.operation.ts
2602
- const yandexVideosOperation = new Operation({
2603
- id: "serpapi.yandex-videos",
2604
- name: "Yandex Videos Search",
2605
- description: "Search Yandex Videos via SerpApi",
2606
- credentialSets: [serpApiCredentialSet],
2607
- input: z.object({
2608
- text: z.string(),
2609
- yandex_domain: z.string().optional(),
2610
- lr: z.string().optional(),
2611
- lang: z.string().optional(),
2612
- p: z.number().optional()
2613
- }),
2614
- output: z.object({
2615
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2616
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2617
- video_results: z.array(z.record(z.string(), z.unknown())).optional()
2618
- }).passthrough(),
2619
- run: async (input, context) => {
2620
- return await serpApiSearch(context.credentials.serpapi, "yandex_videos", input);
2621
- }
2622
- });
2623
-
2624
- //#endregion
2625
- //#region src/operations/yelp-place.operation.ts
2626
- const yelpPlaceOperation = new Operation({
2627
- id: "serpapi.yelp-place",
2628
- name: "Yelp Place",
2629
- description: "Get Yelp place details via SerpApi",
2630
- credentialSets: [serpApiCredentialSet],
2631
- input: z.object({ place_id: z.string() }),
2632
- output: z.object({
2633
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2634
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2635
- place: z.record(z.string(), z.unknown()).optional()
2636
- }).passthrough(),
2637
- run: async (input, context) => {
2638
- return await serpApiSearch(context.credentials.serpapi, "yelp_place", input);
2639
- }
2640
- });
2641
-
2642
- //#endregion
2643
- //#region src/operations/yelp-reviews.operation.ts
2644
- const yelpReviewsOperation = new Operation({
2645
- id: "serpapi.yelp-reviews",
2646
- name: "Yelp Reviews",
2647
- description: "Get Yelp place reviews via SerpApi",
2648
- credentialSets: [serpApiCredentialSet],
2649
- input: z.object({
2650
- place_id: z.string(),
2651
- sort_by: z.string().optional(),
2652
- start: z.number().optional()
2653
- }),
2654
- output: z.object({
2655
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2656
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2657
- reviews: z.array(z.record(z.string(), z.unknown())).optional()
2658
- }).passthrough(),
2659
- run: async (input, context) => {
2660
- return await serpApiSearch(context.credentials.serpapi, "yelp_reviews", input);
2661
- }
2662
- });
2663
-
2664
- //#endregion
2665
- //#region src/operations/yelp-search.operation.ts
2666
- const yelpSearchOperation = new Operation({
2667
- id: "serpapi.yelp-search",
2668
- name: "Yelp Search",
2669
- description: "Search Yelp via SerpApi",
2670
- credentialSets: [serpApiCredentialSet],
2671
- input: z.object({
2672
- find_desc: z.string(),
2673
- find_loc: z.string(),
2674
- sortby: z.string().optional(),
2675
- start: z.number().optional(),
2676
- cflt: z.string().optional(),
2677
- attrs: z.string().optional()
2678
- }),
2679
- output: z.object({
2680
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2681
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2682
- organic_results: z.array(z.record(z.string(), z.unknown())).optional(),
2683
- ad_results: z.array(z.record(z.string(), z.unknown())).optional(),
2684
- filters: z.array(z.record(z.string(), z.unknown())).optional()
2685
- }).passthrough(),
2686
- run: async (input, context) => {
2687
- return await serpApiSearch(context.credentials.serpapi, "yelp", input);
2688
- }
2689
- });
2690
-
2691
- //#endregion
2692
- //#region src/operations/youtube-search.operation.ts
2693
- const youtubeSearchOperation = new Operation({
2694
- id: "serpapi.youtube-search",
2695
- name: "YouTube Search",
2696
- description: "Search YouTube via SerpApi",
2697
- credentialSets: [serpApiCredentialSet],
2698
- input: z.object({
2699
- search_query: z.string(),
2700
- gl: z.string().optional(),
2701
- hl: z.string().optional(),
2702
- sp: z.string().optional(),
2703
- page: z.number().optional()
2704
- }),
2705
- output: z.object({
2706
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2707
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2708
- video_results: z.array(z.record(z.string(), z.unknown())).optional(),
2709
- channel_results: z.array(z.record(z.string(), z.unknown())).optional(),
2710
- playlist_results: z.array(z.record(z.string(), z.unknown())).optional(),
2711
- shorts_results: z.array(z.record(z.string(), z.unknown())).optional()
2712
- }).passthrough(),
2713
- run: async (input, context) => {
2714
- return await serpApiSearch(context.credentials.serpapi, "youtube", input);
2715
- }
2716
- });
2717
-
2718
- //#endregion
2719
- //#region src/operations/youtube-video.operation.ts
2720
- const youtubeVideoOperation = new Operation({
2721
- id: "serpapi.youtube-video",
2722
- name: "YouTube Video",
2723
- description: "Get YouTube video details via SerpApi",
2724
- credentialSets: [serpApiCredentialSet],
2725
- input: z.object({
2726
- v: z.string(),
2727
- gl: z.string().optional(),
2728
- hl: z.string().optional()
2729
- }),
2730
- output: z.object({
2731
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2732
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2733
- video: z.record(z.string(), z.unknown()).optional(),
2734
- comments: z.array(z.record(z.string(), z.unknown())).optional()
2735
- }).passthrough(),
2736
- run: async (input, context) => {
2737
- return await serpApiSearch(context.credentials.serpapi, "youtube_video", input);
2738
- }
2739
- });
2740
-
2741
- //#endregion
2742
- //#region src/operations/youtube-video-transcript.operation.ts
2743
- const youtubeVideoTranscriptOperation = new Operation({
2744
- id: "serpapi.youtube-video-transcript",
2745
- name: "YouTube Video Transcript",
2746
- description: "Get YouTube video transcript via SerpApi",
2747
- credentialSets: [serpApiCredentialSet],
2748
- input: z.object({
2749
- v: z.string(),
2750
- lang: z.string().optional()
2751
- }),
2752
- output: z.object({
2753
- search_metadata: z.record(z.string(), z.unknown()).optional(),
2754
- search_parameters: z.record(z.string(), z.unknown()).optional(),
2755
- transcript: z.array(z.record(z.string(), z.unknown())).optional()
2756
- }).passthrough(),
2757
- run: async (input, context) => {
2758
- return await serpApiSearch(context.credentials.serpapi, "youtube_video_transcript", input);
2759
- }
2760
- });
2761
-
2762
- //#endregion
2763
- export { googlePatentsOperation as $, appleProductOperation as $t, googleVideosLightOperation as A, googleAutocompleteOperation as At, googleSearchOperation as B, duckduckgoMapsOperation as Bt, opentableReviewsOperation as C, googleHotelsOperation as Ct, homeDepotSearchOperation as D, googleFinanceMarketsOperation as Dt, serpApiLocationsOperation as E, googleFlightsOperation as Et, googleTrendsOperation as F, ebaySearchOperation as Ft, googleReverseImageOperation as G, bingSearchOperation as Gt, googleScholarCiteOperation as H, braveAiModeOperation as Ht, googleTravelExploreOperation as I, ebayProductOperation as It, googlePlayMoviesOperation as J, bingMapsOperation as Jt, googleRelatedQuestionsOperation as K, bingReverseImageOperation as Kt, googleShortVideosOperation as L, duckduckgoSearchAssistOperation as Lt, googleTrendsTrendingNowOperation as M, googleAiModeOperation as Mt, googleTrendsNewsOperation as N, googleAdsTransparencyOperation as Nt, homeDepotProductReviewsOperation as O, googleFinanceOperation as Ot, googleTrendsAutocompleteOperation as P, facebookProfileOperation as Pt, googlePatentsDetailsOperation as Q, appleReviewsOperation as Qt, googleShoppingLightOperation as R, duckduckgoSearchOperation as Rt, serpApiSearchArchiveOperation as S, googleHotelsAutocompleteOperation as St, naverAiOverviewOperation as T, googleFlightsAutocompleteOperation as Tt, googleScholarAuthorOperation as U, bingVideosOperation as Ut, googleScholarProfilesOperation as V, duckduckgoLightOperation as Vt, googleScholarOperation as W, bingShoppingOperation as Wt, googlePlayBooksOperation as X, bingCopilotOperation as Xt, googlePlayGamesOperation as Y, bingImagesOperation as Yt, googlePlayOperation as Z, baiduSearchOperation as Zt, walmartProductOperation as _, googleImagesRelatedOperation as _t, yelpReviewsOperation as a, googleMapsPhotoMetaOperation as at, tripadvisorPlaceOperation as b, googleHotelsReviewsOperation as bt, yandexSearchOperation as c, googleMapsAutocompleteOperation as ct, yahooShoppingOperation as d, googleLocalOperation as dt, appleAppStoreOperation as en, googleNewsLightOperation as et, yahooSearchOperation as f, googleLightSearchOperation as ft, walmartProductReviewsOperation as g, googleImmersiveProductOperation as gt, walmartProductSellersOperation as h, googleJobsOperation as ht, yelpSearchOperation as i, googleMapsPhotosOperation as it, googleVideosOperation as j, googleAiOverviewOperation as jt, homeDepotProductOperation as k, googleEventsOperation as kt, yandexImagesOperation as l, googleMapsOperation as lt, walmartSearchOperation as m, googleJobsListingOperation as mt, youtubeVideoOperation as n, amazonProductOperation as nn, googleMapsReviewsOperation as nt, yelpPlaceOperation as o, googleMapsDirectionsOperation as ot, yahooImagesOperation as p, googleLensOperation as pt, googlePlayProductOperation as q, bingNewsOperation as qt, youtubeSearchOperation as r, serpApiAccountOperation as rn, googleMapsPostsOperation as rt, yandexVideosOperation as s, googleMapsContributorReviewsOperation as st, youtubeVideoTranscriptOperation as t, amazonSearchOperation as tn, googleNewsOperation as tt, yahooVideosOperation as u, googleLocalServicesOperation as ut, tripadvisorSearchOperation as v, googleImagesLightOperation as vt, naverSearchOperation as w, googleForumsOperation as wt, serpApiSearchIndexOperation as x, googleHotelsPhotosOperation as xt, tripadvisorReviewsOperation as y, googleImagesOperation as yt, googleShoppingOperation as z, duckduckgoNewsOperation as zt };