@keystrokehq/serpapi 0.0.16 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +9 -0
  9. package/dist/actions/baidu-search.d.cts.map +1 -0
  10. package/dist/actions/baidu-search.d.mts +9 -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 +9 -0
  17. package/dist/actions/bing-maps.d.cts.map +1 -0
  18. package/dist/actions/bing-maps.d.mts +9 -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 +9 -0
  25. package/dist/actions/bing-search.d.cts.map +1 -0
  26. package/dist/actions/bing-search.d.mts +9 -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 +9 -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 +9 -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 +9 -0
  41. package/dist/actions/duck-duck-go-maps.d.cts.map +1 -0
  42. package/dist/actions/duck-duck-go-maps.d.mts +9 -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 +9 -0
  49. package/dist/actions/duck-duck-go-search.d.cts.map +1 -0
  50. package/dist/actions/duck-duck-go-search.d.mts +9 -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 +9 -0
  57. package/dist/actions/ebay-search.d.cts.map +1 -0
  58. package/dist/actions/ebay-search.d.mts +9 -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 +9 -0
  65. package/dist/actions/event-search.d.cts.map +1 -0
  66. package/dist/actions/event-search.d.mts +9 -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 +9 -0
  73. package/dist/actions/finance-search.d.cts.map +1 -0
  74. package/dist/actions/finance-search.d.mts +9 -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 +9 -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 +9 -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 +9 -0
  89. package/dist/actions/get-facebook-profile.d.cts.map +1 -0
  90. package/dist/actions/get-facebook-profile.d.mts +9 -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 +9 -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 +9 -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 +9 -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 +9 -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 +9 -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 +9 -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 +9 -0
  121. package/dist/actions/get-google-patent-details.d.cts.map +1 -0
  122. package/dist/actions/get-google-patent-details.d.mts +9 -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 +9 -0
  129. package/dist/actions/get-search-archive.d.cts.map +1 -0
  130. package/dist/actions/get-search-archive.d.mts +9 -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 +9 -0
  137. package/dist/actions/google-domains-list.d.cts.map +1 -0
  138. package/dist/actions/google-domains-list.d.mts +9 -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 +9 -0
  145. package/dist/actions/google-forums-search.d.cts.map +1 -0
  146. package/dist/actions/google-forums-search.d.mts +9 -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 +9 -0
  153. package/dist/actions/google-jobs-search.d.cts.map +1 -0
  154. package/dist/actions/google-jobs-search.d.mts +9 -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 +9 -0
  161. package/dist/actions/google-lens-search.d.cts.map +1 -0
  162. package/dist/actions/google-lens-search.d.mts +9 -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 +9 -0
  169. package/dist/actions/google-light-search.d.cts.map +1 -0
  170. package/dist/actions/google-light-search.d.mts +9 -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 +9 -0
  177. package/dist/actions/google-maps-posts.d.cts.map +1 -0
  178. package/dist/actions/google-maps-posts.d.mts +9 -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 +9 -0
  185. package/dist/actions/google-maps-search.d.cts.map +1 -0
  186. package/dist/actions/google-maps-search.d.mts +9 -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 +9 -0
  193. package/dist/actions/google-play-product.d.cts.map +1 -0
  194. package/dist/actions/google-play-product.d.mts +9 -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 +9 -0
  201. package/dist/actions/google-scholar-author.d.cts.map +1 -0
  202. package/dist/actions/google-scholar-author.d.mts +9 -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 +9 -0
  209. package/dist/actions/google-scholar-cite.d.cts.map +1 -0
  210. package/dist/actions/google-scholar-cite.d.mts +9 -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 +9 -0
  217. package/dist/actions/google-videos-light.d.cts.map +1 -0
  218. package/dist/actions/google-videos-light.d.mts +9 -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 +9 -0
  225. package/dist/actions/hotel-search.d.cts.map +1 -0
  226. package/dist/actions/hotel-search.d.mts +9 -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 +9 -0
  233. package/dist/actions/image-search.d.cts.map +1 -0
  234. package/dist/actions/image-search.d.mts +9 -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 +9 -0
  245. package/dist/actions/naver-search.d.cts.map +1 -0
  246. package/dist/actions/naver-search.d.mts +9 -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 +9 -0
  253. package/dist/actions/news-search.d.cts.map +1 -0
  254. package/dist/actions/news-search.d.mts +9 -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 +9 -0
  261. package/dist/actions/open-table-reviews.d.cts.map +1 -0
  262. package/dist/actions/open-table-reviews.d.mts +9 -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 +9 -0
  269. package/dist/actions/play-search.d.cts.map +1 -0
  270. package/dist/actions/play-search.d.mts +9 -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 +9 -0
  277. package/dist/actions/scholar-search.d.cts.map +1 -0
  278. package/dist/actions/scholar-search.d.mts +9 -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 +9 -0
  285. package/dist/actions/search-apple-app-store.d.cts.map +1 -0
  286. package/dist/actions/search-apple-app-store.d.mts +9 -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 +9 -0
  293. package/dist/actions/search-google-images-light.d.cts.map +1 -0
  294. package/dist/actions/search-google-images-light.d.mts +9 -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 +9 -0
  301. package/dist/actions/search-google-local-services.d.cts.map +1 -0
  302. package/dist/actions/search-google-local-services.d.mts +9 -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 +9 -0
  309. package/dist/actions/search-yelp.d.cts.map +1 -0
  310. package/dist/actions/search-yelp.d.mts +9 -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 +9 -0
  317. package/dist/actions/search.d.cts.map +1 -0
  318. package/dist/actions/search.d.mts +9 -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 +9 -0
  325. package/dist/actions/shopping-search.d.cts.map +1 -0
  326. package/dist/actions/shopping-search.d.mts +9 -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 +9 -0
  333. package/dist/actions/trends-search.d.cts.map +1 -0
  334. package/dist/actions/trends-search.d.mts +9 -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 +9 -0
  341. package/dist/actions/walmart-product-reviews.d.cts.map +1 -0
  342. package/dist/actions/walmart-product-reviews.d.mts +9 -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 +9 -0
  349. package/dist/actions/walmart-search.d.cts.map +1 -0
  350. package/dist/actions/walmart-search.d.mts +9 -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 +9 -0
  357. package/dist/actions/yahoo-search.d.cts.map +1 -0
  358. package/dist/actions/yahoo-search.d.mts +9 -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 +9 -0
  365. package/dist/actions/yahoo-videos.d.cts.map +1 -0
  366. package/dist/actions/yahoo-videos.d.mts +9 -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 +9 -0
  373. package/dist/actions/yandex-images-search.d.cts.map +1 -0
  374. package/dist/actions/yandex-images-search.d.mts +9 -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 +9 -0
  381. package/dist/actions/yandex-search.d.cts.map +1 -0
  382. package/dist/actions/yandex-search.d.mts +9 -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 +9 -0
  389. package/dist/actions/you-tube-search.d.cts.map +1 -0
  390. package/dist/actions/you-tube-search.d.mts +9 -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 +15 -0
  403. package/dist/catalog.cjs.map +1 -0
  404. package/dist/catalog.d.cts +14 -0
  405. package/dist/catalog.d.cts.map +1 -0
  406. package/dist/catalog.d.mts +14 -0
  407. package/dist/catalog.d.mts.map +1 -0
  408. package/dist/catalog.mjs +15 -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
package/README.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @keystrokehq/serpapi
2
2
 
