@keystrokehq/semrush 0.1.4 → 0.1.6

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 (309) hide show
  1. package/dist/action.cjs.map +1 -1
  2. package/dist/action.mjs.map +1 -1
  3. package/dist/actions/account-units-balance.cjs +1 -0
  4. package/dist/actions/account-units-balance.cjs.map +1 -1
  5. package/dist/actions/account-units-balance.d.cts +3 -1
  6. package/dist/actions/account-units-balance.d.cts.map +1 -1
  7. package/dist/actions/account-units-balance.d.mts +3 -1
  8. package/dist/actions/account-units-balance.d.mts.map +1 -1
  9. package/dist/actions/account-units-balance.mjs +1 -0
  10. package/dist/actions/account-units-balance.mjs.map +1 -1
  11. package/dist/actions/ads-copies.cjs +1 -0
  12. package/dist/actions/ads-copies.cjs.map +1 -1
  13. package/dist/actions/ads-copies.d.cts +6 -14
  14. package/dist/actions/ads-copies.d.cts.map +1 -1
  15. package/dist/actions/ads-copies.d.mts +6 -14
  16. package/dist/actions/ads-copies.d.mts.map +1 -1
  17. package/dist/actions/ads-copies.mjs +1 -0
  18. package/dist/actions/ads-copies.mjs.map +1 -1
  19. package/dist/actions/anchors.cjs +1 -0
  20. package/dist/actions/anchors.cjs.map +1 -1
  21. package/dist/actions/anchors.d.cts +4 -9
  22. package/dist/actions/anchors.d.cts.map +1 -1
  23. package/dist/actions/anchors.d.mts +4 -9
  24. package/dist/actions/anchors.d.mts.map +1 -1
  25. package/dist/actions/anchors.mjs +1 -0
  26. package/dist/actions/anchors.mjs.map +1 -1
  27. package/dist/actions/authority-score-profile.cjs +1 -0
  28. package/dist/actions/authority-score-profile.cjs.map +1 -1
  29. package/dist/actions/authority-score-profile.d.cts +4 -5
  30. package/dist/actions/authority-score-profile.d.cts.map +1 -1
  31. package/dist/actions/authority-score-profile.d.mts +4 -5
  32. package/dist/actions/authority-score-profile.d.mts.map +1 -1
  33. package/dist/actions/authority-score-profile.mjs +1 -0
  34. package/dist/actions/authority-score-profile.mjs.map +1 -1
  35. package/dist/actions/backlinks-overview.cjs +1 -0
  36. package/dist/actions/backlinks-overview.cjs.map +1 -1
  37. package/dist/actions/backlinks-overview.d.cts +4 -6
  38. package/dist/actions/backlinks-overview.d.cts.map +1 -1
  39. package/dist/actions/backlinks-overview.d.mts +4 -6
  40. package/dist/actions/backlinks-overview.d.mts.map +1 -1
  41. package/dist/actions/backlinks-overview.mjs +1 -0
  42. package/dist/actions/backlinks-overview.mjs.map +1 -1
  43. package/dist/actions/backlinks.cjs +1 -0
  44. package/dist/actions/backlinks.cjs.map +1 -1
  45. package/dist/actions/backlinks.d.cts +4 -10
  46. package/dist/actions/backlinks.d.cts.map +1 -1
  47. package/dist/actions/backlinks.d.mts +4 -10
  48. package/dist/actions/backlinks.d.mts.map +1 -1
  49. package/dist/actions/backlinks.mjs +1 -0
  50. package/dist/actions/backlinks.mjs.map +1 -1
  51. package/dist/actions/batch-comparison.cjs +1 -0
  52. package/dist/actions/batch-comparison.cjs.map +1 -1
  53. package/dist/actions/batch-comparison.d.cts +4 -6
  54. package/dist/actions/batch-comparison.d.cts.map +1 -1
  55. package/dist/actions/batch-comparison.d.mts +4 -6
  56. package/dist/actions/batch-comparison.d.mts.map +1 -1
  57. package/dist/actions/batch-comparison.mjs +1 -0
  58. package/dist/actions/batch-comparison.mjs.map +1 -1
  59. package/dist/actions/batch-keyword-overview.cjs +1 -0
  60. package/dist/actions/batch-keyword-overview.cjs.map +1 -1
  61. package/dist/actions/batch-keyword-overview.d.cts +6 -12
  62. package/dist/actions/batch-keyword-overview.d.cts.map +1 -1
  63. package/dist/actions/batch-keyword-overview.d.mts +6 -12
  64. package/dist/actions/batch-keyword-overview.d.mts.map +1 -1
  65. package/dist/actions/batch-keyword-overview.mjs +1 -0
  66. package/dist/actions/batch-keyword-overview.mjs.map +1 -1
  67. package/dist/actions/broad-match-keyword.cjs +1 -0
  68. package/dist/actions/broad-match-keyword.cjs.map +1 -1
  69. package/dist/actions/broad-match-keyword.d.cts +6 -15
  70. package/dist/actions/broad-match-keyword.d.cts.map +1 -1
  71. package/dist/actions/broad-match-keyword.d.mts +6 -15
  72. package/dist/actions/broad-match-keyword.d.mts.map +1 -1
  73. package/dist/actions/broad-match-keyword.mjs +1 -0
  74. package/dist/actions/broad-match-keyword.mjs.map +1 -1
  75. package/dist/actions/categories-profile.cjs +1 -0
  76. package/dist/actions/categories-profile.cjs.map +1 -1
  77. package/dist/actions/categories-profile.d.cts +4 -8
  78. package/dist/actions/categories-profile.d.cts.map +1 -1
  79. package/dist/actions/categories-profile.d.mts +4 -8
  80. package/dist/actions/categories-profile.d.mts.map +1 -1
  81. package/dist/actions/categories-profile.mjs +1 -0
  82. package/dist/actions/categories-profile.mjs.map +1 -1
  83. package/dist/actions/categories.cjs +1 -0
  84. package/dist/actions/categories.cjs.map +1 -1
  85. package/dist/actions/categories.d.cts +4 -8
  86. package/dist/actions/categories.d.cts.map +1 -1
  87. package/dist/actions/categories.d.mts +4 -8
  88. package/dist/actions/categories.d.mts.map +1 -1
  89. package/dist/actions/categories.mjs +1 -0
  90. package/dist/actions/categories.mjs.map +1 -1
  91. package/dist/actions/competitors-in-organic-search.cjs +1 -0
  92. package/dist/actions/competitors-in-organic-search.cjs.map +1 -1
  93. package/dist/actions/competitors-in-organic-search.d.cts +6 -14
  94. package/dist/actions/competitors-in-organic-search.d.cts.map +1 -1
  95. package/dist/actions/competitors-in-organic-search.d.mts +6 -14
  96. package/dist/actions/competitors-in-organic-search.d.mts.map +1 -1
  97. package/dist/actions/competitors-in-organic-search.mjs +1 -0
  98. package/dist/actions/competitors-in-organic-search.mjs.map +1 -1
  99. package/dist/actions/competitors-in-paid-search.cjs +1 -0
  100. package/dist/actions/competitors-in-paid-search.cjs.map +1 -1
  101. package/dist/actions/competitors-in-paid-search.d.cts +6 -14
  102. package/dist/actions/competitors-in-paid-search.d.cts.map +1 -1
  103. package/dist/actions/competitors-in-paid-search.d.mts +6 -14
  104. package/dist/actions/competitors-in-paid-search.d.mts.map +1 -1
  105. package/dist/actions/competitors-in-paid-search.mjs +1 -0
  106. package/dist/actions/competitors-in-paid-search.mjs.map +1 -1
  107. package/dist/actions/competitors.cjs +1 -0
  108. package/dist/actions/competitors.cjs.map +1 -1
  109. package/dist/actions/competitors.d.cts +4 -9
  110. package/dist/actions/competitors.d.cts.map +1 -1
  111. package/dist/actions/competitors.d.mts +4 -9
  112. package/dist/actions/competitors.d.mts.map +1 -1
  113. package/dist/actions/competitors.mjs +1 -0
  114. package/dist/actions/competitors.mjs.map +1 -1
  115. package/dist/actions/domain-ad-history.cjs +1 -0
  116. package/dist/actions/domain-ad-history.cjs.map +1 -1
  117. package/dist/actions/domain-ad-history.d.cts +7 -14
  118. package/dist/actions/domain-ad-history.d.cts.map +1 -1
  119. package/dist/actions/domain-ad-history.d.mts +7 -14
  120. package/dist/actions/domain-ad-history.d.mts.map +1 -1
  121. package/dist/actions/domain-ad-history.mjs +1 -0
  122. package/dist/actions/domain-ad-history.mjs.map +1 -1
  123. package/dist/actions/domain-organic-pages.cjs +1 -0
  124. package/dist/actions/domain-organic-pages.cjs.map +1 -1
  125. package/dist/actions/domain-organic-pages.d.cts +6 -15
  126. package/dist/actions/domain-organic-pages.d.cts.map +1 -1
  127. package/dist/actions/domain-organic-pages.d.mts +6 -15
  128. package/dist/actions/domain-organic-pages.d.mts.map +1 -1
  129. package/dist/actions/domain-organic-pages.mjs +1 -0
  130. package/dist/actions/domain-organic-pages.mjs.map +1 -1
  131. package/dist/actions/domain-organic-search-keywords.cjs +1 -0
  132. package/dist/actions/domain-organic-search-keywords.cjs.map +1 -1
  133. package/dist/actions/domain-organic-search-keywords.d.cts +10 -21
  134. package/dist/actions/domain-organic-search-keywords.d.cts.map +1 -1
  135. package/dist/actions/domain-organic-search-keywords.d.mts +10 -21
  136. package/dist/actions/domain-organic-search-keywords.d.mts.map +1 -1
  137. package/dist/actions/domain-organic-search-keywords.mjs +1 -0
  138. package/dist/actions/domain-organic-search-keywords.mjs.map +1 -1
  139. package/dist/actions/domain-organic-subdomains.cjs +1 -0
  140. package/dist/actions/domain-organic-subdomains.cjs.map +1 -1
  141. package/dist/actions/domain-organic-subdomains.d.cts +6 -14
  142. package/dist/actions/domain-organic-subdomains.d.cts.map +1 -1
  143. package/dist/actions/domain-organic-subdomains.d.mts +6 -14
  144. package/dist/actions/domain-organic-subdomains.d.mts.map +1 -1
  145. package/dist/actions/domain-organic-subdomains.mjs +1 -0
  146. package/dist/actions/domain-organic-subdomains.mjs.map +1 -1
  147. package/dist/actions/domain-paid-search-keywords.cjs +1 -0
  148. package/dist/actions/domain-paid-search-keywords.cjs.map +1 -1
  149. package/dist/actions/domain-paid-search-keywords.d.cts +9 -19
  150. package/dist/actions/domain-paid-search-keywords.d.cts.map +1 -1
  151. package/dist/actions/domain-paid-search-keywords.d.mts +9 -19
  152. package/dist/actions/domain-paid-search-keywords.d.mts.map +1 -1
  153. package/dist/actions/domain-paid-search-keywords.mjs +1 -0
  154. package/dist/actions/domain-paid-search-keywords.mjs.map +1 -1
  155. package/dist/actions/domain-pla-search-keywords.cjs +1 -0
  156. package/dist/actions/domain-pla-search-keywords.cjs.map +1 -1
  157. package/dist/actions/domain-pla-search-keywords.d.cts +6 -14
  158. package/dist/actions/domain-pla-search-keywords.d.cts.map +1 -1
  159. package/dist/actions/domain-pla-search-keywords.d.mts +6 -14
  160. package/dist/actions/domain-pla-search-keywords.d.mts.map +1 -1
  161. package/dist/actions/domain-pla-search-keywords.mjs +1 -0
  162. package/dist/actions/domain-pla-search-keywords.mjs.map +1 -1
  163. package/dist/actions/domain-vs-domain.cjs +1 -0
  164. package/dist/actions/domain-vs-domain.cjs.map +1 -1
  165. package/dist/actions/domain-vs-domain.d.cts +6 -15
  166. package/dist/actions/domain-vs-domain.d.cts.map +1 -1
  167. package/dist/actions/domain-vs-domain.d.mts +6 -15
  168. package/dist/actions/domain-vs-domain.d.mts.map +1 -1
  169. package/dist/actions/domain-vs-domain.mjs +1 -0
  170. package/dist/actions/domain-vs-domain.mjs.map +1 -1
  171. package/dist/actions/historical-data.cjs +1 -0
  172. package/dist/actions/historical-data.cjs.map +1 -1
  173. package/dist/actions/historical-data.d.cts +3 -7
  174. package/dist/actions/historical-data.d.cts.map +1 -1
  175. package/dist/actions/historical-data.d.mts +3 -7
  176. package/dist/actions/historical-data.d.mts.map +1 -1
  177. package/dist/actions/historical-data.mjs +1 -0
  178. package/dist/actions/historical-data.mjs.map +1 -1
  179. package/dist/actions/indexed-pages.cjs +1 -0
  180. package/dist/actions/indexed-pages.cjs.map +1 -1
  181. package/dist/actions/indexed-pages.d.cts +4 -9
  182. package/dist/actions/indexed-pages.d.cts.map +1 -1
  183. package/dist/actions/indexed-pages.d.mts +4 -9
  184. package/dist/actions/indexed-pages.d.mts.map +1 -1
  185. package/dist/actions/indexed-pages.mjs +1 -0
  186. package/dist/actions/indexed-pages.mjs.map +1 -1
  187. package/dist/actions/keyword-difficulty.cjs +1 -0
  188. package/dist/actions/keyword-difficulty.cjs.map +1 -1
  189. package/dist/actions/keyword-difficulty.d.cts +6 -9
  190. package/dist/actions/keyword-difficulty.d.cts.map +1 -1
  191. package/dist/actions/keyword-difficulty.d.mts +6 -9
  192. package/dist/actions/keyword-difficulty.d.mts.map +1 -1
  193. package/dist/actions/keyword-difficulty.mjs +1 -0
  194. package/dist/actions/keyword-difficulty.mjs.map +1 -1
  195. package/dist/actions/keyword-overview-all-databases.cjs +1 -0
  196. package/dist/actions/keyword-overview-all-databases.cjs.map +1 -1
  197. package/dist/actions/keyword-overview-all-databases.d.cts +6 -10
  198. package/dist/actions/keyword-overview-all-databases.d.cts.map +1 -1
  199. package/dist/actions/keyword-overview-all-databases.d.mts +6 -10
  200. package/dist/actions/keyword-overview-all-databases.d.mts.map +1 -1
  201. package/dist/actions/keyword-overview-all-databases.mjs +1 -0
  202. package/dist/actions/keyword-overview-all-databases.mjs.map +1 -1
  203. package/dist/actions/keyword-overview-one-database.cjs +1 -0
  204. package/dist/actions/keyword-overview-one-database.cjs.map +1 -1
  205. package/dist/actions/keyword-overview-one-database.d.cts +6 -11
  206. package/dist/actions/keyword-overview-one-database.d.cts.map +1 -1
  207. package/dist/actions/keyword-overview-one-database.d.mts +6 -11
  208. package/dist/actions/keyword-overview-one-database.d.mts.map +1 -1
  209. package/dist/actions/keyword-overview-one-database.mjs +1 -0
  210. package/dist/actions/keyword-overview-one-database.mjs.map +1 -1
  211. package/dist/actions/keywords-ads-history.cjs +1 -0
  212. package/dist/actions/keywords-ads-history.cjs.map +1 -1
  213. package/dist/actions/keywords-ads-history.d.cts +7 -14
  214. package/dist/actions/keywords-ads-history.d.cts.map +1 -1
  215. package/dist/actions/keywords-ads-history.d.mts +7 -14
  216. package/dist/actions/keywords-ads-history.d.mts.map +1 -1
  217. package/dist/actions/keywords-ads-history.mjs +1 -0
  218. package/dist/actions/keywords-ads-history.mjs.map +1 -1
  219. package/dist/actions/organic-results.cjs +1 -0
  220. package/dist/actions/organic-results.cjs.map +1 -1
  221. package/dist/actions/organic-results.d.cts +6 -14
  222. package/dist/actions/organic-results.d.cts.map +1 -1
  223. package/dist/actions/organic-results.d.mts +6 -14
  224. package/dist/actions/organic-results.d.mts.map +1 -1
  225. package/dist/actions/organic-results.mjs +1 -0
  226. package/dist/actions/organic-results.mjs.map +1 -1
  227. package/dist/actions/paid-results.cjs +1 -0
  228. package/dist/actions/paid-results.cjs.map +1 -1
  229. package/dist/actions/paid-results.d.cts +6 -13
  230. package/dist/actions/paid-results.d.cts.map +1 -1
  231. package/dist/actions/paid-results.d.mts +6 -13
  232. package/dist/actions/paid-results.d.mts.map +1 -1
  233. package/dist/actions/paid-results.mjs +1 -0
  234. package/dist/actions/paid-results.mjs.map +1 -1
  235. package/dist/actions/phrase-questions.cjs +1 -0
  236. package/dist/actions/phrase-questions.cjs.map +1 -1
  237. package/dist/actions/phrase-questions.d.cts +6 -14
  238. package/dist/actions/phrase-questions.d.cts.map +1 -1
  239. package/dist/actions/phrase-questions.d.mts +6 -14
  240. package/dist/actions/phrase-questions.d.mts.map +1 -1
  241. package/dist/actions/phrase-questions.mjs +1 -0
  242. package/dist/actions/phrase-questions.mjs.map +1 -1
  243. package/dist/actions/pla-competitors.cjs +1 -0
  244. package/dist/actions/pla-competitors.cjs.map +1 -1
  245. package/dist/actions/pla-competitors.d.cts +6 -13
  246. package/dist/actions/pla-competitors.d.cts.map +1 -1
  247. package/dist/actions/pla-competitors.d.mts +6 -13
  248. package/dist/actions/pla-competitors.d.mts.map +1 -1
  249. package/dist/actions/pla-competitors.mjs +1 -0
  250. package/dist/actions/pla-competitors.mjs.map +1 -1
  251. package/dist/actions/pla-copies.cjs +1 -0
  252. package/dist/actions/pla-copies.cjs.map +1 -1
  253. package/dist/actions/pla-copies.d.cts +6 -14
  254. package/dist/actions/pla-copies.d.cts.map +1 -1
  255. package/dist/actions/pla-copies.d.mts +6 -14
  256. package/dist/actions/pla-copies.d.mts.map +1 -1
  257. package/dist/actions/pla-copies.mjs +1 -0
  258. package/dist/actions/pla-copies.mjs.map +1 -1
  259. package/dist/actions/referring-domains-by-country.cjs +1 -0
  260. package/dist/actions/referring-domains-by-country.cjs.map +1 -1
  261. package/dist/actions/referring-domains-by-country.d.cts +4 -9
  262. package/dist/actions/referring-domains-by-country.d.cts.map +1 -1
  263. package/dist/actions/referring-domains-by-country.d.mts +4 -9
  264. package/dist/actions/referring-domains-by-country.d.mts.map +1 -1
  265. package/dist/actions/referring-domains-by-country.mjs +1 -0
  266. package/dist/actions/referring-domains-by-country.mjs.map +1 -1
  267. package/dist/actions/referring-domains.cjs +1 -0
  268. package/dist/actions/referring-domains.cjs.map +1 -1
  269. package/dist/actions/referring-domains.d.cts +4 -10
  270. package/dist/actions/referring-domains.d.cts.map +1 -1
  271. package/dist/actions/referring-domains.d.mts +4 -10
  272. package/dist/actions/referring-domains.d.mts.map +1 -1
  273. package/dist/actions/referring-domains.mjs +1 -0
  274. package/dist/actions/referring-domains.mjs.map +1 -1
  275. package/dist/actions/referring-i-ps.cjs +1 -0
  276. package/dist/actions/referring-i-ps.cjs.map +1 -1
  277. package/dist/actions/referring-i-ps.d.cts +4 -9
  278. package/dist/actions/referring-i-ps.d.cts.map +1 -1
  279. package/dist/actions/referring-i-ps.d.mts +4 -9
  280. package/dist/actions/referring-i-ps.d.mts.map +1 -1
  281. package/dist/actions/referring-i-ps.mjs +1 -0
  282. package/dist/actions/referring-i-ps.mjs.map +1 -1
  283. package/dist/actions/related-keywords.cjs +1 -0
  284. package/dist/actions/related-keywords.cjs.map +1 -1
  285. package/dist/actions/related-keywords.d.cts +6 -15
  286. package/dist/actions/related-keywords.d.cts.map +1 -1
  287. package/dist/actions/related-keywords.d.mts +6 -15
  288. package/dist/actions/related-keywords.d.mts.map +1 -1
  289. package/dist/actions/related-keywords.mjs +1 -0
  290. package/dist/actions/related-keywords.mjs.map +1 -1
  291. package/dist/actions/tld-distribution.cjs +1 -0
  292. package/dist/actions/tld-distribution.cjs.map +1 -1
  293. package/dist/actions/tld-distribution.d.cts +4 -9
  294. package/dist/actions/tld-distribution.d.cts.map +1 -1
  295. package/dist/actions/tld-distribution.d.mts +4 -9
  296. package/dist/actions/tld-distribution.d.mts.map +1 -1
  297. package/dist/actions/tld-distribution.mjs +1 -0
  298. package/dist/actions/tld-distribution.mjs.map +1 -1
  299. package/dist/app.cjs +5 -2
  300. package/dist/app.cjs.map +1 -1
  301. package/dist/app.d.cts +7 -1
  302. package/dist/app.d.cts.map +1 -1
  303. package/dist/app.d.mts +7 -1
  304. package/dist/app.d.mts.map +1 -1
  305. package/dist/app.mjs +3 -2
  306. package/dist/app.mjs.map +1 -1
  307. package/dist/index.d.cts +1 -1
  308. package/dist/index.d.mts +1 -1
  309. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"domain-vs-domain.mjs","names":[],"sources":["../../src/actions/domain-vs-domain.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushDomainVsDomainInput = z.object({\n domains: z.string().describe(\"A URL-encoded string specifying the domains to compare and the comparison logic, separated by the '|' symbol. Each domain entry follows the format: <sign>|<type>|<domain>. Up to five domains can be compared. \\n<sign>: Operation type (+, -, *, /).\\n<type>: Keyword type ('or' for organic, 'ad' for paid).\\n<domain>: The domain name.\\nExamples of combinations:\\n• Shared keywords: *|or|<your_domain>|*|or|<domain2>|*|or|<domain3>\\n• All keywords: *|or|<your_domain>|+|or|<domain2>|+|or|<domain3>\\n• Unique keywords for your domain: *|or|<your_domain>|-|or|<domain2>|-|or|<domain3>\\n• Untapped keywords (keywords in others, not yours): *|or|<domain2>|+|or|<domain3>|-|or|<your_domain>\\n• Missing keywords (keywords in common among others, not yours): *|or|<domain2>|*|or|<domain3>|-|or|<your_domain>\\n• Keywords exclusive to one domain: *|or|<your_domain>|/|or|<domain2>|/|or|<domain3> (API only).\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"Regional database for the query. Refer to `DatabaseEnum` or SEMrush documentation for a complete list.\"),\n display_date: z.string().describe(\"Report date in YYYYMM15 format (e.g., '20231015') for historical/current data. Latest data used if omitted.\").optional(),\n display_sort: z.enum([\"p0_asc\", \"p0_desc\", \"p1_asc\", \"p1_desc\", \"p2_asc\", \"p2_desc\", \"p3_asc\", \"p3_desc\", \"p4_asc\", \"p4_desc\", \"nq_asc\", \"nq_desc\", \"co_asc\", \"co_desc\", \"cp_asc\", \"cp_desc\", \"nr_asc\", \"nr_desc\"]).default(\"p0_desc\").describe(\"Sorting criteria: 'columnName_direction' (e.g., 'p0_desc'). See `DomainVsDomainSortOrder` for options.\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Maximum number of keywords to return. Use with `display_offset` for pagination of large datasets (up to 100,000 results per call is typical).\").optional(),\n export_decode: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Controls if the response is URL-decoded. 1: decode response; 0: return URL-encoded string.\").optional(),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Controls if special characters in output are escaped. 1: escape (columns wrapped in \\\\\\\"\\\\\\\"); 0: no escaping.\").optional(),\n display_filter: z.array(z.enum([\"Ph\", \"P0\", \"P1\", \"P2\", \"P3\", \"P4\", \"Nq\", \"Cp\", \"Co\", \"Nr\"])).default([]).describe(\"List of column codes from `DomainVsDomainFilterType` to filter results. Behavior is API-specific.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial results to skip for pagination with `display_limit`. For instance, `display_offset=10000` and `display_limit=10000` retrieves results 10,001-20,000.\").optional(),\n export_columns: z.array(z.enum([\"Ph\", \"P0\", \"P1\", \"P2\", \"P3\", \"P4\", \"Nr\", \"Cp\", \"Nq\", \"Kd\", \"Co\", \"Td\"])).default([\"Ph\",\"P0\",\"P1\",\"P2\",\"P3\",\"P4\",\"Nr\",\"Cp\",\"Nq\",\"Kd\",\"Co\",\"Td\"]).describe(\"Columns to include in the report. All default columns are returned if empty. See `DomainVsDomainExportColumns` for codes.\").optional(),\n}).describe(\"Request schema for Domain Keyword Gap Analysis (DomainVsDomain).\");\nexport const SemrushDomainVsDomainOutput = z.object({\n data: z.string().describe(\"The API response data, typically a string in a table-like format (e.g., CSV-like with lines separated by newlines and columns by semicolons). The structure and encoding depend on parameters like `export_columns`, `export_escape`, and `export_decode`.\").nullable(),\n}).passthrough().describe(\"Response schema for Domain Keyword Gap Analysis (DomainVsDomain).\");\n\nexport const semrushDomainVsDomain = action(\"SEMRUSH_DOMAIN_VS_DOMAIN\", {\n slug: \"semrush-domain-vs-domain\",\n name: \"Compare domains\",\n description: \"Analyzes keyword rankings by comparing up to five domains to find common, unique, or gap keywords, using specified organic/paid types and comparison logic in the `domains` string.\",\n input: SemrushDomainVsDomainInput,\n output: SemrushDomainVsDomainOutput,\n});\n"],"mappings":";;AAoBA,MAAa,wBAAwB,OAAO,4BAA4B;CACtE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OApBwC,EAAE,OAAO;EACjD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,g4BAAg4B;EAC75B,UAAU,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAiB;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,SAAS,wGAAwG;EAC9oC,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EAC1J,cAAc,EAAE,KAAK;GAAC;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;EAAS,CAAC,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;EACnW,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAK,CAAC,CAAC,SAAS,+IAA+I,CAAC,CAAC,SAAS;EAClN,eAAe,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,4FAA4F,CAAC,CAAC,SAAS;EAChL,eAAe,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,gHAAgH,CAAC,CAAC,SAAS;EACpM,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;EACjO,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,wKAAwK,CAAC,CAAC,SAAS;EACxO,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,CAAC,QAAQ;GAAC;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;EAAI,CAAC,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAClU,CAAC,CAAC,CAAC,SAAS,kEASH;CACP,QATyC,EAAE,OAAO,EAClD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,4PAA4P,CAAC,CAAC,SAAS,EACnS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mEAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"domain-vs-domain.mjs","names":[],"sources":["../../src/actions/domain-vs-domain.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushDomainVsDomainInput = z.object({\n domains: z.string().describe(\"A URL-encoded string specifying the domains to compare and the comparison logic, separated by the '|' symbol. Each domain entry follows the format: <sign>|<type>|<domain>. Up to five domains can be compared. \\n<sign>: Operation type (+, -, *, /).\\n<type>: Keyword type ('or' for organic, 'ad' for paid).\\n<domain>: The domain name.\\nExamples of combinations:\\n• Shared keywords: *|or|<your_domain>|*|or|<domain2>|*|or|<domain3>\\n• All keywords: *|or|<your_domain>|+|or|<domain2>|+|or|<domain3>\\n• Unique keywords for your domain: *|or|<your_domain>|-|or|<domain2>|-|or|<domain3>\\n• Untapped keywords (keywords in others, not yours): *|or|<domain2>|+|or|<domain3>|-|or|<your_domain>\\n• Missing keywords (keywords in common among others, not yours): *|or|<domain2>|*|or|<domain3>|-|or|<your_domain>\\n• Keywords exclusive to one domain: *|or|<your_domain>|/|or|<domain2>|/|or|<domain3> (API only).\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"Regional database for the query. Refer to `DatabaseEnum` or SEMrush documentation for a complete list.\"),\n display_date: z.string().describe(\"Report date in YYYYMM15 format (e.g., '20231015') for historical/current data. Latest data used if omitted.\").optional(),\n display_sort: z.enum([\"p0_asc\", \"p0_desc\", \"p1_asc\", \"p1_desc\", \"p2_asc\", \"p2_desc\", \"p3_asc\", \"p3_desc\", \"p4_asc\", \"p4_desc\", \"nq_asc\", \"nq_desc\", \"co_asc\", \"co_desc\", \"cp_asc\", \"cp_desc\", \"nr_asc\", \"nr_desc\"]).default(\"p0_desc\").describe(\"Sorting criteria: 'columnName_direction' (e.g., 'p0_desc'). See `DomainVsDomainSortOrder` for options.\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Maximum number of keywords to return. Use with `display_offset` for pagination of large datasets (up to 100,000 results per call is typical).\").optional(),\n export_decode: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Controls if the response is URL-decoded. 1: decode response; 0: return URL-encoded string.\").optional(),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Controls if special characters in output are escaped. 1: escape (columns wrapped in \\\\\\\"\\\\\\\"); 0: no escaping.\").optional(),\n display_filter: z.array(z.enum([\"Ph\", \"P0\", \"P1\", \"P2\", \"P3\", \"P4\", \"Nq\", \"Cp\", \"Co\", \"Nr\"])).default([]).describe(\"List of column codes from `DomainVsDomainFilterType` to filter results. Behavior is API-specific.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial results to skip for pagination with `display_limit`. For instance, `display_offset=10000` and `display_limit=10000` retrieves results 10,001-20,000.\").optional(),\n export_columns: z.array(z.enum([\"Ph\", \"P0\", \"P1\", \"P2\", \"P3\", \"P4\", \"Nr\", \"Cp\", \"Nq\", \"Kd\", \"Co\", \"Td\"])).default([\"Ph\",\"P0\",\"P1\",\"P2\",\"P3\",\"P4\",\"Nr\",\"Cp\",\"Nq\",\"Kd\",\"Co\",\"Td\"]).describe(\"Columns to include in the report. All default columns are returned if empty. See `DomainVsDomainExportColumns` for codes.\").optional(),\n}).describe(\"Request schema for Domain Keyword Gap Analysis (DomainVsDomain).\");\nexport const SemrushDomainVsDomainOutput = z.object({\n data: z.string().describe(\"The API response data, typically a string in a table-like format (e.g., CSV-like with lines separated by newlines and columns by semicolons). The structure and encoding depend on parameters like `export_columns`, `export_escape`, and `export_decode`.\").nullable(),\n}).passthrough().describe(\"Response schema for Domain Keyword Gap Analysis (DomainVsDomain).\");\n\nexport const semrushDomainVsDomain: AppAction<\n typeof SemrushDomainVsDomainInput,\n typeof SemrushDomainVsDomainOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_DOMAIN_VS_DOMAIN\", {\n slug: \"semrush-domain-vs-domain\",\n name: \"Compare domains\",\n description: \"Analyzes keyword rankings by comparing up to five domains to find common, unique, or gap keywords, using specified organic/paid types and comparison logic in the `domains` string.\",\n input: SemrushDomainVsDomainInput,\n output: SemrushDomainVsDomainOutput,\n});\n"],"mappings":";;;AAsBA,MAAa,wBAIT,OAAO,4BAA4B;CACrC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAxBwC,EAAE,OAAO;EACjD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,g4BAAg4B;EAC75B,UAAU,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAiB;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,SAAS,wGAAwG;EAC9oC,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EAC1J,cAAc,EAAE,KAAK;GAAC;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;GAAW;GAAU;EAAS,CAAC,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;EACnW,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAK,CAAC,CAAC,SAAS,+IAA+I,CAAC,CAAC,SAAS;EAClN,eAAe,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,4FAA4F,CAAC,CAAC,SAAS;EAChL,eAAe,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,gHAAgH,CAAC,CAAC,SAAS;EACpM,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;EACjO,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,wKAAwK,CAAC,CAAC,SAAS;EACxO,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,CAAC,QAAQ;GAAC;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;GAAK;EAAI,CAAC,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAClU,CAAC,CAAC,CAAC,SAAS,kEAaH;CACP,QAbyC,EAAE,OAAO,EAClD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,4PAA4P,CAAC,CAAC,SAAS,EACnS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mEAWhB;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/historical-data.ts
@@ -1 +1 @@
1
- {"version":3,"file":"historical-data.cjs","names":["z","action"],"sources":["../../src/actions/historical-data.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushHistoricalDataInput = z.object({\n target: z.string().describe(\"The root domain URL (e.g., 'example.com') for which to retrieve historical backlink data.\"),\n target_type: z.string().describe(\"The type of target. Must be 'root_domain' for this action.\"),\n display_limit: z.number().int().default(0).describe(\"Maximum number of historical data records (lines) to return. If 0 (default), the API backend uses 10,000. Max: 1,000,000.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial records to skip in the results.\").optional(),\n export_columns: z.array(z.enum([\"date\", \"backlinks_num\", \"domains_num\", \"score\"])).default([\"date\",\"backlinks_num\",\"domains_num\",\"score\"]).describe(\"Specifies data columns for the report. Defaults to all: `date`, `backlinks_num`, `domains_num`, `score`.\").optional(),\n}).describe(\"Request schema for `HistoricalData`\");\nexport const SemrushHistoricalDataOutput = z.object({\n data: z.string().describe(\"String of historical data: each line is a monthly record (Unix timestamp, requested metrics), sorted newest to oldest. Columns depend on `export_columns`.\").nullable(),\n}).passthrough().describe(\"Response schema for `HistoricalData`\");\n\nexport const semrushHistoricalData = action(\"SEMRUSH_HISTORICAL_DATA\", {\n slug: \"semrush-historical-data\",\n name: \"Get historical data\",\n description: \"Retrieves monthly historical backlink and referring domain data for a specified root domain, returned as a time series string with newest records first.\",\n input: SemrushHistoricalDataInput,\n output: SemrushHistoricalDataOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA6BA,IAAAA,EAAE,OAAO;CACjD,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2FAA2F;CACvH,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;CAC7F,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAC1L,gBAAgBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CACnH,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAQ;EAAiB;EAAe;CAAO,CAAC,CAAC,CAAC,CAAC,QAAQ;EAAC;EAAO;EAAgB;EAAc;CAAO,CAAC,CAAC,CAAC,SAAS,0GAA0G,CAAC,CAAC,SAAS;AAC3Q,CAAC,CAAC,CAAC,SAAS,qCAAqC;AACjD,MAAa,8BAA8BA,IAAAA,EAAE,OAAO,EAClD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J,CAAC,CAAC,SAAS,EACnM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sCAAsC;AAEhE,MAAa,wBAAwBC,eAAAA,OAAO,2BAA2B;CACrE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"historical-data.cjs","names":["z","action"],"sources":["../../src/actions/historical-data.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushHistoricalDataInput = z.object({\n target: z.string().describe(\"The root domain URL (e.g., 'example.com') for which to retrieve historical backlink data.\"),\n target_type: z.string().describe(\"The type of target. Must be 'root_domain' for this action.\"),\n display_limit: z.number().int().default(0).describe(\"Maximum number of historical data records (lines) to return. If 0 (default), the API backend uses 10,000. Max: 1,000,000.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial records to skip in the results.\").optional(),\n export_columns: z.array(z.enum([\"date\", \"backlinks_num\", \"domains_num\", \"score\"])).default([\"date\",\"backlinks_num\",\"domains_num\",\"score\"]).describe(\"Specifies data columns for the report. Defaults to all: `date`, `backlinks_num`, `domains_num`, `score`.\").optional(),\n}).describe(\"Request schema for `HistoricalData`\");\nexport const SemrushHistoricalDataOutput = z.object({\n data: z.string().describe(\"String of historical data: each line is a monthly record (Unix timestamp, requested metrics), sorted newest to oldest. Columns depend on `export_columns`.\").nullable(),\n}).passthrough().describe(\"Response schema for `HistoricalData`\");\n\nexport const semrushHistoricalData: AppAction<\n typeof SemrushHistoricalDataInput,\n typeof SemrushHistoricalDataOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_HISTORICAL_DATA\", {\n slug: \"semrush-historical-data\",\n name: \"Get historical data\",\n description: \"Retrieves monthly historical backlink and referring domain data for a specified root domain, returned as a time series string with newest records first.\",\n input: SemrushHistoricalDataInput,\n output: SemrushHistoricalDataOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,6BAA6BA,IAAAA,EAAE,OAAO;CACjD,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2FAA2F;CACvH,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;CAC7F,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAC1L,gBAAgBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CACnH,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAQ;EAAiB;EAAe;CAAO,CAAC,CAAC,CAAC,CAAC,QAAQ;EAAC;EAAO;EAAgB;EAAc;CAAO,CAAC,CAAC,CAAC,SAAS,0GAA0G,CAAC,CAAC,SAAS;AAC3Q,CAAC,CAAC,CAAC,SAAS,qCAAqC;AACjD,MAAa,8BAA8BA,IAAAA,EAAE,OAAO,EAClD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J,CAAC,CAAC,SAAS,EACnM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sCAAsC;AAEhE,MAAa,wBAITC,eAAAA,OAAO,2BAA2B;CACpC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { semrush } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/historical-data.d.ts
@@ -16,13 +18,7 @@ declare const SemrushHistoricalDataInput: z.ZodObject<{
16
18
  declare const SemrushHistoricalDataOutput: z.ZodObject<{
17
19
  data: z.ZodNullable<z.ZodString>;
18
20
  }, z.core.$loose>;
19
- declare const semrushHistoricalData: import("@keystrokehq/action").WorkflowActionDefinition<{
20
- target: string;
21
- target_type: string;
22
- display_limit?: number | undefined;
23
- display_offset?: number | undefined;
24
- export_columns?: ("date" | "domains_num" | "backlinks_num" | "score")[] | undefined;
25
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
21
+ declare const semrushHistoricalData: AppAction<typeof SemrushHistoricalDataInput, typeof SemrushHistoricalDataOutput, typeof semrush.credential>;
26
22
  //#endregion
27
23
  export { semrushHistoricalData };
28
24
  //# sourceMappingURL=historical-data.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"historical-data.d.cts","names":[],"sources":["../../src/actions/historical-data.ts"],"mappings":";;;cAIa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;;;;cAO1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;cAI3B,qBAAA,gCAAqB,wBAAA"}
1
+ {"version":3,"file":"historical-data.d.cts","names":[],"sources":["../../src/actions/historical-data.ts"],"mappings":";;;;;cAMa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;;;;cAO1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;cAI3B,qBAAA,EAAuB,SAAA,QAC3B,0BAAA,SACA,2BAAA,SACA,OAAA,CAAQ,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { semrush } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/historical-data.d.ts
@@ -16,13 +18,7 @@ declare const SemrushHistoricalDataInput: z.ZodObject<{
16
18
  declare const SemrushHistoricalDataOutput: z.ZodObject<{
17
19
  data: z.ZodNullable<z.ZodString>;
18
20
  }, z.core.$loose>;
19
- declare const semrushHistoricalData: import("@keystrokehq/action").WorkflowActionDefinition<{
20
- target: string;
21
- target_type: string;
22
- display_limit?: number | undefined;
23
- display_offset?: number | undefined;
24
- export_columns?: ("date" | "domains_num" | "backlinks_num" | "score")[] | undefined;
25
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
21
+ declare const semrushHistoricalData: AppAction<typeof SemrushHistoricalDataInput, typeof SemrushHistoricalDataOutput, typeof semrush.credential>;
26
22
  //#endregion
27
23
  export { semrushHistoricalData };
28
24
  //# sourceMappingURL=historical-data.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"historical-data.d.mts","names":[],"sources":["../../src/actions/historical-data.ts"],"mappings":";;;cAIa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;;;;cAO1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;cAI3B,qBAAA,gCAAqB,wBAAA"}
1
+ {"version":3,"file":"historical-data.d.mts","names":[],"sources":["../../src/actions/historical-data.ts"],"mappings":";;;;;cAMa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;;;;cAO1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;cAI3B,qBAAA,EAAuB,SAAA,QAC3B,0BAAA,SACA,2BAAA,SACA,OAAA,CAAQ,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const semrushHistoricalData = action("SEMRUSH_HISTORICAL_DATA", {
@@ -1 +1 @@
1
- {"version":3,"file":"historical-data.mjs","names":[],"sources":["../../src/actions/historical-data.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushHistoricalDataInput = z.object({\n target: z.string().describe(\"The root domain URL (e.g., 'example.com') for which to retrieve historical backlink data.\"),\n target_type: z.string().describe(\"The type of target. Must be 'root_domain' for this action.\"),\n display_limit: z.number().int().default(0).describe(\"Maximum number of historical data records (lines) to return. If 0 (default), the API backend uses 10,000. Max: 1,000,000.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial records to skip in the results.\").optional(),\n export_columns: z.array(z.enum([\"date\", \"backlinks_num\", \"domains_num\", \"score\"])).default([\"date\",\"backlinks_num\",\"domains_num\",\"score\"]).describe(\"Specifies data columns for the report. Defaults to all: `date`, `backlinks_num`, `domains_num`, `score`.\").optional(),\n}).describe(\"Request schema for `HistoricalData`\");\nexport const SemrushHistoricalDataOutput = z.object({\n data: z.string().describe(\"String of historical data: each line is a monthly record (Unix timestamp, requested metrics), sorted newest to oldest. Columns depend on `export_columns`.\").nullable(),\n}).passthrough().describe(\"Response schema for `HistoricalData`\");\n\nexport const semrushHistoricalData = action(\"SEMRUSH_HISTORICAL_DATA\", {\n slug: \"semrush-historical-data\",\n name: \"Get historical data\",\n description: \"Retrieves monthly historical backlink and referring domain data for a specified root domain, returned as a time series string with newest records first.\",\n input: SemrushHistoricalDataInput,\n output: SemrushHistoricalDataOutput,\n});\n"],"mappings":";;AAeA,MAAa,wBAAwB,OAAO,2BAA2B;CACrE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAfwC,EAAE,OAAO;EACjD,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,2FAA2F;EACvH,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;EAC7F,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;EAC1L,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;EACnH,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAQ;GAAiB;GAAe;EAAO,CAAC,CAAC,CAAC,CAAC,QAAQ;GAAC;GAAO;GAAgB;GAAc;EAAO,CAAC,CAAC,CAAC,SAAS,0GAA0G,CAAC,CAAC,SAAS;CAC3Q,CAAC,CAAC,CAAC,SAAS,qCASH;CACP,QATyC,EAAE,OAAO,EAClD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J,CAAC,CAAC,SAAS,EACnM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sCAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"historical-data.mjs","names":[],"sources":["../../src/actions/historical-data.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushHistoricalDataInput = z.object({\n target: z.string().describe(\"The root domain URL (e.g., 'example.com') for which to retrieve historical backlink data.\"),\n target_type: z.string().describe(\"The type of target. Must be 'root_domain' for this action.\"),\n display_limit: z.number().int().default(0).describe(\"Maximum number of historical data records (lines) to return. If 0 (default), the API backend uses 10,000. Max: 1,000,000.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial records to skip in the results.\").optional(),\n export_columns: z.array(z.enum([\"date\", \"backlinks_num\", \"domains_num\", \"score\"])).default([\"date\",\"backlinks_num\",\"domains_num\",\"score\"]).describe(\"Specifies data columns for the report. Defaults to all: `date`, `backlinks_num`, `domains_num`, `score`.\").optional(),\n}).describe(\"Request schema for `HistoricalData`\");\nexport const SemrushHistoricalDataOutput = z.object({\n data: z.string().describe(\"String of historical data: each line is a monthly record (Unix timestamp, requested metrics), sorted newest to oldest. Columns depend on `export_columns`.\").nullable(),\n}).passthrough().describe(\"Response schema for `HistoricalData`\");\n\nexport const semrushHistoricalData: AppAction<\n typeof SemrushHistoricalDataInput,\n typeof SemrushHistoricalDataOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_HISTORICAL_DATA\", {\n slug: \"semrush-historical-data\",\n name: \"Get historical data\",\n description: \"Retrieves monthly historical backlink and referring domain data for a specified root domain, returned as a time series string with newest records first.\",\n input: SemrushHistoricalDataInput,\n output: SemrushHistoricalDataOutput,\n});\n"],"mappings":";;;AAiBA,MAAa,wBAIT,OAAO,2BAA2B;CACpC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAnBwC,EAAE,OAAO;EACjD,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,2FAA2F;EACvH,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;EAC7F,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;EAC1L,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;EACnH,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAQ;GAAiB;GAAe;EAAO,CAAC,CAAC,CAAC,CAAC,QAAQ;GAAC;GAAO;GAAgB;GAAc;EAAO,CAAC,CAAC,CAAC,SAAS,0GAA0G,CAAC,CAAC,SAAS;CAC3Q,CAAC,CAAC,CAAC,SAAS,qCAaH;CACP,QAbyC,EAAE,OAAO,EAClD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J,CAAC,CAAC,SAAS,EACnM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sCAWhB;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/indexed-pages.ts
@@ -1 +1 @@
1
- {"version":3,"file":"indexed-pages.cjs","names":["z","action"],"sources":["../../src/actions/indexed-pages.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushIndexedPagesInput = z.object({\n target: z.string().describe(\"Target URL, domain, or root domain for which to retrieve indexed pages data.\"),\n target_type: z.enum([\"root_domain\", \"domain\", \"url\"]).describe(\"Type of the target.\"),\n display_sort: z.enum([\"backlinks_num_asc\", \"backlinks_num_desc\", \"domains_num_asc\", \"domains_num_desc\", \"last_seen_asc\", \"last_seen_desc\"]).default(\"backlinks_num_desc\").describe(\"Sorting criteria for the results.\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Maximum number of results to return.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial results to skip. Note: When using `display_offset`, the `display_limit` should be the desired number of results plus the `display_offset` (e.g., for 100 results after skipping 50, set `display_offset=50`, `display_limit=150`).\").optional(),\n export_columns: z.array(z.enum([\"source_url\", \"source_title\", \"response_code\", \"backlinks_num\", \"domains_num\", \"last_seen\", \"external_num\", \"internal_num\"]).describe(\"Available columns for the Indexed Pages report.\")).default([\"source_url\",\"source_title\",\"response_code\",\"backlinks_num\",\"domains_num\",\"last_seen\",\"external_num\",\"internal_num\"]).describe(\"Specific columns for the report; defaults to all available columns if omitted.\").optional(),\n}).describe(\"Request schema for retrieving indexed pages information from Semrush.\");\nexport const SemrushIndexedPagesOutput = z.object({\n data: z.string().describe(\"A string containing the report data, typically in a CSV-like format, listing indexed pages and their selected attributes.\").nullable(),\n}).passthrough().describe(\"Response schema for the `IndexedPages` action.\");\n\nexport const semrushIndexedPages = action(\"SEMRUSH_INDEXED_PAGES\", {\n slug: \"semrush-indexed-pages\",\n name: \"Get indexed pages\",\n description: \"Retrieves a list of indexed pages from Semrush for a specified `target` (root domain, domain, or URL) and `target_type`, ensuring `target` is publicly accessible, Semrush-analyzable, and correctly matches `target_type`. Returns CSV-like text output requiring parsing before structured analysis.\",\n input: SemrushIndexedPagesInput,\n output: SemrushIndexedPagesOutput,\n});\n"],"mappings":";;;AAIA,MAAa,2BAA2BA,IAAAA,EAAE,OAAO;CAC/C,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E;CAC1G,aAAaA,IAAAA,EAAE,KAAK;EAAC;EAAe;EAAU;CAAK,CAAC,CAAC,CAAC,SAAS,qBAAqB;CACpF,cAAcA,IAAAA,EAAE,KAAK;EAAC;EAAqB;EAAsB;EAAmB;EAAoB;EAAiB;CAAgB,CAAC,CAAC,CAAC,QAAQ,oBAAoB,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS;CACjO,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAK,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CACzG,gBAAgBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,sPAAsP,CAAC,CAAC,SAAS;CACtT,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAc;EAAgB;EAAiB;EAAiB;EAAe;EAAa;EAAgB;CAAc,CAAC,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,CAAC,QAAQ;EAAC;EAAa;EAAe;EAAgB;EAAgB;EAAc;EAAY;EAAe;CAAc,CAAC,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;AAC/b,CAAC,CAAC,CAAC,SAAS,uEAAuE;AACnF,MAAa,4BAA4BA,IAAAA,EAAE,OAAO,EAChD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS,EAClK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gDAAgD;AAE1E,MAAa,sBAAsBC,eAAAA,OAAO,yBAAyB;CACjE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"indexed-pages.cjs","names":["z","action"],"sources":["../../src/actions/indexed-pages.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushIndexedPagesInput = z.object({\n target: z.string().describe(\"Target URL, domain, or root domain for which to retrieve indexed pages data.\"),\n target_type: z.enum([\"root_domain\", \"domain\", \"url\"]).describe(\"Type of the target.\"),\n display_sort: z.enum([\"backlinks_num_asc\", \"backlinks_num_desc\", \"domains_num_asc\", \"domains_num_desc\", \"last_seen_asc\", \"last_seen_desc\"]).default(\"backlinks_num_desc\").describe(\"Sorting criteria for the results.\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Maximum number of results to return.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial results to skip. Note: When using `display_offset`, the `display_limit` should be the desired number of results plus the `display_offset` (e.g., for 100 results after skipping 50, set `display_offset=50`, `display_limit=150`).\").optional(),\n export_columns: z.array(z.enum([\"source_url\", \"source_title\", \"response_code\", \"backlinks_num\", \"domains_num\", \"last_seen\", \"external_num\", \"internal_num\"]).describe(\"Available columns for the Indexed Pages report.\")).default([\"source_url\",\"source_title\",\"response_code\",\"backlinks_num\",\"domains_num\",\"last_seen\",\"external_num\",\"internal_num\"]).describe(\"Specific columns for the report; defaults to all available columns if omitted.\").optional(),\n}).describe(\"Request schema for retrieving indexed pages information from Semrush.\");\nexport const SemrushIndexedPagesOutput = z.object({\n data: z.string().describe(\"A string containing the report data, typically in a CSV-like format, listing indexed pages and their selected attributes.\").nullable(),\n}).passthrough().describe(\"Response schema for the `IndexedPages` action.\");\n\nexport const semrushIndexedPages: AppAction<\n typeof SemrushIndexedPagesInput,\n typeof SemrushIndexedPagesOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_INDEXED_PAGES\", {\n slug: \"semrush-indexed-pages\",\n name: \"Get indexed pages\",\n description: \"Retrieves a list of indexed pages from Semrush for a specified `target` (root domain, domain, or URL) and `target_type`, ensuring `target` is publicly accessible, Semrush-analyzable, and correctly matches `target_type`. Returns CSV-like text output requiring parsing before structured analysis.\",\n input: SemrushIndexedPagesInput,\n output: SemrushIndexedPagesOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,2BAA2BA,IAAAA,EAAE,OAAO;CAC/C,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E;CAC1G,aAAaA,IAAAA,EAAE,KAAK;EAAC;EAAe;EAAU;CAAK,CAAC,CAAC,CAAC,SAAS,qBAAqB;CACpF,cAAcA,IAAAA,EAAE,KAAK;EAAC;EAAqB;EAAsB;EAAmB;EAAoB;EAAiB;CAAgB,CAAC,CAAC,CAAC,QAAQ,oBAAoB,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS;CACjO,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAK,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CACzG,gBAAgBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,sPAAsP,CAAC,CAAC,SAAS;CACtT,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAc;EAAgB;EAAiB;EAAiB;EAAe;EAAa;EAAgB;CAAc,CAAC,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,CAAC,QAAQ;EAAC;EAAa;EAAe;EAAgB;EAAgB;EAAc;EAAY;EAAe;CAAc,CAAC,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;AAC/b,CAAC,CAAC,CAAC,SAAS,uEAAuE;AACnF,MAAa,4BAA4BA,IAAAA,EAAE,OAAO,EAChD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS,EAClK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gDAAgD;AAE1E,MAAa,sBAITC,eAAAA,OAAO,yBAAyB;CAClC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,11 +1,13 @@
1
+ import { semrush } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/indexed-pages.d.ts
4
6
  declare const SemrushIndexedPagesInput: z.ZodObject<{
5
7
  target: z.ZodString;
6
8
  target_type: z.ZodEnum<{
7
- domain: "domain";
8
9
  root_domain: "root_domain";
10
+ domain: "domain";
9
11
  url: "url";
10
12
  }>;
11
13
  display_sort: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
@@ -32,14 +34,7 @@ declare const SemrushIndexedPagesInput: z.ZodObject<{
32
34
  declare const SemrushIndexedPagesOutput: z.ZodObject<{
33
35
  data: z.ZodNullable<z.ZodString>;
34
36
  }, z.core.$loose>;
35
- declare const semrushIndexedPages: import("@keystrokehq/action").WorkflowActionDefinition<{
36
- target: string;
37
- target_type: "domain" | "root_domain" | "url";
38
- display_sort?: "domains_num_asc" | "domains_num_desc" | "backlinks_num_asc" | "backlinks_num_desc" | "last_seen_asc" | "last_seen_desc" | undefined;
39
- display_limit?: number | undefined;
40
- display_offset?: number | undefined;
41
- export_columns?: ("domains_num" | "backlinks_num" | "last_seen" | "response_code" | "external_num" | "internal_num" | "source_url" | "source_title")[] | undefined;
42
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
37
+ declare const semrushIndexedPages: AppAction<typeof SemrushIndexedPagesInput, typeof SemrushIndexedPagesOutput, typeof semrush.credential>;
43
38
  //#endregion
44
39
  export { semrushIndexedPages };
45
40
  //# sourceMappingURL=indexed-pages.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"indexed-pages.d.cts","names":[],"sources":["../../src/actions/indexed-pages.ts"],"mappings":";;;cAIa,wBAAA,EAAwB,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAQxB,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;cAIzB,mBAAA,gCAAmB,wBAAA"}
1
+ {"version":3,"file":"indexed-pages.d.cts","names":[],"sources":["../../src/actions/indexed-pages.ts"],"mappings":";;;;;cAMa,wBAAA,EAAwB,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAQxB,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;cAIzB,mBAAA,EAAqB,SAAA,QACzB,wBAAA,SACA,yBAAA,SACA,OAAA,CAAQ,UAAA"}
@@ -1,11 +1,13 @@
1
+ import { semrush } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/indexed-pages.d.ts
4
6
  declare const SemrushIndexedPagesInput: z.ZodObject<{
5
7
  target: z.ZodString;
6
8
  target_type: z.ZodEnum<{
7
- domain: "domain";
8
9
  root_domain: "root_domain";
10
+ domain: "domain";
9
11
  url: "url";
10
12
  }>;
11
13
  display_sort: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
@@ -32,14 +34,7 @@ declare const SemrushIndexedPagesInput: z.ZodObject<{
32
34
  declare const SemrushIndexedPagesOutput: z.ZodObject<{
33
35
  data: z.ZodNullable<z.ZodString>;
34
36
  }, z.core.$loose>;
35
- declare const semrushIndexedPages: import("@keystrokehq/action").WorkflowActionDefinition<{
36
- target: string;
37
- target_type: "domain" | "root_domain" | "url";
38
- display_sort?: "domains_num_asc" | "domains_num_desc" | "backlinks_num_asc" | "backlinks_num_desc" | "last_seen_asc" | "last_seen_desc" | undefined;
39
- display_limit?: number | undefined;
40
- display_offset?: number | undefined;
41
- export_columns?: ("domains_num" | "backlinks_num" | "last_seen" | "response_code" | "external_num" | "internal_num" | "source_url" | "source_title")[] | undefined;
42
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
37
+ declare const semrushIndexedPages: AppAction<typeof SemrushIndexedPagesInput, typeof SemrushIndexedPagesOutput, typeof semrush.credential>;
43
38
  //#endregion
44
39
  export { semrushIndexedPages };
45
40
  //# sourceMappingURL=indexed-pages.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"indexed-pages.d.mts","names":[],"sources":["../../src/actions/indexed-pages.ts"],"mappings":";;;cAIa,wBAAA,EAAwB,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAQxB,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;cAIzB,mBAAA,gCAAmB,wBAAA"}
1
+ {"version":3,"file":"indexed-pages.d.mts","names":[],"sources":["../../src/actions/indexed-pages.ts"],"mappings":";;;;;cAMa,wBAAA,EAAwB,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAQxB,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;cAIzB,mBAAA,EAAqB,SAAA,QACzB,wBAAA,SACA,yBAAA,SACA,OAAA,CAAQ,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const semrushIndexedPages = action("SEMRUSH_INDEXED_PAGES", {
@@ -1 +1 @@
1
- {"version":3,"file":"indexed-pages.mjs","names":[],"sources":["../../src/actions/indexed-pages.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushIndexedPagesInput = z.object({\n target: z.string().describe(\"Target URL, domain, or root domain for which to retrieve indexed pages data.\"),\n target_type: z.enum([\"root_domain\", \"domain\", \"url\"]).describe(\"Type of the target.\"),\n display_sort: z.enum([\"backlinks_num_asc\", \"backlinks_num_desc\", \"domains_num_asc\", \"domains_num_desc\", \"last_seen_asc\", \"last_seen_desc\"]).default(\"backlinks_num_desc\").describe(\"Sorting criteria for the results.\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Maximum number of results to return.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial results to skip. Note: When using `display_offset`, the `display_limit` should be the desired number of results plus the `display_offset` (e.g., for 100 results after skipping 50, set `display_offset=50`, `display_limit=150`).\").optional(),\n export_columns: z.array(z.enum([\"source_url\", \"source_title\", \"response_code\", \"backlinks_num\", \"domains_num\", \"last_seen\", \"external_num\", \"internal_num\"]).describe(\"Available columns for the Indexed Pages report.\")).default([\"source_url\",\"source_title\",\"response_code\",\"backlinks_num\",\"domains_num\",\"last_seen\",\"external_num\",\"internal_num\"]).describe(\"Specific columns for the report; defaults to all available columns if omitted.\").optional(),\n}).describe(\"Request schema for retrieving indexed pages information from Semrush.\");\nexport const SemrushIndexedPagesOutput = z.object({\n data: z.string().describe(\"A string containing the report data, typically in a CSV-like format, listing indexed pages and their selected attributes.\").nullable(),\n}).passthrough().describe(\"Response schema for the `IndexedPages` action.\");\n\nexport const semrushIndexedPages = action(\"SEMRUSH_INDEXED_PAGES\", {\n slug: \"semrush-indexed-pages\",\n name: \"Get indexed pages\",\n description: \"Retrieves a list of indexed pages from Semrush for a specified `target` (root domain, domain, or URL) and `target_type`, ensuring `target` is publicly accessible, Semrush-analyzable, and correctly matches `target_type`. Returns CSV-like text output requiring parsing before structured analysis.\",\n input: SemrushIndexedPagesInput,\n output: SemrushIndexedPagesOutput,\n});\n"],"mappings":";;AAgBA,MAAa,sBAAsB,OAAO,yBAAyB;CACjE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAhBsC,EAAE,OAAO;EAC/C,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E;EAC1G,aAAa,EAAE,KAAK;GAAC;GAAe;GAAU;EAAK,CAAC,CAAC,CAAC,SAAS,qBAAqB;EACpF,cAAc,EAAE,KAAK;GAAC;GAAqB;GAAsB;GAAmB;GAAoB;GAAiB;EAAgB,CAAC,CAAC,CAAC,QAAQ,oBAAoB,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS;EACjO,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAK,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EACzG,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,sPAAsP,CAAC,CAAC,SAAS;EACtT,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAc;GAAgB;GAAiB;GAAiB;GAAe;GAAa;GAAgB;EAAc,CAAC,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,CAAC,QAAQ;GAAC;GAAa;GAAe;GAAgB;GAAgB;GAAc;GAAY;GAAe;EAAc,CAAC,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CAC/b,CAAC,CAAC,CAAC,SAAS,uEASH;CACP,QATuC,EAAE,OAAO,EAChD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS,EAClK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gDAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"indexed-pages.mjs","names":[],"sources":["../../src/actions/indexed-pages.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushIndexedPagesInput = z.object({\n target: z.string().describe(\"Target URL, domain, or root domain for which to retrieve indexed pages data.\"),\n target_type: z.enum([\"root_domain\", \"domain\", \"url\"]).describe(\"Type of the target.\"),\n display_sort: z.enum([\"backlinks_num_asc\", \"backlinks_num_desc\", \"domains_num_asc\", \"domains_num_desc\", \"last_seen_asc\", \"last_seen_desc\"]).default(\"backlinks_num_desc\").describe(\"Sorting criteria for the results.\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Maximum number of results to return.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial results to skip. Note: When using `display_offset`, the `display_limit` should be the desired number of results plus the `display_offset` (e.g., for 100 results after skipping 50, set `display_offset=50`, `display_limit=150`).\").optional(),\n export_columns: z.array(z.enum([\"source_url\", \"source_title\", \"response_code\", \"backlinks_num\", \"domains_num\", \"last_seen\", \"external_num\", \"internal_num\"]).describe(\"Available columns for the Indexed Pages report.\")).default([\"source_url\",\"source_title\",\"response_code\",\"backlinks_num\",\"domains_num\",\"last_seen\",\"external_num\",\"internal_num\"]).describe(\"Specific columns for the report; defaults to all available columns if omitted.\").optional(),\n}).describe(\"Request schema for retrieving indexed pages information from Semrush.\");\nexport const SemrushIndexedPagesOutput = z.object({\n data: z.string().describe(\"A string containing the report data, typically in a CSV-like format, listing indexed pages and their selected attributes.\").nullable(),\n}).passthrough().describe(\"Response schema for the `IndexedPages` action.\");\n\nexport const semrushIndexedPages: AppAction<\n typeof SemrushIndexedPagesInput,\n typeof SemrushIndexedPagesOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_INDEXED_PAGES\", {\n slug: \"semrush-indexed-pages\",\n name: \"Get indexed pages\",\n description: \"Retrieves a list of indexed pages from Semrush for a specified `target` (root domain, domain, or URL) and `target_type`, ensuring `target` is publicly accessible, Semrush-analyzable, and correctly matches `target_type`. Returns CSV-like text output requiring parsing before structured analysis.\",\n input: SemrushIndexedPagesInput,\n output: SemrushIndexedPagesOutput,\n});\n"],"mappings":";;;AAkBA,MAAa,sBAIT,OAAO,yBAAyB;CAClC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OApBsC,EAAE,OAAO;EAC/C,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E;EAC1G,aAAa,EAAE,KAAK;GAAC;GAAe;GAAU;EAAK,CAAC,CAAC,CAAC,SAAS,qBAAqB;EACpF,cAAc,EAAE,KAAK;GAAC;GAAqB;GAAsB;GAAmB;GAAoB;GAAiB;EAAgB,CAAC,CAAC,CAAC,QAAQ,oBAAoB,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS;EACjO,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAK,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EACzG,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,sPAAsP,CAAC,CAAC,SAAS;EACtT,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAc;GAAgB;GAAiB;GAAiB;GAAe;GAAa;GAAgB;EAAc,CAAC,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,CAAC,QAAQ;GAAC;GAAa;GAAe;GAAgB;GAAgB;GAAc;GAAY;GAAe;EAAc,CAAC,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CAC/b,CAAC,CAAC,CAAC,SAAS,uEAaH;CACP,QAbuC,EAAE,OAAO,EAChD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS,EAClK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,gDAWhB;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/keyword-difficulty.ts
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-difficulty.cjs","names":["z","action"],"sources":["../../src/actions/keyword-difficulty.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushKeywordDifficultyInput = z.object({\n phrase: z.string().describe(\"The keyword or keyword phrase to analyze for difficulty. Minor wording variations produce different KD scores; normalize phrases before comparing results.\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"The Semrush regional database to use for the analysis (e.g., 'us', 'gb', 'ca'). Refer to the Semrush API documentation for a complete list of valid database codes: https://developer.semrush.com/api/v3/analytics/basic-docs/#databases.\"),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap output columns in double quotes (\\\"), or 0 to disable.\").optional(),\n export_columns: z.array(z.enum([\"Ph\", \"Kd\"])).default([\"Ph\",\"Kd\"]).describe(\"Specifies columns to include in the output (e.g., 'Ph' for Phrase, 'Kd' for Keyword Difficulty). Uses all available columns if omitted.\").optional(),\n});\nexport const SemrushKeywordDifficultyOutput = z.object({\n data: z.string().describe(\"The raw keyword difficulty report data, typically in CSV format, as returned by the Semrush API.\").nullable(),\n}).passthrough().describe(\"Contains the keyword difficulty report data from the Semrush API.\");\n\nexport const semrushKeywordDifficulty = action(\"SEMRUSH_KEYWORD_DIFFICULTY\", {\n slug: \"semrush-keyword-difficulty\",\n name: \"Get keyword difficulty\",\n description: \"Determines the Keyword Difficulty (KD) score (0-100, higher means greater difficulty) for a given phrase in a specific Semrush regional database to assess its SEO competitiveness. Returns CSV-formatted text; parse before programmatic use.\",\n input: SemrushKeywordDifficultyInput,\n output: SemrushKeywordDifficultyOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAAgCA,IAAAA,EAAE,OAAO;CACpD,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J;CACxL,UAAUA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAiB;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,2OAA2O;CACjxC,eAAeA,IAAAA,EAAE,MAAM,CAACA,IAAAA,EAAE,QAAQ,CAAC,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;CAC7J,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAK,IAAI,CAAC,CAAC,CAAC,SAAS,yIAAyI,CAAC,CAAC,SAAS;AAClO,CAAC;AACD,MAAa,iCAAiCA,IAAAA,EAAE,OAAO,EACrD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS,EACzI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mEAAmE;AAE7F,MAAa,2BAA2BC,eAAAA,OAAO,8BAA8B;CAC3E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"keyword-difficulty.cjs","names":["z","action"],"sources":["../../src/actions/keyword-difficulty.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushKeywordDifficultyInput = z.object({\n phrase: z.string().describe(\"The keyword or keyword phrase to analyze for difficulty. Minor wording variations produce different KD scores; normalize phrases before comparing results.\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"The Semrush regional database to use for the analysis (e.g., 'us', 'gb', 'ca'). Refer to the Semrush API documentation for a complete list of valid database codes: https://developer.semrush.com/api/v3/analytics/basic-docs/#databases.\"),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap output columns in double quotes (\\\"), or 0 to disable.\").optional(),\n export_columns: z.array(z.enum([\"Ph\", \"Kd\"])).default([\"Ph\",\"Kd\"]).describe(\"Specifies columns to include in the output (e.g., 'Ph' for Phrase, 'Kd' for Keyword Difficulty). Uses all available columns if omitted.\").optional(),\n});\nexport const SemrushKeywordDifficultyOutput = z.object({\n data: z.string().describe(\"The raw keyword difficulty report data, typically in CSV format, as returned by the Semrush API.\").nullable(),\n}).passthrough().describe(\"Contains the keyword difficulty report data from the Semrush API.\");\n\nexport const semrushKeywordDifficulty: AppAction<\n typeof SemrushKeywordDifficultyInput,\n typeof SemrushKeywordDifficultyOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_KEYWORD_DIFFICULTY\", {\n slug: \"semrush-keyword-difficulty\",\n name: \"Get keyword difficulty\",\n description: \"Determines the Keyword Difficulty (KD) score (0-100, higher means greater difficulty) for a given phrase in a specific Semrush regional database to assess its SEO competitiveness. Returns CSV-formatted text; parse before programmatic use.\",\n input: SemrushKeywordDifficultyInput,\n output: SemrushKeywordDifficultyOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,gCAAgCA,IAAAA,EAAE,OAAO;CACpD,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J;CACxL,UAAUA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAiB;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,2OAA2O;CACjxC,eAAeA,IAAAA,EAAE,MAAM,CAACA,IAAAA,EAAE,QAAQ,CAAC,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;CAC7J,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAK,IAAI,CAAC,CAAC,CAAC,SAAS,yIAAyI,CAAC,CAAC,SAAS;AAClO,CAAC;AACD,MAAa,iCAAiCA,IAAAA,EAAE,OAAO,EACrD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS,EACzI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mEAAmE;AAE7F,MAAa,2BAITC,eAAAA,OAAO,8BAA8B;CACvC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,9 +1,14 @@
1
+ import { semrush } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/keyword-difficulty.d.ts
4
6
  declare const SemrushKeywordDifficultyInput: z.ZodObject<{
5
7
  phrase: z.ZodString;
6
8
  database: z.ZodEnum<{
9
+ at: "at";
10
+ id: "id";
11
+ in: "in";
7
12
  us: "us";
8
13
  uk: "uk";
9
14
  ca: "ca";
@@ -30,14 +35,12 @@ declare const SemrushKeywordDifficultyInput: z.ZodObject<{
30
35
  sg: "sg";
31
36
  tr: "tr";
32
37
  jp: "jp";
33
- in: "in";
34
38
  hu: "hu";
35
39
  af: "af";
36
40
  al: "al";
37
41
  dz: "dz";
38
42
  ao: "ao";
39
43
  am: "am";
40
- at: "at";
41
44
  az: "az";
42
45
  bh: "bh";
43
46
  bd: "bd";
@@ -72,7 +75,6 @@ declare const SemrushKeywordDifficultyInput: z.ZodObject<{
72
75
  ht: "ht";
73
76
  hn: "hn";
74
77
  is: "is";
75
- id: "id";
76
78
  jm: "jm";
77
79
  jo: "jo";
78
80
  kz: "kz";
@@ -160,12 +162,7 @@ declare const SemrushKeywordDifficultyInput: z.ZodObject<{
160
162
  declare const SemrushKeywordDifficultyOutput: z.ZodObject<{
161
163
  data: z.ZodNullable<z.ZodString>;
162
164
  }, z.core.$loose>;
163
- declare const semrushKeywordDifficulty: import("@keystrokehq/action").WorkflowActionDefinition<{
164
- phrase: string;
165
- database: "us" | "uk" | "ca" | "ru" | "de" | "fr" | "es" | "it" | "br" | "au" | "ar" | "be" | "ch" | "dk" | "fi" | "hk" | "ie" | "il" | "mx" | "nl" | "no" | "pl" | "se" | "sg" | "tr" | "jp" | "in" | "hu" | "af" | "al" | "dz" | "ao" | "am" | "at" | "az" | "bh" | "bd" | "by" | "bz" | "bo" | "ba" | "bw" | "bn" | "bg" | "cv" | "kh" | "cm" | "cl" | "co" | "cr" | "hr" | "cy" | "cz" | "cd" | "do" | "ec" | "eg" | "sv" | "ee" | "et" | "ge" | "gh" | "gr" | "gt" | "gy" | "ht" | "hn" | "is" | "id" | "jm" | "jo" | "kz" | "kw" | "lv" | "lb" | "lt" | "lu" | "mg" | "my" | "mt" | "mu" | "md" | "mn" | "me" | "ma" | "mz" | "na" | "np" | "nz" | "ni" | "ng" | "om" | "py" | "pe" | "ph" | "pt" | "ro" | "sa" | "sn" | "rs" | "sk" | "si" | "za" | "kr" | "lk" | "th" | "bs" | "tt" | "tn" | "ua" | "ae" | "uy" | "ve" | "vn" | "zm" | "zw" | "ly" | "mobile-us" | "mobile-uk" | "mobile-ca" | "mobile-de" | "mobile-fr" | "mobile-es" | "mobile-it" | "mobile-br" | "mobile-au" | "mobile-dk" | "mobile-mx" | "mobile-nl" | "mobile-se" | "mobile-tr" | "mobile-in" | "mobile-id" | "mobile-il" | "il-ext" | "tr-ext" | "dk-ext" | "no-ext" | "se-ext" | "fi-ext" | "ch-ext" | "mobile-il-ext" | "pa" | "pk" | "tw" | "qa";
166
- export_escape?: 0 | 1 | undefined;
167
- export_columns?: ("Ph" | "Kd")[] | undefined;
168
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
165
+ declare const semrushKeywordDifficulty: AppAction<typeof SemrushKeywordDifficultyInput, typeof SemrushKeywordDifficultyOutput, typeof semrush.credential>;
169
166
  //#endregion
170
167
  export { semrushKeywordDifficulty };
171
168
  //# sourceMappingURL=keyword-difficulty.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-difficulty.d.cts","names":[],"sources":["../../src/actions/keyword-difficulty.ts"],"mappings":";;;cAIa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAM7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,gCAAwB,wBAAA"}
1
+ {"version":3,"file":"keyword-difficulty.d.cts","names":[],"sources":["../../src/actions/keyword-difficulty.ts"],"mappings":";;;;;cAMa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAM7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,EAA0B,SAAA,QAC9B,6BAAA,SACA,8BAAA,SACA,OAAA,CAAQ,UAAA"}
@@ -1,9 +1,14 @@
1
+ import { semrush } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/keyword-difficulty.d.ts
4
6
  declare const SemrushKeywordDifficultyInput: z.ZodObject<{
5
7
  phrase: z.ZodString;
6
8
  database: z.ZodEnum<{
9
+ at: "at";
10
+ id: "id";
11
+ in: "in";
7
12
  us: "us";
8
13
  uk: "uk";
9
14
  ca: "ca";
@@ -30,14 +35,12 @@ declare const SemrushKeywordDifficultyInput: z.ZodObject<{
30
35
  sg: "sg";
31
36
  tr: "tr";
32
37
  jp: "jp";
33
- in: "in";
34
38
  hu: "hu";
35
39
  af: "af";
36
40
  al: "al";
37
41
  dz: "dz";
38
42
  ao: "ao";
39
43
  am: "am";
40
- at: "at";
41
44
  az: "az";
42
45
  bh: "bh";
43
46
  bd: "bd";
@@ -72,7 +75,6 @@ declare const SemrushKeywordDifficultyInput: z.ZodObject<{
72
75
  ht: "ht";
73
76
  hn: "hn";
74
77
  is: "is";
75
- id: "id";
76
78
  jm: "jm";
77
79
  jo: "jo";
78
80
  kz: "kz";
@@ -160,12 +162,7 @@ declare const SemrushKeywordDifficultyInput: z.ZodObject<{
160
162
  declare const SemrushKeywordDifficultyOutput: z.ZodObject<{
161
163
  data: z.ZodNullable<z.ZodString>;
162
164
  }, z.core.$loose>;
163
- declare const semrushKeywordDifficulty: import("@keystrokehq/action").WorkflowActionDefinition<{
164
- phrase: string;
165
- database: "us" | "uk" | "ca" | "ru" | "de" | "fr" | "es" | "it" | "br" | "au" | "ar" | "be" | "ch" | "dk" | "fi" | "hk" | "ie" | "il" | "mx" | "nl" | "no" | "pl" | "se" | "sg" | "tr" | "jp" | "in" | "hu" | "af" | "al" | "dz" | "ao" | "am" | "at" | "az" | "bh" | "bd" | "by" | "bz" | "bo" | "ba" | "bw" | "bn" | "bg" | "cv" | "kh" | "cm" | "cl" | "co" | "cr" | "hr" | "cy" | "cz" | "cd" | "do" | "ec" | "eg" | "sv" | "ee" | "et" | "ge" | "gh" | "gr" | "gt" | "gy" | "ht" | "hn" | "is" | "id" | "jm" | "jo" | "kz" | "kw" | "lv" | "lb" | "lt" | "lu" | "mg" | "my" | "mt" | "mu" | "md" | "mn" | "me" | "ma" | "mz" | "na" | "np" | "nz" | "ni" | "ng" | "om" | "py" | "pe" | "ph" | "pt" | "ro" | "sa" | "sn" | "rs" | "sk" | "si" | "za" | "kr" | "lk" | "th" | "bs" | "tt" | "tn" | "ua" | "ae" | "uy" | "ve" | "vn" | "zm" | "zw" | "ly" | "mobile-us" | "mobile-uk" | "mobile-ca" | "mobile-de" | "mobile-fr" | "mobile-es" | "mobile-it" | "mobile-br" | "mobile-au" | "mobile-dk" | "mobile-mx" | "mobile-nl" | "mobile-se" | "mobile-tr" | "mobile-in" | "mobile-id" | "mobile-il" | "il-ext" | "tr-ext" | "dk-ext" | "no-ext" | "se-ext" | "fi-ext" | "ch-ext" | "mobile-il-ext" | "pa" | "pk" | "tw" | "qa";
166
- export_escape?: 0 | 1 | undefined;
167
- export_columns?: ("Ph" | "Kd")[] | undefined;
168
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
165
+ declare const semrushKeywordDifficulty: AppAction<typeof SemrushKeywordDifficultyInput, typeof SemrushKeywordDifficultyOutput, typeof semrush.credential>;
169
166
  //#endregion
170
167
  export { semrushKeywordDifficulty };
171
168
  //# sourceMappingURL=keyword-difficulty.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-difficulty.d.mts","names":[],"sources":["../../src/actions/keyword-difficulty.ts"],"mappings":";;;cAIa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAM7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,gCAAwB,wBAAA"}
1
+ {"version":3,"file":"keyword-difficulty.d.mts","names":[],"sources":["../../src/actions/keyword-difficulty.ts"],"mappings":";;;;;cAMa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAM7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,EAA0B,SAAA,QAC9B,6BAAA,SACA,8BAAA,SACA,OAAA,CAAQ,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const semrushKeywordDifficulty = action("SEMRUSH_KEYWORD_DIFFICULTY", {
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-difficulty.mjs","names":[],"sources":["../../src/actions/keyword-difficulty.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushKeywordDifficultyInput = z.object({\n phrase: z.string().describe(\"The keyword or keyword phrase to analyze for difficulty. Minor wording variations produce different KD scores; normalize phrases before comparing results.\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"The Semrush regional database to use for the analysis (e.g., 'us', 'gb', 'ca'). Refer to the Semrush API documentation for a complete list of valid database codes: https://developer.semrush.com/api/v3/analytics/basic-docs/#databases.\"),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap output columns in double quotes (\\\"), or 0 to disable.\").optional(),\n export_columns: z.array(z.enum([\"Ph\", \"Kd\"])).default([\"Ph\",\"Kd\"]).describe(\"Specifies columns to include in the output (e.g., 'Ph' for Phrase, 'Kd' for Keyword Difficulty). Uses all available columns if omitted.\").optional(),\n});\nexport const SemrushKeywordDifficultyOutput = z.object({\n data: z.string().describe(\"The raw keyword difficulty report data, typically in CSV format, as returned by the Semrush API.\").nullable(),\n}).passthrough().describe(\"Contains the keyword difficulty report data from the Semrush API.\");\n\nexport const semrushKeywordDifficulty = action(\"SEMRUSH_KEYWORD_DIFFICULTY\", {\n slug: \"semrush-keyword-difficulty\",\n name: \"Get keyword difficulty\",\n description: \"Determines the Keyword Difficulty (KD) score (0-100, higher means greater difficulty) for a given phrase in a specific Semrush regional database to assess its SEO competitiveness. Returns CSV-formatted text; parse before programmatic use.\",\n input: SemrushKeywordDifficultyInput,\n output: SemrushKeywordDifficultyOutput,\n});\n"],"mappings":";;AAcA,MAAa,2BAA2B,OAAO,8BAA8B;CAC3E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAd2C,EAAE,OAAO;EACpD,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J;EACxL,UAAU,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAiB;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,SAAS,2OAA2O;EACjxC,eAAe,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;EAC7J,gBAAgB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAK,IAAI,CAAC,CAAC,CAAC,SAAS,yIAAyI,CAAC,CAAC,SAAS;CAClO,CASS;CACP,QAT4C,EAAE,OAAO,EACrD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS,EACzI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mEAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"keyword-difficulty.mjs","names":[],"sources":["../../src/actions/keyword-difficulty.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushKeywordDifficultyInput = z.object({\n phrase: z.string().describe(\"The keyword or keyword phrase to analyze for difficulty. Minor wording variations produce different KD scores; normalize phrases before comparing results.\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"The Semrush regional database to use for the analysis (e.g., 'us', 'gb', 'ca'). Refer to the Semrush API documentation for a complete list of valid database codes: https://developer.semrush.com/api/v3/analytics/basic-docs/#databases.\"),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap output columns in double quotes (\\\"), or 0 to disable.\").optional(),\n export_columns: z.array(z.enum([\"Ph\", \"Kd\"])).default([\"Ph\",\"Kd\"]).describe(\"Specifies columns to include in the output (e.g., 'Ph' for Phrase, 'Kd' for Keyword Difficulty). Uses all available columns if omitted.\").optional(),\n});\nexport const SemrushKeywordDifficultyOutput = z.object({\n data: z.string().describe(\"The raw keyword difficulty report data, typically in CSV format, as returned by the Semrush API.\").nullable(),\n}).passthrough().describe(\"Contains the keyword difficulty report data from the Semrush API.\");\n\nexport const semrushKeywordDifficulty: AppAction<\n typeof SemrushKeywordDifficultyInput,\n typeof SemrushKeywordDifficultyOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_KEYWORD_DIFFICULTY\", {\n slug: \"semrush-keyword-difficulty\",\n name: \"Get keyword difficulty\",\n description: \"Determines the Keyword Difficulty (KD) score (0-100, higher means greater difficulty) for a given phrase in a specific Semrush regional database to assess its SEO competitiveness. Returns CSV-formatted text; parse before programmatic use.\",\n input: SemrushKeywordDifficultyInput,\n output: SemrushKeywordDifficultyOutput,\n});\n"],"mappings":";;;AAgBA,MAAa,2BAIT,OAAO,8BAA8B;CACvC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAlB2C,EAAE,OAAO;EACpD,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,4JAA4J;EACxL,UAAU,EAAE,KAAK;GAAC;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAM;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAa;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAU;GAAiB;GAAM;GAAM;GAAM;EAAI,CAAC,CAAC,CAAC,SAAS,2OAA2O;EACjxC,eAAe,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;EAC7J,gBAAgB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAK,IAAI,CAAC,CAAC,CAAC,SAAS,yIAAyI,CAAC,CAAC,SAAS;CAClO,CAaS;CACP,QAb4C,EAAE,OAAO,EACrD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS,EACzI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mEAWhB;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/keyword-overview-all-databases.ts
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-overview-all-databases.cjs","names":["z","action"],"sources":["../../src/actions/keyword-overview-all-databases.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushKeywordOverviewAllDatabasesInput = z.object({\n phrase: z.string().describe(\"Keyword or keyword phrase to investigate.\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"Regional database to query (e.g., 'us', 'gb'); if omitted, data is retrieved from all regional databases.\").optional(),\n export_decode: z.number().int().default(1).describe(\"Set to 1 for a URL-decoded response, 0 for URL-encoded.\").optional(),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap output columns in double quotes, 0 to disable.\").optional(),\n export_columns: z.array(z.enum([\"Dt\", \"Db\", \"Ph\", \"Nq\", \"Cp\", \"Co\", \"Nr\", \"In\", \"Kd\"])).default([\"Dt\",\"Db\",\"Ph\",\"Nq\",\"Cp\",\"Co\",\"Nr\",\"In\",\"Kd\"]).describe(\"Specific columns for the report (e.g., 'Ph', 'Nq', 'Cp'). Defaults to all columns, including Date (Dt), Database (Db), Phrase (Ph), Search Volume (Nq), CPC (Cp), Competition (Co), Number of Results (Nr), Intent (In), and Keyword Difficulty (Kd).\").optional(),\n});\nexport const SemrushKeywordOverviewAllDatabasesOutput = z.object({\n keyword_data: z.string().describe(\"Raw text response from the API with keyword overview data, typically CSV formatted.\").nullable(),\n}).passthrough();\n\nexport const semrushKeywordOverviewAllDatabases = action(\"SEMRUSH_KEYWORD_OVERVIEW_ALL_DATABASES\", {\n slug: \"semrush-keyword-overview-all-databases\",\n name: \"Keyword overview all databases\",\n description: \"Fetches a keyword overview from Semrush for a specified phrase, including metrics like search volume, CPC, and competition. Response is returned as a CSV-like string; parse headers and rows into a structured table before extracting values like Nq, Cp, or Kd.\",\n input: SemrushKeywordOverviewAllDatabasesInput,\n output: SemrushKeywordOverviewAllDatabasesOutput,\n});\n"],"mappings":";;;AAIA,MAAa,0CAA0CA,IAAAA,EAAE,OAAO;CAC9D,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C;CACvE,UAAUA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAiB;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,2GAA2G,CAAC,CAAC,SAAS;CAC5pC,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CACxH,eAAeA,IAAAA,EAAE,MAAM,CAACA,IAAAA,EAAE,QAAQ,CAAC,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,iEAAiE,CAAC,CAAC,SAAS;CACrJ,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,CAAC,QAAQ;EAAC;EAAK;EAAK;EAAK;EAAK;EAAK;EAAK;EAAK;EAAK;CAAI,CAAC,CAAC,CAAC,SAAS,uPAAuP,CAAC,CAAC,SAAS;AAC7Z,CAAC;AACD,MAAa,2CAA2CA,IAAAA,EAAE,OAAO,EAC/D,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qFAAqF,CAAC,CAAC,SAAS,EACpI,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,qCAAqCC,eAAAA,OAAO,0CAA0C;CACjG,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"keyword-overview-all-databases.cjs","names":["z","action"],"sources":["../../src/actions/keyword-overview-all-databases.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { semrush } from \"../app\";\n\nexport const SemrushKeywordOverviewAllDatabasesInput = z.object({\n phrase: z.string().describe(\"Keyword or keyword phrase to investigate.\"),\n database: z.enum([\"us\", \"uk\", \"ca\", \"ru\", \"de\", \"fr\", \"es\", \"it\", \"br\", \"au\", \"ar\", \"be\", \"ch\", \"dk\", \"fi\", \"hk\", \"ie\", \"il\", \"mx\", \"nl\", \"no\", \"pl\", \"se\", \"sg\", \"tr\", \"jp\", \"in\", \"hu\", \"af\", \"al\", \"dz\", \"ao\", \"am\", \"at\", \"az\", \"bh\", \"bd\", \"by\", \"bz\", \"bo\", \"ba\", \"bw\", \"bn\", \"bg\", \"cv\", \"kh\", \"cm\", \"cl\", \"co\", \"cr\", \"hr\", \"cy\", \"cz\", \"cd\", \"do\", \"ec\", \"eg\", \"sv\", \"ee\", \"et\", \"ge\", \"gh\", \"gr\", \"gt\", \"gy\", \"ht\", \"hn\", \"is\", \"id\", \"jm\", \"jo\", \"kz\", \"kw\", \"lv\", \"lb\", \"lt\", \"lu\", \"mg\", \"my\", \"mt\", \"mu\", \"md\", \"mn\", \"me\", \"ma\", \"mz\", \"na\", \"np\", \"nz\", \"ni\", \"ng\", \"om\", \"py\", \"pe\", \"ph\", \"pt\", \"ro\", \"sa\", \"sn\", \"rs\", \"sk\", \"si\", \"za\", \"kr\", \"lk\", \"th\", \"bs\", \"tt\", \"tn\", \"ua\", \"ae\", \"uy\", \"ve\", \"vn\", \"zm\", \"zw\", \"ly\", \"mobile-us\", \"mobile-uk\", \"mobile-ca\", \"mobile-de\", \"mobile-fr\", \"mobile-es\", \"mobile-it\", \"mobile-br\", \"mobile-au\", \"mobile-dk\", \"mobile-mx\", \"mobile-nl\", \"mobile-se\", \"mobile-tr\", \"mobile-in\", \"mobile-id\", \"mobile-il\", \"il-ext\", \"tr-ext\", \"dk-ext\", \"no-ext\", \"se-ext\", \"fi-ext\", \"ch-ext\", \"mobile-il-ext\", \"pa\", \"pk\", \"tw\", \"qa\"]).describe(\"Regional database to query (e.g., 'us', 'gb'); if omitted, data is retrieved from all regional databases.\").optional(),\n export_decode: z.number().int().default(1).describe(\"Set to 1 for a URL-decoded response, 0 for URL-encoded.\").optional(),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap output columns in double quotes, 0 to disable.\").optional(),\n export_columns: z.array(z.enum([\"Dt\", \"Db\", \"Ph\", \"Nq\", \"Cp\", \"Co\", \"Nr\", \"In\", \"Kd\"])).default([\"Dt\",\"Db\",\"Ph\",\"Nq\",\"Cp\",\"Co\",\"Nr\",\"In\",\"Kd\"]).describe(\"Specific columns for the report (e.g., 'Ph', 'Nq', 'Cp'). Defaults to all columns, including Date (Dt), Database (Db), Phrase (Ph), Search Volume (Nq), CPC (Cp), Competition (Co), Number of Results (Nr), Intent (In), and Keyword Difficulty (Kd).\").optional(),\n});\nexport const SemrushKeywordOverviewAllDatabasesOutput = z.object({\n keyword_data: z.string().describe(\"Raw text response from the API with keyword overview data, typically CSV formatted.\").nullable(),\n}).passthrough();\n\nexport const semrushKeywordOverviewAllDatabases: AppAction<\n typeof SemrushKeywordOverviewAllDatabasesInput,\n typeof SemrushKeywordOverviewAllDatabasesOutput,\n typeof semrush.credential\n> = action(\"SEMRUSH_KEYWORD_OVERVIEW_ALL_DATABASES\", {\n slug: \"semrush-keyword-overview-all-databases\",\n name: \"Keyword overview all databases\",\n description: \"Fetches a keyword overview from Semrush for a specified phrase, including metrics like search volume, CPC, and competition. Response is returned as a CSV-like string; parse headers and rows into a structured table before extracting values like Nq, Cp, or Kd.\",\n input: SemrushKeywordOverviewAllDatabasesInput,\n output: SemrushKeywordOverviewAllDatabasesOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,0CAA0CA,IAAAA,EAAE,OAAO;CAC9D,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C;CACvE,UAAUA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAa;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAU;EAAiB;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,2GAA2G,CAAC,CAAC,SAAS;CAC5pC,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CACxH,eAAeA,IAAAA,EAAE,MAAM,CAACA,IAAAA,EAAE,QAAQ,CAAC,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,iEAAiE,CAAC,CAAC,SAAS;CACrJ,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,CAAC,QAAQ;EAAC;EAAK;EAAK;EAAK;EAAK;EAAK;EAAK;EAAK;EAAK;CAAI,CAAC,CAAC,CAAC,SAAS,uPAAuP,CAAC,CAAC,SAAS;AAC7Z,CAAC;AACD,MAAa,2CAA2CA,IAAAA,EAAE,OAAO,EAC/D,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qFAAqF,CAAC,CAAC,SAAS,EACpI,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,qCAITC,eAAAA,OAAO,0CAA0C;CACnD,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,9 +1,14 @@
1
+ import { semrush } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/keyword-overview-all-databases.d.ts
4
6
  declare const SemrushKeywordOverviewAllDatabasesInput: z.ZodObject<{
5
7
  phrase: z.ZodString;
6
8
  database: z.ZodOptional<z.ZodEnum<{
9
+ at: "at";
10
+ id: "id";
11
+ in: "in";
7
12
  us: "us";
8
13
  uk: "uk";
9
14
  ca: "ca";
@@ -30,14 +35,12 @@ declare const SemrushKeywordOverviewAllDatabasesInput: z.ZodObject<{
30
35
  sg: "sg";
31
36
  tr: "tr";
32
37
  jp: "jp";
33
- in: "in";
34
38
  hu: "hu";
35
39
  af: "af";
36
40
  al: "al";
37
41
  dz: "dz";
38
42
  ao: "ao";
39
43
  am: "am";
40
- at: "at";
41
44
  az: "az";
42
45
  bh: "bh";
43
46
  bd: "bd";
@@ -72,7 +75,6 @@ declare const SemrushKeywordOverviewAllDatabasesInput: z.ZodObject<{
72
75
  ht: "ht";
73
76
  hn: "hn";
74
77
  is: "is";
75
- id: "id";
76
78
  jm: "jm";
77
79
  jo: "jo";
78
80
  kz: "kz";
@@ -168,13 +170,7 @@ declare const SemrushKeywordOverviewAllDatabasesInput: z.ZodObject<{
168
170
  declare const SemrushKeywordOverviewAllDatabasesOutput: z.ZodObject<{
169
171
  keyword_data: z.ZodNullable<z.ZodString>;
170
172
  }, z.core.$loose>;
171
- declare const semrushKeywordOverviewAllDatabases: import("@keystrokehq/action").WorkflowActionDefinition<{
172
- phrase: string;
173
- database?: "us" | "uk" | "ca" | "ru" | "de" | "fr" | "es" | "it" | "br" | "au" | "ar" | "be" | "ch" | "dk" | "fi" | "hk" | "ie" | "il" | "mx" | "nl" | "no" | "pl" | "se" | "sg" | "tr" | "jp" | "in" | "hu" | "af" | "al" | "dz" | "ao" | "am" | "at" | "az" | "bh" | "bd" | "by" | "bz" | "bo" | "ba" | "bw" | "bn" | "bg" | "cv" | "kh" | "cm" | "cl" | "co" | "cr" | "hr" | "cy" | "cz" | "cd" | "do" | "ec" | "eg" | "sv" | "ee" | "et" | "ge" | "gh" | "gr" | "gt" | "gy" | "ht" | "hn" | "is" | "id" | "jm" | "jo" | "kz" | "kw" | "lv" | "lb" | "lt" | "lu" | "mg" | "my" | "mt" | "mu" | "md" | "mn" | "me" | "ma" | "mz" | "na" | "np" | "nz" | "ni" | "ng" | "om" | "py" | "pe" | "ph" | "pt" | "ro" | "sa" | "sn" | "rs" | "sk" | "si" | "za" | "kr" | "lk" | "th" | "bs" | "tt" | "tn" | "ua" | "ae" | "uy" | "ve" | "vn" | "zm" | "zw" | "ly" | "mobile-us" | "mobile-uk" | "mobile-ca" | "mobile-de" | "mobile-fr" | "mobile-es" | "mobile-it" | "mobile-br" | "mobile-au" | "mobile-dk" | "mobile-mx" | "mobile-nl" | "mobile-se" | "mobile-tr" | "mobile-in" | "mobile-id" | "mobile-il" | "il-ext" | "tr-ext" | "dk-ext" | "no-ext" | "se-ext" | "fi-ext" | "ch-ext" | "mobile-il-ext" | "pa" | "pk" | "tw" | "qa" | undefined;
174
- export_decode?: number | undefined;
175
- export_escape?: 0 | 1 | undefined;
176
- export_columns?: ("Ph" | "Nq" | "Cp" | "Co" | "Nr" | "In" | "Kd" | "Dt" | "Db")[] | undefined;
177
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
173
+ declare const semrushKeywordOverviewAllDatabases: AppAction<typeof SemrushKeywordOverviewAllDatabasesInput, typeof SemrushKeywordOverviewAllDatabasesOutput, typeof semrush.credential>;
178
174
  //#endregion
179
175
  export { semrushKeywordOverviewAllDatabases };
180
176
  //# sourceMappingURL=keyword-overview-all-databases.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-overview-all-databases.d.cts","names":[],"sources":["../../src/actions/keyword-overview-all-databases.ts"],"mappings":";;;cAIa,uCAAA,EAAuC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAOvC,wCAAA,EAAwC,CAAA,CAAA,SAAA;;;cAIxC,kCAAA,gCAAkC,wBAAA"}
1
+ {"version":3,"file":"keyword-overview-all-databases.d.cts","names":[],"sources":["../../src/actions/keyword-overview-all-databases.ts"],"mappings":";;;;;cAMa,uCAAA,EAAuC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAOvC,wCAAA,EAAwC,CAAA,CAAA,SAAA;;;cAIxC,kCAAA,EAAoC,SAAA,QACxC,uCAAA,SACA,wCAAA,SACA,OAAA,CAAQ,UAAA"}