3
- Keystroke official integration for [SerpApi](https://serpapi.com) — search engine results from Google, Bing, Yahoo, YouTube, and 90+ other engines.
3
+ Keystroke-managed integration.
4
4
 
5
- Credential sets live under [`./credential-sets`](./src/credential-sets/index.ts). Operations live under [`./operations`](./src/operations/index.ts).
5
+ **App:** `serpapi`
6
+ **Version:** `20260618_00`
7
+ **Actions:** 48
8
+
9
+ ```ts
10
+ import { defineAgent } from "@keystrokehq/keystroke/agent";
11
+ import { serpapiBaiduSearch } from "@keystrokehq/serpapi/actions";
12
+
13
+ export default defineAgent({
14
+ key: "serpapi-agent",
15
+ tools: [serpapiBaiduSearch],
16
+ });
17
+ ```
@@ -0,0 +1,21 @@
1
+ const require_app = require("./app.cjs");
2
+ const require_execute = require("./execute.cjs");
3
+ require("zod");
4
+ //#region src/action.ts
5
+ /** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */
6
+ function action(tool, def) {
7
+ return require_app.serpapi.action({
8
+ slug: def.slug,
9
+ name: def.name,
10
+ description: def.description,
11
+ input: def.input,
12
+ output: def.output,
13
+ async run(input) {
14
+ return def.output.parse(await require_execute.executeSerpapiTool(tool, input));
15
+ }
16
+ });
17
+ }
18
+ //#endregion
19
+ exports.action = action;
20
+
21
+ //# sourceMappingURL=action.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.cjs","names":["serpapi","executeSerpapiTool"],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { serpapi } from \"./app\";\nimport { executeSerpapiTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return serpapi.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeSerpapiTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAOA,YAAAA,QAAQ,OAAO;EACpB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAMC,gBAAAA,mBAAmB,MAAM,KAAgC,CAAC;EAC1F;CACF,CAAC;AACH"}
@@ -0,0 +1,21 @@
1
+ import { serpapi } from "./app.mjs";
2
+ import { executeSerpapiTool } from "./execute.mjs";
3
+ import "zod";
4
+ //#region src/action.ts
5
+ /** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */
6
+ function action(tool, def) {
7
+ return serpapi.action({
8
+ slug: def.slug,
9
+ name: def.name,
10
+ description: def.description,
11
+ input: def.input,
12
+ output: def.output,
13
+ async run(input) {
14
+ return def.output.parse(await executeSerpapiTool(tool, input));
15
+ }
16
+ });
17
+ }
18
+ //#endregion
19
+ export { action };
20
+
21
+ //# sourceMappingURL=action.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.mjs","names":[],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { serpapi } from \"./app\";\nimport { executeSerpapiTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return serpapi.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeSerpapiTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAO,QAAQ,OAAO;EACpB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAM,mBAAmB,MAAM,KAAgC,CAAC;EAC1F;CACF,CAAC;AACH"}
@@ -0,0 +1,41 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/baidu-search.ts
4
+ const SerpapiBaiduSearchInput = zod.z.object({
5
+ f: zod.z.string().describe("Defines the originating search type. (e.g., \"8\" is a normal search, \"3\" is from the suggestion list, and \"1\" is a related search.").optional(),
6
+ q: zod.z.string().describe("Defines the search query, including all Baidu search operators (e.g., `inurl:`, `site:`, `intitle:`, etc.)."),
7
+ bs: zod.z.string().describe("Defines the previous search query.").optional(),
8
+ ct: zod.z.string().describe("Defines which language to restrict results. Available options: \"1\" (All languages), \"2\" (Simplified Chinese), \"3\" (Traditional Chinese).").optional(),
9
+ oq: zod.z.string().describe("Defines the original search query when navigated from a related search.").optional(),
10
+ pn: zod.z.number().int().describe("Defines the result offset. It skips the given number of results. It's used for pagination. (e.g., 0 (default) is the first page of results, 10 is the 2nd page of results, 20 is the 3rd page of results, etc.). Must be a non-negative integer.").optional(),
11
+ q5: zod.z.string().describe("Similar to using `inurl:` or `intitle:`. (e.g., \"1\" to search by page title, \"2\" to search by web address.).").optional(),
12
+ q6: zod.z.string().describe("Similar to using `site:`. (e.g., `q6=serpapi.com` to search for results only from the domain `serpapi.com`)").optional(),
13
+ rn: zod.z.number().int().describe("Parameter defines the maximum number of results to return, limited to 50. (e.g., 10 (default) returns 10 results, 30 returns 30 results, and 50 returns 50 results). This parameter is only available for desktop and tablet searches. Must be between 1 and 50.").optional(),
14
+ gpc: zod.z.string().describe("Parameter defines the time period for results. (e.g., `stf=1749303572,1749908372|stftype=1` only returns results from the past 7 days. First integer within the parameter, `1749303572` is Unix Timestamp for 7 days ago. Second integer, `1749908372` is Unix Timestamp for now.).").optional(),
15
+ async: zod.z.boolean().default(false).describe("Parameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later. In this case, you'll need to use our Searches Archive API to retrieve your results. async and no_cache parameters should not be used together. async should not be used on accounts with Ludicrous Speed enabled.").optional(),
16
+ device: zod.z.string().default("desktop").describe("Parameter defines the device to use to get the results. It can be set to \"desktop\" (default) to use a regular browser, \"tablet\" to use a tablet browser (currently using iPads), or \"mobile\" to use a mobile browser (currently using iPhones).").optional(),
17
+ output: zod.z.string().default("json").describe("Parameter defines the final output you want. It can be set to json (default) to get a structured `JSON` of the results, or `html` to get the raw html retrieved.").optional(),
18
+ no_cache: zod.z.boolean().default(false).describe("Parameter will force SerpApi to fetch the Baidu results even if a cached version is already present. A cache is served only if the query and all parameters are exactly the same. Cache expires after 1h. Cached searches are free, and are not counted towards your searches per month. It can be set to `false` (default) to allow results from the cache, or `true` to disallow results from the cache. no_cache and async parameters should not be used together.").optional()
19
+ });
20
+ const SerpapiBaiduSearchOutput = zod.z.object({
21
+ error: zod.z.string().describe("Error message if the search failed.").nullable().optional(),
22
+ answer_box: zod.z.array(zod.z.record(zod.z.string(), zod.z.unknown())).describe("Contains results from Baidu Answer Box, if available.").nullable().optional(),
23
+ pagination: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Contains pagination information for the search results.").nullable().optional(),
24
+ html_content: zod.z.string().describe("Raw HTML content returned when output='html' is requested.").nullable().optional(),
25
+ organic_results: zod.z.array(zod.z.record(zod.z.string(), zod.z.unknown())).describe("List of organic search results.").nullable().optional(),
26
+ search_metadata: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Contains metadata about the search, such as ID, status, and timestamps.").nullable().optional(),
27
+ search_parameters: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Contains the parameters used for the search.").nullable().optional(),
28
+ search_information: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Contains information about the search query, like the displayed query.").nullable().optional(),
29
+ serpapi_pagination: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Contains SerpApi-specific pagination information.").nullable().optional()
30
+ });
31
+ const serpapiBaiduSearch = require_action.action("SERPAPI_BAIDU_SEARCH", {
32
+ slug: "serpapi-baidu-search",
33
+ name: "Search Baidu with Query",
34
+ description: "Search Baidu (Chinese search engine) and retrieve search results. Requires a search query string in the 'q' parameter. Returns organic search results, answer boxes, and pagination info in JSON format.",
35
+ input: SerpapiBaiduSearchInput,
36
+ output: SerpapiBaiduSearchOutput
37
+ });
38
+ //#endregion
39
+ exports.serpapiBaiduSearch = serpapiBaiduSearch;
40
+
41
+ //# sourceMappingURL=baidu-search.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baidu-search.cjs","names":["z","action"],"sources":["../../src/actions/baidu-search.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SerpapiBaiduSearchInput: z.ZodTypeAny = z.object({\n f: z.string().describe(\"Defines the originating search type. (e.g., \\\"8\\\" is a normal search, \\\"3\\\" is from the suggestion list, and \\\"1\\\" is a related search.\").optional(),\n q: z.string().describe(\"Defines the search query, including all Baidu search operators (e.g., `inurl:`, `site:`, `intitle:`, etc.).\"),\n bs: z.string().describe(\"Defines the previous search query.\").optional(),\n ct: z.string().describe(\"Defines which language to restrict results. Available options: \\\"1\\\" (All languages), \\\"2\\\" (Simplified Chinese), \\\"3\\\" (Traditional Chinese).\").optional(),\n oq: z.string().describe(\"Defines the original search query when navigated from a related search.\").optional(),\n pn: z.number().int().describe(\"Defines the result offset. It skips the given number of results. It's used for pagination. (e.g., 0 (default) is the first page of results, 10 is the 2nd page of results, 20 is the 3rd page of results, etc.). Must be a non-negative integer.\").optional(),\n q5: z.string().describe(\"Similar to using `inurl:` or `intitle:`. (e.g., \\\"1\\\" to search by page title, \\\"2\\\" to search by web address.).\").optional(),\n q6: z.string().describe(\"Similar to using `site:`. (e.g., `q6=serpapi.com` to search for results only from the domain `serpapi.com`)\").optional(),\n rn: z.number().int().describe(\"Parameter defines the maximum number of results to return, limited to 50. (e.g., 10 (default) returns 10 results, 30 returns 30 results, and 50 returns 50 results). This parameter is only available for desktop and tablet searches. Must be between 1 and 50.\").optional(),\n gpc: z.string().describe(\"Parameter defines the time period for results. (e.g., `stf=1749303572,1749908372|stftype=1` only returns results from the past 7 days. First integer within the parameter, `1749303572` is Unix Timestamp for 7 days ago. Second integer, `1749908372` is Unix Timestamp for now.).\").optional(),\n async: z.boolean().default(false).describe(\"Parameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later. In this case, you'll need to use our Searches Archive API to retrieve your results. async and no_cache parameters should not be used together. async should not be used on accounts with Ludicrous Speed enabled.\").optional(),\n device: z.string().default(\"desktop\").describe(\"Parameter defines the device to use to get the results. It can be set to \\\"desktop\\\" (default) to use a regular browser, \\\"tablet\\\" to use a tablet browser (currently using iPads), or \\\"mobile\\\" to use a mobile browser (currently using iPhones).\").optional(),\n output: z.string().default(\"json\").describe(\"Parameter defines the final output you want. It can be set to json (default) to get a structured `JSON` of the results, or `html` to get the raw html retrieved.\").optional(),\n no_cache: z.boolean().default(false).describe(\"Parameter will force SerpApi to fetch the Baidu results even if a cached version is already present. A cache is served only if the query and all parameters are exactly the same. Cache expires after 1h. Cached searches are free, and are not counted towards your searches per month. It can be set to `false` (default) to allow results from the cache, or `true` to disallow results from the cache. no_cache and async parameters should not be used together.\").optional(),\n});\nexport const SerpapiBaiduSearchOutput: z.ZodTypeAny = z.object({\n error: z.string().describe(\"Error message if the search failed.\").nullable().optional(),\n answer_box: z.array(z.record(z.string(), z.unknown())).describe(\"Contains results from Baidu Answer Box, if available.\").nullable().optional(),\n pagination: z.record(z.string(), z.unknown()).describe(\"Contains pagination information for the search results.\").nullable().optional(),\n html_content: z.string().describe(\"Raw HTML content returned when output='html' is requested.\").nullable().optional(),\n organic_results: z.array(z.record(z.string(), z.unknown())).describe(\"List of organic search results.\").nullable().optional(),\n search_metadata: z.record(z.string(), z.unknown()).describe(\"Contains metadata about the search, such as ID, status, and timestamps.\").nullable().optional(),\n search_parameters: z.record(z.string(), z.unknown()).describe(\"Contains the parameters used for the search.\").nullable().optional(),\n search_information: z.record(z.string(), z.unknown()).describe(\"Contains information about the search query, like the displayed query.\").nullable().optional(),\n serpapi_pagination: z.record(z.string(), z.unknown()).describe(\"Contains SerpApi-specific pagination information.\").nullable().optional(),\n});\n\nexport const serpapiBaiduSearch = action(\"SERPAPI_BAIDU_SEARCH\", {\n slug: \"serpapi-baidu-search\",\n name: \"Search Baidu with Query\",\n description: \"Search Baidu (Chinese search engine) and retrieve search results. Requires a search query string in the 'q' parameter. Returns organic search results, answer boxes, and pagination info in JSON format.\",\n input: SerpapiBaiduSearchInput,\n output: SerpapiBaiduSearchOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/baidu-search.d.ts
4
+ declare const SerpapiBaiduSearchInput: z.ZodTypeAny;
5
+ declare const SerpapiBaiduSearchOutput: z.ZodTypeAny;
6
+ declare const serpapiBaiduSearch: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { serpapiBaiduSearch };
9
+ //# sourceMappingURL=baidu-search.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baidu-search.d.cts","names":[],"sources":["../../src/actions/baidu-search.ts"],"mappings":";;;cAIa,uBAAA,EAAyB,CAAA,CAAE,UAetC;AAAA,cACW,wBAAA,EAA0B,CAAA,CAAE,UAUvC;AAAA,cAEW,kBAAA,gCAAkB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/baidu-search.d.ts
4
+ declare const SerpapiBaiduSearchInput: z.ZodTypeAny;
5
+ declare const SerpapiBaiduSearchOutput: z.ZodTypeAny;
6
+ declare const serpapiBaiduSearch: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { serpapiBaiduSearch };
9
+ //# sourceMappingURL=baidu-search.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baidu-search.d.mts","names":[],"sources":["../../src/actions/baidu-search.ts"],"mappings":";;;cAIa,uBAAA,EAAyB,CAAA,CAAE,UAetC;AAAA,cACW,wBAAA,EAA0B,CAAA,CAAE,UAUvC;AAAA,cAEW,kBAAA,gCAAkB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,38 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ const serpapiBaiduSearch = action("SERPAPI_BAIDU_SEARCH", {
4
+ slug: "serpapi-baidu-search",
5
+ name: "Search Baidu with Query",
6
+ description: "Search Baidu (Chinese search engine) and retrieve search results. Requires a search query string in the 'q' parameter. Returns organic search results, answer boxes, and pagination info in JSON format.",
7
+ input: z.object({
8
+ f: z.string().describe("Defines the originating search type. (e.g., \"8\" is a normal search, \"3\" is from the suggestion list, and \"1\" is a related search.").optional(),
9
+ q: z.string().describe("Defines the search query, including all Baidu search operators (e.g., `inurl:`, `site:`, `intitle:`, etc.)."),
10
+ bs: z.string().describe("Defines the previous search query.").optional(),
11
+ ct: z.string().describe("Defines which language to restrict results. Available options: \"1\" (All languages), \"2\" (Simplified Chinese), \"3\" (Traditional Chinese).").optional(),
12
+ oq: z.string().describe("Defines the original search query when navigated from a related search.").optional(),
13
+ pn: z.number().int().describe("Defines the result offset. It skips the given number of results. It's used for pagination. (e.g., 0 (default) is the first page of results, 10 is the 2nd page of results, 20 is the 3rd page of results, etc.). Must be a non-negative integer.").optional(),
14
+ q5: z.string().describe("Similar to using `inurl:` or `intitle:`. (e.g., \"1\" to search by page title, \"2\" to search by web address.).").optional(),
15
+ q6: z.string().describe("Similar to using `site:`. (e.g., `q6=serpapi.com` to search for results only from the domain `serpapi.com`)").optional(),
16
+ rn: z.number().int().describe("Parameter defines the maximum number of results to return, limited to 50. (e.g., 10 (default) returns 10 results, 30 returns 30 results, and 50 returns 50 results). This parameter is only available for desktop and tablet searches. Must be between 1 and 50.").optional(),
17
+ gpc: z.string().describe("Parameter defines the time period for results. (e.g., `stf=1749303572,1749908372|stftype=1` only returns results from the past 7 days. First integer within the parameter, `1749303572` is Unix Timestamp for 7 days ago. Second integer, `1749908372` is Unix Timestamp for now.).").optional(),
18
+ async: z.boolean().default(false).describe("Parameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later. In this case, you'll need to use our Searches Archive API to retrieve your results. async and no_cache parameters should not be used together. async should not be used on accounts with Ludicrous Speed enabled.").optional(),
19
+ device: z.string().default("desktop").describe("Parameter defines the device to use to get the results. It can be set to \"desktop\" (default) to use a regular browser, \"tablet\" to use a tablet browser (currently using iPads), or \"mobile\" to use a mobile browser (currently using iPhones).").optional(),
20
+ output: z.string().default("json").describe("Parameter defines the final output you want. It can be set to json (default) to get a structured `JSON` of the results, or `html` to get the raw html retrieved.").optional(),
21
+ no_cache: z.boolean().default(false).describe("Parameter will force SerpApi to fetch the Baidu results even if a cached version is already present. A cache is served only if the query and all parameters are exactly the same. Cache expires after 1h. Cached searches are free, and are not counted towards your searches per month. It can be set to `false` (default) to allow results from the cache, or `true` to disallow results from the cache. no_cache and async parameters should not be used together.").optional()
22
+ }),
23
+ output: z.object({
24
+ error: z.string().describe("Error message if the search failed.").nullable().optional(),
25
+ answer_box: z.array(z.record(z.string(), z.unknown())).describe("Contains results from Baidu Answer Box, if available.").nullable().optional(),
26
+ pagination: z.record(z.string(), z.unknown()).describe("Contains pagination information for the search results.").nullable().optional(),
27
+ html_content: z.string().describe("Raw HTML content returned when output='html' is requested.").nullable().optional(),
28
+ organic_results: z.array(z.record(z.string(), z.unknown())).describe("List of organic search results.").nullable().optional(),
29
+ search_metadata: z.record(z.string(), z.unknown()).describe("Contains metadata about the search, such as ID, status, and timestamps.").nullable().optional(),
30
+ search_parameters: z.record(z.string(), z.unknown()).describe("Contains the parameters used for the search.").nullable().optional(),
31
+ search_information: z.record(z.string(), z.unknown()).describe("Contains information about the search query, like the displayed query.").nullable().optional(),
32
+ serpapi_pagination: z.record(z.string(), z.unknown()).describe("Contains SerpApi-specific pagination information.").nullable().optional()
33
+ })
34
+ });
35
+ //#endregion
36
+ export { serpapiBaiduSearch };
37
+
38
+ //# sourceMappingURL=baidu-search.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baidu-search.mjs","names":[],"sources":["../../src/actions/baidu-search.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SerpapiBaiduSearchInput: z.ZodTypeAny = z.object({\n f: z.string().describe(\"Defines the originating search type. (e.g., \\\"8\\\" is a normal search, \\\"3\\\" is from the suggestion list, and \\\"1\\\" is a related search.\").optional(),\n q: z.string().describe(\"Defines the search query, including all Baidu search operators (e.g., `inurl:`, `site:`, `intitle:`, etc.).\"),\n bs: z.string().describe(\"Defines the previous search query.\").optional(),\n ct: z.string().describe(\"Defines which language to restrict results. Available options: \\\"1\\\" (All languages), \\\"2\\\" (Simplified Chinese), \\\"3\\\" (Traditional Chinese).\").optional(),\n oq: z.string().describe(\"Defines the original search query when navigated from a related search.\").optional(),\n pn: z.number().int().describe(\"Defines the result offset. It skips the given number of results. It's used for pagination. (e.g., 0 (default) is the first page of results, 10 is the 2nd page of results, 20 is the 3rd page of results, etc.). Must be a non-negative integer.\").optional(),\n q5: z.string().describe(\"Similar to using `inurl:` or `intitle:`. (e.g., \\\"1\\\" to search by page title, \\\"2\\\" to search by web address.).\").optional(),\n q6: z.string().describe(\"Similar to using `site:`. (e.g., `q6=serpapi.com` to search for results only from the domain `serpapi.com`)\").optional(),\n rn: z.number().int().describe(\"Parameter defines the maximum number of results to return, limited to 50. (e.g., 10 (default) returns 10 results, 30 returns 30 results, and 50 returns 50 results). This parameter is only available for desktop and tablet searches. Must be between 1 and 50.\").optional(),\n gpc: z.string().describe(\"Parameter defines the time period for results. (e.g., `stf=1749303572,1749908372|stftype=1` only returns results from the past 7 days. First integer within the parameter, `1749303572` is Unix Timestamp for 7 days ago. Second integer, `1749908372` is Unix Timestamp for now.).\").optional(),\n async: z.boolean().default(false).describe(\"Parameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later. In this case, you'll need to use our Searches Archive API to retrieve your results. async and no_cache parameters should not be used together. async should not be used on accounts with Ludicrous Speed enabled.\").optional(),\n device: z.string().default(\"desktop\").describe(\"Parameter defines the device to use to get the results. It can be set to \\\"desktop\\\" (default) to use a regular browser, \\\"tablet\\\" to use a tablet browser (currently using iPads), or \\\"mobile\\\" to use a mobile browser (currently using iPhones).\").optional(),\n output: z.string().default(\"json\").describe(\"Parameter defines the final output you want. It can be set to json (default) to get a structured `JSON` of the results, or `html` to get the raw html retrieved.\").optional(),\n no_cache: z.boolean().default(false).describe(\"Parameter will force SerpApi to fetch the Baidu results even if a cached version is already present. A cache is served only if the query and all parameters are exactly the same. Cache expires after 1h. Cached searches are free, and are not counted towards your searches per month. It can be set to `false` (default) to allow results from the cache, or `true` to disallow results from the cache. no_cache and async parameters should not be used together.\").optional(),\n});\nexport const SerpapiBaiduSearchOutput: z.ZodTypeAny = z.object({\n error: z.string().describe(\"Error message if the search failed.\").nullable().optional(),\n answer_box: z.array(z.record(z.string(), z.unknown())).describe(\"Contains results from Baidu Answer Box, if available.\").nullable().optional(),\n pagination: z.record(z.string(), z.unknown()).describe(\"Contains pagination information for the search results.\").nullable().optional(),\n html_content: z.string().describe(\"Raw HTML content returned when output='html' is requested.\").nullable().optional(),\n organic_results: z.array(z.record(z.string(), z.unknown())).describe(\"List of organic search results.\").nullable().optional(),\n search_metadata: z.record(z.string(), z.unknown()).describe(\"Contains metadata about the search, such as ID, status, and timestamps.\").nullable().optional(),\n search_parameters: z.record(z.string(), z.unknown()).describe(\"Contains the parameters used for the search.\").nullable().optional(),\n search_information: z.record(z.string(), z.unknown()).describe(\"Contains information about the search query, like the displayed query.\").nullable().optional(),\n serpapi_pagination: z.record(z.string(), z.unknown()).describe(\"Contains SerpApi-specific pagination information.\").nullable().optional(),\n});\n\nexport const serpapiBaiduSearch = action(\"SERPAPI_BAIDU_SEARCH\", {\n slug: \"serpapi-baidu-search\",\n name: \"Search Baidu with Query\",\n description: \"Search Baidu (Chinese search engine) and retrieve search results. Requires a search query string in the 'q' parameter. Returns organic search results, answer boxes, and pagination info in JSON format.\",\n input: SerpapiBaiduSearchInput,\n output: SerpapiBaiduSearchOutput,\n});\n"],"mappings":";;AAgCA,MAAa,qBAAqB,OAAO,wBAAwB;CAC/D,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAhCmD,EAAE,OAAO;EAC5D,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,yIAAyI,CAAC,CAAC,SAAS;EAC3K,GAAG,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G;EACpI,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS;EACvE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,gJAAgJ,CAAC,CAAC,SAAS;EACnL,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;EAC5G,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kPAAkP,CAAC,CAAC,SAAS;EAC3R,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,kHAAkH,CAAC,CAAC,SAAS;EACrJ,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EAChJ,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kQAAkQ,CAAC,CAAC,SAAS;EAC3S,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,qRAAqR,CAAC,CAAC,SAAS;EACzT,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,mdAAmd,CAAC,CAAC,SAAS;EACzgB,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,SAAS,uPAAuP,CAAC,CAAC,SAAS;EACjT,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,SAAS,kKAAkK,CAAC,CAAC,SAAS;EACzN,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,ucAAuc,CAAC,CAAC,SAAS;CAClgB,CAiBS;CACP,QAjBoD,EAAE,OAAO;EAC7D,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtF,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC7I,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtI,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACpH,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC5H,iBAAiB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC3J,mBAAmB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,8CAA8C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAClI,oBAAoB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,wEAAwE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC7J,oBAAoB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1I,CAOU;AACV,CAAC"}
@@ -0,0 +1,135 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/bing-maps.ts
4
+ const SerpapiBingMapsInput = zod.z.object({
5
+ q: zod.z.string().describe("Search query for Bing Maps (e.g., 'coffee', 'restaurants', 'hotels near Times Square'). Use specific location queries for better results."),
6
+ cp: zod.z.string().describe("GPS coordinates formatted as 'latitude~longitude' (e.g., '40.7455096~-74.0083012'). Specifies the center point for the search area.").optional(),
7
+ count: zod.z.number().int().describe("Number of results per page (maximum 30). Controls how many results are returned.").optional(),
8
+ first: zod.z.number().int().describe("Result offset for pagination (defaults to 0). Used to retrieve subsequent pages of results.").optional(),
9
+ setlang: zod.z.string().describe("2-character ISO 3166-1 language code for localization (e.g., 'us', 'de', 'gb'). Sets the language for results.").optional(),
10
+ no_cache: zod.z.boolean().describe("Set to true to bypass cached results and force a fresh API call.").optional(),
11
+ place_id: zod.z.string().describe("Unique reference identifier for a specific location. Can be used independently of the q parameter to retrieve details about a specific place.").optional()
12
+ });
13
+ const SerpapiBingMaps_FilterItemSchema = zod.z.object({
14
+ link: zod.z.string().describe("Direct Bing Maps URL with filter applied").nullable().optional(),
15
+ title: zod.z.string().describe("Filter category name").nullable().optional(),
16
+ serpapi_link: zod.z.string().describe("SerpApi endpoint for filtered results").nullable().optional()
17
+ });
18
+ const SerpapiBingMaps_GPSCoordinatesSchema = zod.z.object({
19
+ latitude: zod.z.number().describe("Geographic latitude").nullable().optional(),
20
+ longitude: zod.z.number().describe("Geographic longitude").nullable().optional()
21
+ });
22
+ const SerpapiBingMaps_LocalResultItemSchema = zod.z.object({
23
+ type: zod.z.string().describe("Primary category").nullable().optional(),
24
+ phone: zod.z.string().describe("Contact phone number").nullable().optional(),
25
+ price: zod.z.string().describe("Price tier symbol ($, $$)").nullable().optional(),
26
+ title: zod.z.string().describe("Business/location name").nullable().optional(),
27
+ rating: zod.z.number().describe("Numerical rating score").nullable().optional(),
28
+ source: zod.z.string().describe("Review platform origin").nullable().optional(),
29
+ address: zod.z.string().describe("Physical street address").nullable().optional(),
30
+ reviews: zod.z.number().int().describe("Count of reviews").nullable().optional(),
31
+ website: zod.z.string().describe("Business website URL").nullable().optional(),
32
+ place_id: zod.z.string().describe("Unique Bing identifier").nullable().optional(),
33
+ thumbnail: zod.z.string().describe("Image URL for preview").nullable().optional(),
34
+ open_state: zod.z.string().describe("Operating status with hours").nullable().optional(),
35
+ description: zod.z.string().describe("Summary of services/features").nullable().optional(),
36
+ secondary_type: zod.z.string().describe("Sub-category").nullable().optional(),
37
+ gps_coordinates: SerpapiBingMaps_GPSCoordinatesSchema.nullable().optional(),
38
+ price_description: zod.z.string().describe("Human-readable price level").nullable().optional()
39
+ });
40
+ const SerpapiBingMaps_LocalResultCategorySchema = zod.z.object({
41
+ link: zod.z.string().describe("Bing Maps URL for category").nullable().optional(),
42
+ items: zod.z.array(SerpapiBingMaps_LocalResultItemSchema).describe("Collection of locations in this category").nullable().optional(),
43
+ title: zod.z.string().describe("Category heading").nullable().optional()
44
+ });
45
+ const SerpapiBingMaps_PlaceImageSchema = zod.z.object({
46
+ link: zod.z.string().describe("Bing Images search URL").nullable().optional(),
47
+ thumbnail: zod.z.string().describe("Compressed image URL").nullable().optional()
48
+ });
49
+ const SerpapiBingMaps_SocialLinkSchema = zod.z.object({
50
+ link: zod.z.string().describe("Profile/account URL").nullable().optional(),
51
+ name: zod.z.string().describe("Platform identifier").nullable().optional(),
52
+ thumbnail: zod.z.string().describe("Platform logo URL").nullable().optional()
53
+ });
54
+ const SerpapiBingMaps_ReviewSchema = zod.z.object({
55
+ date: zod.z.string().describe("Publication date").nullable().optional(),
56
+ link: zod.z.string().describe("Direct review URL").nullable().optional(),
57
+ text: zod.z.string().describe("Review body text").nullable().optional(),
58
+ rating: zod.z.number().describe("Individual review score").nullable().optional(),
59
+ user_name: zod.z.string().describe("Reviewer's name").nullable().optional()
60
+ });
61
+ const SerpapiBingMaps_ReviewSourceSchema = zod.z.object({
62
+ rating: zod.z.number().describe("Aggregate rating score").nullable().optional(),
63
+ source: zod.z.string().describe("Review platform name").nullable().optional(),
64
+ reviews: zod.z.array(SerpapiBingMaps_ReviewSchema).describe("Individual review objects").nullable().optional(),
65
+ source_logo: zod.z.string().describe("Platform logo URL").nullable().optional(),
66
+ see_all_link: zod.z.string().describe("URL to all reviews").nullable().optional(),
67
+ total_reviews: zod.z.number().int().describe("Review count").nullable().optional()
68
+ });
69
+ const SerpapiBingMaps_CustomerSaysSchema = zod.z.object({
70
+ text: zod.z.string().describe("AI-generated sentiment summary").nullable().optional(),
71
+ title: zod.z.string().describe("Feedback category").nullable().optional()
72
+ });
73
+ const SerpapiBingMaps_RelatedPlaceSchema = zod.z.object({
74
+ link: zod.z.string().describe("Bing Maps URL").nullable().optional(),
75
+ title: zod.z.string().describe("Related business/location name").nullable().optional(),
76
+ rating: zod.z.number().describe("Rating value").nullable().optional(),
77
+ source: zod.z.string().describe("Rating source platform").nullable().optional(),
78
+ reviews: zod.z.number().int().describe("Review count").nullable().optional(),
79
+ place_id: zod.z.string().describe("Bing identifier").nullable().optional(),
80
+ thumbnail: zod.z.string().describe("Location preview image").nullable().optional()
81
+ });
82
+ const SerpapiBingMaps_PeopleAlsoSearchForSchema = zod.z.object({ items: zod.z.array(SerpapiBingMaps_RelatedPlaceSchema).describe("Related location suggestions").nullable().optional() });
83
+ const SerpapiBingMaps_PlaceResultsSchema = zod.z.object({
84
+ menu: zod.z.string().describe("Direct URL to business menu").nullable().optional(),
85
+ type: zod.z.string().describe("Primary business type").nullable().optional(),
86
+ hours: zod.z.object({}).describe("Weekly schedule by day name").nullable().optional(),
87
+ phone: zod.z.string().describe("Contact number").nullable().optional(),
88
+ title: zod.z.string().describe("Establishment name").nullable().optional(),
89
+ images: zod.z.array(SerpapiBingMaps_PlaceImageSchema).describe("Collection of place photos").nullable().optional(),
90
+ rating: zod.z.number().describe("Overall rating value").nullable().optional(),
91
+ social: zod.z.array(SerpapiBingMaps_SocialLinkSchema).describe("Social media profile links").nullable().optional(),
92
+ address: zod.z.string().describe("Full street address").nullable().optional(),
93
+ claimed: zod.z.boolean().describe("Owner verification status").nullable().optional(),
94
+ reviews: zod.z.array(SerpapiBingMaps_ReviewSourceSchema).describe("Review aggregates from platforms").nullable().optional(),
95
+ website: zod.z.string().describe("Homepage URL").nullable().optional(),
96
+ place_id: zod.z.string().describe("Unique Bing identifier").nullable().optional(),
97
+ amenities: zod.z.array(zod.z.string()).describe("Available facilities/features").nullable().optional(),
98
+ directions: zod.z.string().describe("Bing Maps navigation URL").nullable().optional(),
99
+ open_state: zod.z.string().describe("Current operating status").nullable().optional(),
100
+ customer_says: zod.z.array(SerpapiBingMaps_CustomerSaysSchema).describe("AI-summarized feedback").nullable().optional(),
101
+ service_areas: zod.z.string().describe("Geographic regions served").nullable().optional(),
102
+ total_reviews: zod.z.number().int().describe("Count of all reviews").nullable().optional(),
103
+ gps_coordinates: SerpapiBingMaps_GPSCoordinatesSchema.nullable().optional(),
104
+ rating_provider: zod.z.string().describe("Platform providing rating").nullable().optional(),
105
+ people_also_search_for: SerpapiBingMaps_PeopleAlsoSearchForSchema.nullable().optional()
106
+ });
107
+ const SerpapiBingMaps_SearchMetadataSchema = zod.z.object({
108
+ id: zod.z.string().describe("Unique identifier for the search").nullable().optional(),
109
+ status: zod.z.string().describe("Processing status").nullable().optional(),
110
+ created_at: zod.z.string().describe("Request submission timestamp").nullable().optional(),
111
+ processed_at: zod.z.string().describe("Request completion timestamp").nullable().optional(),
112
+ bing_maps_url: zod.z.string().describe("Corresponding Bing Maps web search URL").nullable().optional(),
113
+ json_endpoint: zod.z.string().describe("URL to retrieve stored JSON results").nullable().optional(),
114
+ raw_html_file: zod.z.string().describe("URL to unformatted HTML response").nullable().optional(),
115
+ total_time_taken: zod.z.number().describe("Processing duration in seconds").nullable().optional(),
116
+ prettify_html_file: zod.z.string().describe("URL to formatted HTML response").nullable().optional()
117
+ });
118
+ const SerpapiBingMapsOutput = zod.z.object({
119
+ filters: zod.z.array(SerpapiBingMaps_FilterItemSchema).describe("Available filter categories").nullable().optional(),
120
+ local_results: zod.z.array(SerpapiBingMaps_LocalResultCategorySchema).describe("Grouped location listings by category").nullable().optional(),
121
+ place_results: SerpapiBingMaps_PlaceResultsSchema.nullable().optional(),
122
+ search_metadata: SerpapiBingMaps_SearchMetadataSchema.nullable().optional(),
123
+ search_parameters: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Echo of submitted request parameters").nullable().optional()
124
+ });
125
+ const serpapiBingMaps = require_action.action("SERPAPI_BING_MAPS", {
126
+ slug: "serpapi-bing-maps",
127
+ name: "Bing Maps Search",
128
+ description: "Tool to scrape Bing Maps results using SerpApi. Use when you need to find local businesses, places, or get detailed location information including addresses, phone numbers, ratings, reviews, and more. Supports searching by query or specific place ID.",
129
+ input: SerpapiBingMapsInput,
130
+ output: SerpapiBingMapsOutput
131
+ });
132
+ //#endregion
133
+ exports.serpapiBingMaps = serpapiBingMaps;
134
+
135
+ //# sourceMappingURL=bing-maps.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bing-maps.cjs","names":["z","action"],"sources":["../../src/actions/bing-maps.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SerpapiBingMapsInput: z.ZodTypeAny = z.object({\n q: z.string().describe(\"Search query for Bing Maps (e.g., 'coffee', 'restaurants', 'hotels near Times Square'). Use specific location queries for better results.\"),\n cp: z.string().describe(\"GPS coordinates formatted as 'latitude~longitude' (e.g., '40.7455096~-74.0083012'). Specifies the center point for the search area.\").optional(),\n count: z.number().int().describe(\"Number of results per page (maximum 30). Controls how many results are returned.\").optional(),\n first: z.number().int().describe(\"Result offset for pagination (defaults to 0). Used to retrieve subsequent pages of results.\").optional(),\n setlang: z.string().describe(\"2-character ISO 3166-1 language code for localization (e.g., 'us', 'de', 'gb'). Sets the language for results.\").optional(),\n no_cache: z.boolean().describe(\"Set to true to bypass cached results and force a fresh API call.\").optional(),\n place_id: z.string().describe(\"Unique reference identifier for a specific location. Can be used independently of the q parameter to retrieve details about a specific place.\").optional(),\n});\nconst SerpapiBingMaps_FilterItemSchema: z.ZodTypeAny = z.object({\n link: z.string().describe(\"Direct Bing Maps URL with filter applied\").nullable().optional(),\n title: z.string().describe(\"Filter category name\").nullable().optional(),\n serpapi_link: z.string().describe(\"SerpApi endpoint for filtered results\").nullable().optional(),\n});\nconst SerpapiBingMaps_GPSCoordinatesSchema: z.ZodTypeAny = z.object({\n latitude: z.number().describe(\"Geographic latitude\").nullable().optional(),\n longitude: z.number().describe(\"Geographic longitude\").nullable().optional(),\n});\nconst SerpapiBingMaps_LocalResultItemSchema: z.ZodTypeAny = z.object({\n type: z.string().describe(\"Primary category\").nullable().optional(),\n phone: z.string().describe(\"Contact phone number\").nullable().optional(),\n price: z.string().describe(\"Price tier symbol ($, $$)\").nullable().optional(),\n title: z.string().describe(\"Business/location name\").nullable().optional(),\n rating: z.number().describe(\"Numerical rating score\").nullable().optional(),\n source: z.string().describe(\"Review platform origin\").nullable().optional(),\n address: z.string().describe(\"Physical street address\").nullable().optional(),\n reviews: z.number().int().describe(\"Count of reviews\").nullable().optional(),\n website: z.string().describe(\"Business website URL\").nullable().optional(),\n place_id: z.string().describe(\"Unique Bing identifier\").nullable().optional(),\n thumbnail: z.string().describe(\"Image URL for preview\").nullable().optional(),\n open_state: z.string().describe(\"Operating status with hours\").nullable().optional(),\n description: z.string().describe(\"Summary of services/features\").nullable().optional(),\n secondary_type: z.string().describe(\"Sub-category\").nullable().optional(),\n gps_coordinates: SerpapiBingMaps_GPSCoordinatesSchema.nullable().optional(),\n price_description: z.string().describe(\"Human-readable price level\").nullable().optional(),\n});\nconst SerpapiBingMaps_LocalResultCategorySchema: z.ZodTypeAny = z.object({\n link: z.string().describe(\"Bing Maps URL for category\").nullable().optional(),\n items: z.array(SerpapiBingMaps_LocalResultItemSchema).describe(\"Collection of locations in this category\").nullable().optional(),\n title: z.string().describe(\"Category heading\").nullable().optional(),\n});\nconst SerpapiBingMaps_PlaceImageSchema: z.ZodTypeAny = z.object({\n link: z.string().describe(\"Bing Images search URL\").nullable().optional(),\n thumbnail: z.string().describe(\"Compressed image URL\").nullable().optional(),\n});\nconst SerpapiBingMaps_SocialLinkSchema: z.ZodTypeAny = z.object({\n link: z.string().describe(\"Profile/account URL\").nullable().optional(),\n name: z.string().describe(\"Platform identifier\").nullable().optional(),\n thumbnail: z.string().describe(\"Platform logo URL\").nullable().optional(),\n});\nconst SerpapiBingMaps_ReviewSchema: z.ZodTypeAny = z.object({\n date: z.string().describe(\"Publication date\").nullable().optional(),\n link: z.string().describe(\"Direct review URL\").nullable().optional(),\n text: z.string().describe(\"Review body text\").nullable().optional(),\n rating: z.number().describe(\"Individual review score\").nullable().optional(),\n user_name: z.string().describe(\"Reviewer's name\").nullable().optional(),\n});\nconst SerpapiBingMaps_ReviewSourceSchema: z.ZodTypeAny = z.object({\n rating: z.number().describe(\"Aggregate rating score\").nullable().optional(),\n source: z.string().describe(\"Review platform name\").nullable().optional(),\n reviews: z.array(SerpapiBingMaps_ReviewSchema).describe(\"Individual review objects\").nullable().optional(),\n source_logo: z.string().describe(\"Platform logo URL\").nullable().optional(),\n see_all_link: z.string().describe(\"URL to all reviews\").nullable().optional(),\n total_reviews: z.number().int().describe(\"Review count\").nullable().optional(),\n});\nconst SerpapiBingMaps_CustomerSaysSchema: z.ZodTypeAny = z.object({\n text: z.string().describe(\"AI-generated sentiment summary\").nullable().optional(),\n title: z.string().describe(\"Feedback category\").nullable().optional(),\n});\nconst SerpapiBingMaps_RelatedPlaceSchema: z.ZodTypeAny = z.object({\n link: z.string().describe(\"Bing Maps URL\").nullable().optional(),\n title: z.string().describe(\"Related business/location name\").nullable().optional(),\n rating: z.number().describe(\"Rating value\").nullable().optional(),\n source: z.string().describe(\"Rating source platform\").nullable().optional(),\n reviews: z.number().int().describe(\"Review count\").nullable().optional(),\n place_id: z.string().describe(\"Bing identifier\").nullable().optional(),\n thumbnail: z.string().describe(\"Location preview image\").nullable().optional(),\n});\nconst SerpapiBingMaps_PeopleAlsoSearchForSchema: z.ZodTypeAny = z.object({\n items: z.array(SerpapiBingMaps_RelatedPlaceSchema).describe(\"Related location suggestions\").nullable().optional(),\n});\nconst SerpapiBingMaps_PlaceResultsSchema: z.ZodTypeAny = z.object({\n menu: z.string().describe(\"Direct URL to business menu\").nullable().optional(),\n type: z.string().describe(\"Primary business type\").nullable().optional(),\n hours: z.object({}).describe(\"Weekly schedule by day name\").nullable().optional(),\n phone: z.string().describe(\"Contact number\").nullable().optional(),\n title: z.string().describe(\"Establishment name\").nullable().optional(),\n images: z.array(SerpapiBingMaps_PlaceImageSchema).describe(\"Collection of place photos\").nullable().optional(),\n rating: z.number().describe(\"Overall rating value\").nullable().optional(),\n social: z.array(SerpapiBingMaps_SocialLinkSchema).describe(\"Social media profile links\").nullable().optional(),\n address: z.string().describe(\"Full street address\").nullable().optional(),\n claimed: z.boolean().describe(\"Owner verification status\").nullable().optional(),\n reviews: z.array(SerpapiBingMaps_ReviewSourceSchema).describe(\"Review aggregates from platforms\").nullable().optional(),\n website: z.string().describe(\"Homepage URL\").nullable().optional(),\n place_id: z.string().describe(\"Unique Bing identifier\").nullable().optional(),\n amenities: z.array(z.string()).describe(\"Available facilities/features\").nullable().optional(),\n directions: z.string().describe(\"Bing Maps navigation URL\").nullable().optional(),\n open_state: z.string().describe(\"Current operating status\").nullable().optional(),\n customer_says: z.array(SerpapiBingMaps_CustomerSaysSchema).describe(\"AI-summarized feedback\").nullable().optional(),\n service_areas: z.string().describe(\"Geographic regions served\").nullable().optional(),\n total_reviews: z.number().int().describe(\"Count of all reviews\").nullable().optional(),\n gps_coordinates: SerpapiBingMaps_GPSCoordinatesSchema.nullable().optional(),\n rating_provider: z.string().describe(\"Platform providing rating\").nullable().optional(),\n people_also_search_for: SerpapiBingMaps_PeopleAlsoSearchForSchema.nullable().optional(),\n});\nconst SerpapiBingMaps_SearchMetadataSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"Unique identifier for the search\").nullable().optional(),\n status: z.string().describe(\"Processing status\").nullable().optional(),\n created_at: z.string().describe(\"Request submission timestamp\").nullable().optional(),\n processed_at: z.string().describe(\"Request completion timestamp\").nullable().optional(),\n bing_maps_url: z.string().describe(\"Corresponding Bing Maps web search URL\").nullable().optional(),\n json_endpoint: z.string().describe(\"URL to retrieve stored JSON results\").nullable().optional(),\n raw_html_file: z.string().describe(\"URL to unformatted HTML response\").nullable().optional(),\n total_time_taken: z.number().describe(\"Processing duration in seconds\").nullable().optional(),\n prettify_html_file: z.string().describe(\"URL to formatted HTML response\").nullable().optional(),\n});\nexport const SerpapiBingMapsOutput: z.ZodTypeAny = z.object({\n filters: z.array(SerpapiBingMaps_FilterItemSchema).describe(\"Available filter categories\").nullable().optional(),\n local_results: z.array(SerpapiBingMaps_LocalResultCategorySchema).describe(\"Grouped location listings by category\").nullable().optional(),\n place_results: SerpapiBingMaps_PlaceResultsSchema.nullable().optional(),\n search_metadata: SerpapiBingMaps_SearchMetadataSchema.nullable().optional(),\n search_parameters: z.record(z.string(), z.unknown()).describe(\"Echo of submitted request parameters\").nullable().optional(),\n});\n\nexport const serpapiBingMaps = action(\"SERPAPI_BING_MAPS\", {\n slug: \"serpapi-bing-maps\",\n name: \"Bing Maps Search\",\n description: \"Tool to scrape Bing Maps results using SerpApi. Use when you need to find local businesses, places, or get detailed location information including addresses, phone numbers, ratings, reviews, and more. Supports searching by query or specific place ID.\",\n input: SerpapiBingMapsInput,\n output: SerpapiBingMapsOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/bing-maps.d.ts
4
+ declare const SerpapiBingMapsInput: z.ZodTypeAny;
5
+ declare const SerpapiBingMapsOutput: z.ZodTypeAny;
6
+ declare const serpapiBingMaps: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { serpapiBingMaps };
9
+ //# sourceMappingURL=bing-maps.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bing-maps.d.cts","names":[],"sources":["../../src/actions/bing-maps.ts"],"mappings":";;;cAIa,oBAAA,EAAsB,CAAA,CAAE,UAQnC;AAAA,cA4GW,qBAAA,EAAuB,CAAA,CAAE,UAMpC;AAAA,cAEW,eAAA,gCAAe,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/bing-maps.d.ts
4
+ declare const SerpapiBingMapsInput: z.ZodTypeAny;
5
+ declare const SerpapiBingMapsOutput: z.ZodTypeAny;
6
+ declare const serpapiBingMaps: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { serpapiBingMaps };
9
+ //# sourceMappingURL=bing-maps.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bing-maps.d.mts","names":[],"sources":["../../src/actions/bing-maps.ts"],"mappings":";;;cAIa,oBAAA,EAAsB,CAAA,CAAE,UAQnC;AAAA,cA4GW,qBAAA,EAAuB,CAAA,CAAE,UAMpC;AAAA,cAEW,eAAA,gCAAe,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,134 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/bing-maps.ts
4
+ const SerpapiBingMapsInput = z.object({
5
+ q: z.string().describe("Search query for Bing Maps (e.g., 'coffee', 'restaurants', 'hotels near Times Square'). Use specific location queries for better results."),
6
+ cp: z.string().describe("GPS coordinates formatted as 'latitude~longitude' (e.g., '40.7455096~-74.0083012'). Specifies the center point for the search area.").optional(),
7
+ count: z.number().int().describe("Number of results per page (maximum 30). Controls how many results are returned.").optional(),
8
+ first: z.number().int().describe("Result offset for pagination (defaults to 0). Used to retrieve subsequent pages of results.").optional(),
9
+ setlang: z.string().describe("2-character ISO 3166-1 language code for localization (e.g., 'us', 'de', 'gb'). Sets the language for results.").optional(),
10
+ no_cache: z.boolean().describe("Set to true to bypass cached results and force a fresh API call.").optional(),
11
+ place_id: z.string().describe("Unique reference identifier for a specific location. Can be used independently of the q parameter to retrieve details about a specific place.").optional()
12
+ });
13
+ const SerpapiBingMaps_FilterItemSchema = z.object({
14
+ link: z.string().describe("Direct Bing Maps URL with filter applied").nullable().optional(),
15
+ title: z.string().describe("Filter category name").nullable().optional(),
16
+ serpapi_link: z.string().describe("SerpApi endpoint for filtered results").nullable().optional()
17
+ });
18
+ const SerpapiBingMaps_GPSCoordinatesSchema = z.object({
19
+ latitude: z.number().describe("Geographic latitude").nullable().optional(),
20
+ longitude: z.number().describe("Geographic longitude").nullable().optional()
21
+ });
22
+ const SerpapiBingMaps_LocalResultItemSchema = z.object({
23
+ type: z.string().describe("Primary category").nullable().optional(),
24
+ phone: z.string().describe("Contact phone number").nullable().optional(),
25
+ price: z.string().describe("Price tier symbol ($, $$)").nullable().optional(),
26
+ title: z.string().describe("Business/location name").nullable().optional(),
27
+ rating: z.number().describe("Numerical rating score").nullable().optional(),
28
+ source: z.string().describe("Review platform origin").nullable().optional(),
29
+ address: z.string().describe("Physical street address").nullable().optional(),
30
+ reviews: z.number().int().describe("Count of reviews").nullable().optional(),
31
+ website: z.string().describe("Business website URL").nullable().optional(),
32
+ place_id: z.string().describe("Unique Bing identifier").nullable().optional(),
33
+ thumbnail: z.string().describe("Image URL for preview").nullable().optional(),
34
+ open_state: z.string().describe("Operating status with hours").nullable().optional(),
35
+ description: z.string().describe("Summary of services/features").nullable().optional(),
36
+ secondary_type: z.string().describe("Sub-category").nullable().optional(),
37
+ gps_coordinates: SerpapiBingMaps_GPSCoordinatesSchema.nullable().optional(),
38
+ price_description: z.string().describe("Human-readable price level").nullable().optional()
39
+ });
40
+ const SerpapiBingMaps_LocalResultCategorySchema = z.object({
41
+ link: z.string().describe("Bing Maps URL for category").nullable().optional(),
42
+ items: z.array(SerpapiBingMaps_LocalResultItemSchema).describe("Collection of locations in this category").nullable().optional(),
43
+ title: z.string().describe("Category heading").nullable().optional()
44
+ });
45
+ const SerpapiBingMaps_PlaceImageSchema = z.object({
46
+ link: z.string().describe("Bing Images search URL").nullable().optional(),
47
+ thumbnail: z.string().describe("Compressed image URL").nullable().optional()
48
+ });
49
+ const SerpapiBingMaps_SocialLinkSchema = z.object({
50
+ link: z.string().describe("Profile/account URL").nullable().optional(),
51
+ name: z.string().describe("Platform identifier").nullable().optional(),
52
+ thumbnail: z.string().describe("Platform logo URL").nullable().optional()
53
+ });
54
+ const SerpapiBingMaps_ReviewSchema = z.object({
55
+ date: z.string().describe("Publication date").nullable().optional(),
56
+ link: z.string().describe("Direct review URL").nullable().optional(),
57
+ text: z.string().describe("Review body text").nullable().optional(),
58
+ rating: z.number().describe("Individual review score").nullable().optional(),
59
+ user_name: z.string().describe("Reviewer's name").nullable().optional()
60
+ });
61
+ const SerpapiBingMaps_ReviewSourceSchema = z.object({
62
+ rating: z.number().describe("Aggregate rating score").nullable().optional(),
63
+ source: z.string().describe("Review platform name").nullable().optional(),
64
+ reviews: z.array(SerpapiBingMaps_ReviewSchema).describe("Individual review objects").nullable().optional(),
65
+ source_logo: z.string().describe("Platform logo URL").nullable().optional(),
66
+ see_all_link: z.string().describe("URL to all reviews").nullable().optional(),
67
+ total_reviews: z.number().int().describe("Review count").nullable().optional()
68
+ });
69
+ const SerpapiBingMaps_CustomerSaysSchema = z.object({
70
+ text: z.string().describe("AI-generated sentiment summary").nullable().optional(),
71
+ title: z.string().describe("Feedback category").nullable().optional()
72
+ });
73
+ const SerpapiBingMaps_RelatedPlaceSchema = z.object({
74
+ link: z.string().describe("Bing Maps URL").nullable().optional(),
75
+ title: z.string().describe("Related business/location name").nullable().optional(),
76
+ rating: z.number().describe("Rating value").nullable().optional(),
77
+ source: z.string().describe("Rating source platform").nullable().optional(),
78
+ reviews: z.number().int().describe("Review count").nullable().optional(),
79
+ place_id: z.string().describe("Bing identifier").nullable().optional(),
80
+ thumbnail: z.string().describe("Location preview image").nullable().optional()
81
+ });
82
+ const SerpapiBingMaps_PeopleAlsoSearchForSchema = z.object({ items: z.array(SerpapiBingMaps_RelatedPlaceSchema).describe("Related location suggestions").nullable().optional() });
83
+ const SerpapiBingMaps_PlaceResultsSchema = z.object({
84
+ menu: z.string().describe("Direct URL to business menu").nullable().optional(),
85
+ type: z.string().describe("Primary business type").nullable().optional(),
86
+ hours: z.object({}).describe("Weekly schedule by day name").nullable().optional(),
87
+ phone: z.string().describe("Contact number").nullable().optional(),
88
+ title: z.string().describe("Establishment name").nullable().optional(),
89
+ images: z.array(SerpapiBingMaps_PlaceImageSchema).describe("Collection of place photos").nullable().optional(),
90
+ rating: z.number().describe("Overall rating value").nullable().optional(),
91
+ social: z.array(SerpapiBingMaps_SocialLinkSchema).describe("Social media profile links").nullable().optional(),
92
+ address: z.string().describe("Full street address").nullable().optional(),
93
+ claimed: z.boolean().describe("Owner verification status").nullable().optional(),
94
+ reviews: z.array(SerpapiBingMaps_ReviewSourceSchema).describe("Review aggregates from platforms").nullable().optional(),
95
+ website: z.string().describe("Homepage URL").nullable().optional(),
96
+ place_id: z.string().describe("Unique Bing identifier").nullable().optional(),
97
+ amenities: z.array(z.string()).describe("Available facilities/features").nullable().optional(),
98
+ directions: z.string().describe("Bing Maps navigation URL").nullable().optional(),
99
+ open_state: z.string().describe("Current operating status").nullable().optional(),
100
+ customer_says: z.array(SerpapiBingMaps_CustomerSaysSchema).describe("AI-summarized feedback").nullable().optional(),
101
+ service_areas: z.string().describe("Geographic regions served").nullable().optional(),
102
+ total_reviews: z.number().int().describe("Count of all reviews").nullable().optional(),
103
+ gps_coordinates: SerpapiBingMaps_GPSCoordinatesSchema.nullable().optional(),
104
+ rating_provider: z.string().describe("Platform providing rating").nullable().optional(),
105
+ people_also_search_for: SerpapiBingMaps_PeopleAlsoSearchForSchema.nullable().optional()
106
+ });
107
+ const SerpapiBingMaps_SearchMetadataSchema = z.object({
108
+ id: z.string().describe("Unique identifier for the search").nullable().optional(),
109
+ status: z.string().describe("Processing status").nullable().optional(),
110
+ created_at: z.string().describe("Request submission timestamp").nullable().optional(),
111
+ processed_at: z.string().describe("Request completion timestamp").nullable().optional(),
112
+ bing_maps_url: z.string().describe("Corresponding Bing Maps web search URL").nullable().optional(),
113
+ json_endpoint: z.string().describe("URL to retrieve stored JSON results").nullable().optional(),
114
+ raw_html_file: z.string().describe("URL to unformatted HTML response").nullable().optional(),
115
+ total_time_taken: z.number().describe("Processing duration in seconds").nullable().optional(),
116
+ prettify_html_file: z.string().describe("URL to formatted HTML response").nullable().optional()
117
+ });
118
+ const serpapiBingMaps = action("SERPAPI_BING_MAPS", {
119
+ slug: "serpapi-bing-maps",
120
+ name: "Bing Maps Search",
121
+ description: "Tool to scrape Bing Maps results using SerpApi. Use when you need to find local businesses, places, or get detailed location information including addresses, phone numbers, ratings, reviews, and more. Supports searching by query or specific place ID.",
122
+ input: SerpapiBingMapsInput,
123
+ output: z.object({
124
+ filters: z.array(SerpapiBingMaps_FilterItemSchema).describe("Available filter categories").nullable().optional(),
125
+ local_results: z.array(SerpapiBingMaps_LocalResultCategorySchema).describe("Grouped location listings by category").nullable().optional(),
126
+ place_results: SerpapiBingMaps_PlaceResultsSchema.nullable().optional(),
127
+ search_metadata: SerpapiBingMaps_SearchMetadataSchema.nullable().optional(),
128
+ search_parameters: z.record(z.string(), z.unknown()).describe("Echo of submitted request parameters").nullable().optional()
129
+ })
130
+ });
131
+ //#endregion
132
+ export { serpapiBingMaps };
133
+
134
+ //# sourceMappingURL=bing-maps.mjs.map