@keystrokehq/semrush 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/README.md +17 -0
  2. package/dist/action.cjs +21 -0
  3. package/dist/action.cjs.map +1 -0
  4. package/dist/action.mjs +21 -0
  5. package/dist/action.mjs.map +1 -0
  6. package/dist/actions/account-units-balance.cjs +16 -0
  7. package/dist/actions/account-units-balance.cjs.map +1 -0
  8. package/dist/actions/account-units-balance.d.cts +9 -0
  9. package/dist/actions/account-units-balance.d.cts.map +1 -0
  10. package/dist/actions/account-units-balance.d.mts +9 -0
  11. package/dist/actions/account-units-balance.d.mts.map +1 -0
  12. package/dist/actions/account-units-balance.mjs +13 -0
  13. package/dist/actions/account-units-balance.mjs.map +1 -0
  14. package/dist/actions/ads-copies.cjs +195 -0
  15. package/dist/actions/ads-copies.cjs.map +1 -0
  16. package/dist/actions/ads-copies.d.cts +9 -0
  17. package/dist/actions/ads-copies.d.cts.map +1 -0
  18. package/dist/actions/ads-copies.d.mts +9 -0
  19. package/dist/actions/ads-copies.d.mts.map +1 -0
  20. package/dist/actions/ads-copies.mjs +192 -0
  21. package/dist/actions/ads-copies.mjs.map +1 -0
  22. package/dist/actions/anchors.cjs +48 -0
  23. package/dist/actions/anchors.cjs.map +1 -0
  24. package/dist/actions/anchors.d.cts +9 -0
  25. package/dist/actions/anchors.d.cts.map +1 -0
  26. package/dist/actions/anchors.d.mts +9 -0
  27. package/dist/actions/anchors.d.mts.map +1 -0
  28. package/dist/actions/anchors.mjs +45 -0
  29. package/dist/actions/anchors.mjs.map +1 -0
  30. package/dist/actions/authority-score-profile.cjs +23 -0
  31. package/dist/actions/authority-score-profile.cjs.map +1 -0
  32. package/dist/actions/authority-score-profile.d.cts +9 -0
  33. package/dist/actions/authority-score-profile.d.cts.map +1 -0
  34. package/dist/actions/authority-score-profile.d.mts +9 -0
  35. package/dist/actions/authority-score-profile.d.mts.map +1 -0
  36. package/dist/actions/authority-score-profile.mjs +20 -0
  37. package/dist/actions/authority-score-profile.mjs.map +1 -0
  38. package/dist/actions/backlinks-overview.cjs +54 -0
  39. package/dist/actions/backlinks-overview.cjs.map +1 -0
  40. package/dist/actions/backlinks-overview.d.cts +9 -0
  41. package/dist/actions/backlinks-overview.d.cts.map +1 -0
  42. package/dist/actions/backlinks-overview.d.mts +9 -0
  43. package/dist/actions/backlinks-overview.d.mts.map +1 -0
  44. package/dist/actions/backlinks-overview.mjs +51 -0
  45. package/dist/actions/backlinks-overview.mjs.map +1 -0
  46. package/dist/actions/backlinks.cjs +91 -0
  47. package/dist/actions/backlinks.cjs.map +1 -0
  48. package/dist/actions/backlinks.d.cts +9 -0
  49. package/dist/actions/backlinks.d.cts.map +1 -0
  50. package/dist/actions/backlinks.d.mts +9 -0
  51. package/dist/actions/backlinks.d.mts.map +1 -0
  52. package/dist/actions/backlinks.mjs +88 -0
  53. package/dist/actions/backlinks.mjs.map +1 -0
  54. package/dist/actions/batch-comparison.cjs +50 -0
  55. package/dist/actions/batch-comparison.cjs.map +1 -0
  56. package/dist/actions/batch-comparison.d.cts +9 -0
  57. package/dist/actions/batch-comparison.d.cts.map +1 -0
  58. package/dist/actions/batch-comparison.d.mts +9 -0
  59. package/dist/actions/batch-comparison.d.mts.map +1 -0
  60. package/dist/actions/batch-comparison.mjs +47 -0
  61. package/dist/actions/batch-comparison.mjs.map +1 -0
  62. package/dist/actions/batch-keyword-overview.cjs +191 -0
  63. package/dist/actions/batch-keyword-overview.cjs.map +1 -0
  64. package/dist/actions/batch-keyword-overview.d.cts +9 -0
  65. package/dist/actions/batch-keyword-overview.d.cts.map +1 -0
  66. package/dist/actions/batch-keyword-overview.d.mts +9 -0
  67. package/dist/actions/batch-keyword-overview.d.mts.map +1 -0
  68. package/dist/actions/batch-keyword-overview.mjs +188 -0
  69. package/dist/actions/batch-keyword-overview.mjs.map +1 -0
  70. package/dist/actions/broad-match-keyword.cjs +214 -0
  71. package/dist/actions/broad-match-keyword.cjs.map +1 -0
  72. package/dist/actions/broad-match-keyword.d.cts +9 -0
  73. package/dist/actions/broad-match-keyword.d.cts.map +1 -0
  74. package/dist/actions/broad-match-keyword.d.mts +9 -0
  75. package/dist/actions/broad-match-keyword.d.mts.map +1 -0
  76. package/dist/actions/broad-match-keyword.mjs +211 -0
  77. package/dist/actions/broad-match-keyword.mjs.map +1 -0
  78. package/dist/actions/categories-profile.cjs +26 -0
  79. package/dist/actions/categories-profile.cjs.map +1 -0
  80. package/dist/actions/categories-profile.d.cts +9 -0
  81. package/dist/actions/categories-profile.d.cts.map +1 -0
  82. package/dist/actions/categories-profile.d.mts +9 -0
  83. package/dist/actions/categories-profile.d.mts.map +1 -0
  84. package/dist/actions/categories-profile.mjs +23 -0
  85. package/dist/actions/categories-profile.mjs.map +1 -0
  86. package/dist/actions/categories.cjs +26 -0
  87. package/dist/actions/categories.cjs.map +1 -0
  88. package/dist/actions/categories.d.cts +9 -0
  89. package/dist/actions/categories.d.cts.map +1 -0
  90. package/dist/actions/categories.d.mts +9 -0
  91. package/dist/actions/categories.d.mts.map +1 -0
  92. package/dist/actions/categories.mjs +23 -0
  93. package/dist/actions/categories.mjs.map +1 -0
  94. package/dist/actions/competitors-in-organic-search.cjs +200 -0
  95. package/dist/actions/competitors-in-organic-search.cjs.map +1 -0
  96. package/dist/actions/competitors-in-organic-search.d.cts +9 -0
  97. package/dist/actions/competitors-in-organic-search.d.cts.map +1 -0
  98. package/dist/actions/competitors-in-organic-search.d.mts +9 -0
  99. package/dist/actions/competitors-in-organic-search.d.mts.map +1 -0
  100. package/dist/actions/competitors-in-organic-search.mjs +197 -0
  101. package/dist/actions/competitors-in-organic-search.mjs.map +1 -0
  102. package/dist/actions/competitors-in-paid-search.cjs +194 -0
  103. package/dist/actions/competitors-in-paid-search.cjs.map +1 -0
  104. package/dist/actions/competitors-in-paid-search.d.cts +9 -0
  105. package/dist/actions/competitors-in-paid-search.d.cts.map +1 -0
  106. package/dist/actions/competitors-in-paid-search.d.mts +9 -0
  107. package/dist/actions/competitors-in-paid-search.d.mts.map +1 -0
  108. package/dist/actions/competitors-in-paid-search.mjs +191 -0
  109. package/dist/actions/competitors-in-paid-search.mjs.map +1 -0
  110. package/dist/actions/competitors.cjs +41 -0
  111. package/dist/actions/competitors.cjs.map +1 -0
  112. package/dist/actions/competitors.d.cts +9 -0
  113. package/dist/actions/competitors.d.cts.map +1 -0
  114. package/dist/actions/competitors.d.mts +9 -0
  115. package/dist/actions/competitors.d.mts.map +1 -0
  116. package/dist/actions/competitors.mjs +38 -0
  117. package/dist/actions/competitors.mjs.map +1 -0
  118. package/dist/actions/domain-ad-history.cjs +201 -0
  119. package/dist/actions/domain-ad-history.cjs.map +1 -0
  120. package/dist/actions/domain-ad-history.d.cts +9 -0
  121. package/dist/actions/domain-ad-history.d.cts.map +1 -0
  122. package/dist/actions/domain-ad-history.d.mts +9 -0
  123. package/dist/actions/domain-ad-history.d.mts.map +1 -0
  124. package/dist/actions/domain-ad-history.mjs +198 -0
  125. package/dist/actions/domain-ad-history.mjs.map +1 -0
  126. package/dist/actions/domain-organic-pages.cjs +231 -0
  127. package/dist/actions/domain-organic-pages.cjs.map +1 -0
  128. package/dist/actions/domain-organic-pages.d.cts +9 -0
  129. package/dist/actions/domain-organic-pages.d.cts.map +1 -0
  130. package/dist/actions/domain-organic-pages.d.mts +9 -0
  131. package/dist/actions/domain-organic-pages.d.mts.map +1 -0
  132. package/dist/actions/domain-organic-pages.mjs +228 -0
  133. package/dist/actions/domain-organic-pages.mjs.map +1 -0
  134. package/dist/actions/domain-organic-search-keywords.cjs +263 -0
  135. package/dist/actions/domain-organic-search-keywords.cjs.map +1 -0
  136. package/dist/actions/domain-organic-search-keywords.d.cts +9 -0
  137. package/dist/actions/domain-organic-search-keywords.d.cts.map +1 -0
  138. package/dist/actions/domain-organic-search-keywords.d.mts +9 -0
  139. package/dist/actions/domain-organic-search-keywords.d.mts.map +1 -0
  140. package/dist/actions/domain-organic-search-keywords.mjs +260 -0
  141. package/dist/actions/domain-organic-search-keywords.mjs.map +1 -0
  142. package/dist/actions/domain-organic-subdomains.cjs +198 -0
  143. package/dist/actions/domain-organic-subdomains.cjs.map +1 -0
  144. package/dist/actions/domain-organic-subdomains.d.cts +9 -0
  145. package/dist/actions/domain-organic-subdomains.d.cts.map +1 -0
  146. package/dist/actions/domain-organic-subdomains.d.mts +9 -0
  147. package/dist/actions/domain-organic-subdomains.d.mts.map +1 -0
  148. package/dist/actions/domain-organic-subdomains.mjs +195 -0
  149. package/dist/actions/domain-organic-subdomains.mjs.map +1 -0
  150. package/dist/actions/domain-paid-search-keywords.cjs +231 -0
  151. package/dist/actions/domain-paid-search-keywords.cjs.map +1 -0
  152. package/dist/actions/domain-paid-search-keywords.d.cts +9 -0
  153. package/dist/actions/domain-paid-search-keywords.d.cts.map +1 -0
  154. package/dist/actions/domain-paid-search-keywords.d.mts +9 -0
  155. package/dist/actions/domain-paid-search-keywords.d.mts.map +1 -0
  156. package/dist/actions/domain-paid-search-keywords.mjs +228 -0
  157. package/dist/actions/domain-paid-search-keywords.mjs.map +1 -0
  158. package/dist/actions/domain-pla-search-keywords.cjs +209 -0
  159. package/dist/actions/domain-pla-search-keywords.cjs.map +1 -0
  160. package/dist/actions/domain-pla-search-keywords.d.cts +9 -0
  161. package/dist/actions/domain-pla-search-keywords.d.cts.map +1 -0
  162. package/dist/actions/domain-pla-search-keywords.d.mts +9 -0
  163. package/dist/actions/domain-pla-search-keywords.d.mts.map +1 -0
  164. package/dist/actions/domain-pla-search-keywords.mjs +206 -0
  165. package/dist/actions/domain-pla-search-keywords.mjs.map +1 -0
  166. package/dist/actions/domain-vs-domain.cjs +230 -0
  167. package/dist/actions/domain-vs-domain.cjs.map +1 -0
  168. package/dist/actions/domain-vs-domain.d.cts +9 -0
  169. package/dist/actions/domain-vs-domain.d.cts.map +1 -0
  170. package/dist/actions/domain-vs-domain.d.mts +9 -0
  171. package/dist/actions/domain-vs-domain.d.mts.map +1 -0
  172. package/dist/actions/domain-vs-domain.mjs +227 -0
  173. package/dist/actions/domain-vs-domain.mjs.map +1 -0
  174. package/dist/actions/historical-data.cjs +32 -0
  175. package/dist/actions/historical-data.cjs.map +1 -0
  176. package/dist/actions/historical-data.d.cts +9 -0
  177. package/dist/actions/historical-data.d.cts.map +1 -0
  178. package/dist/actions/historical-data.d.mts +9 -0
  179. package/dist/actions/historical-data.d.mts.map +1 -0
  180. package/dist/actions/historical-data.mjs +29 -0
  181. package/dist/actions/historical-data.mjs.map +1 -0
  182. package/dist/actions/index.cjs +75 -0
  183. package/dist/actions/index.d.cts +38 -0
  184. package/dist/actions/index.d.mts +38 -0
  185. package/dist/actions/index.mjs +38 -0
  186. package/dist/actions/indexed-pages.cjs +52 -0
  187. package/dist/actions/indexed-pages.cjs.map +1 -0
  188. package/dist/actions/indexed-pages.d.cts +9 -0
  189. package/dist/actions/indexed-pages.d.cts.map +1 -0
  190. package/dist/actions/indexed-pages.d.mts +9 -0
  191. package/dist/actions/indexed-pages.d.mts.map +1 -0
  192. package/dist/actions/indexed-pages.mjs +49 -0
  193. package/dist/actions/indexed-pages.mjs.map +1 -0
  194. package/dist/actions/keyword-difficulty.cjs +168 -0
  195. package/dist/actions/keyword-difficulty.cjs.map +1 -0
  196. package/dist/actions/keyword-difficulty.d.cts +9 -0
  197. package/dist/actions/keyword-difficulty.d.cts.map +1 -0
  198. package/dist/actions/keyword-difficulty.d.mts +9 -0
  199. package/dist/actions/keyword-difficulty.d.mts.map +1 -0
  200. package/dist/actions/keyword-difficulty.mjs +165 -0
  201. package/dist/actions/keyword-difficulty.mjs.map +1 -0
  202. package/dist/actions/keyword-overview-all-databases.cjs +189 -0
  203. package/dist/actions/keyword-overview-all-databases.cjs.map +1 -0
  204. package/dist/actions/keyword-overview-all-databases.d.cts +9 -0
  205. package/dist/actions/keyword-overview-all-databases.d.cts.map +1 -0
  206. package/dist/actions/keyword-overview-all-databases.d.mts +9 -0
  207. package/dist/actions/keyword-overview-all-databases.d.mts.map +1 -0
  208. package/dist/actions/keyword-overview-all-databases.mjs +186 -0
  209. package/dist/actions/keyword-overview-all-databases.mjs.map +1 -0
  210. package/dist/actions/keyword-overview-one-database.cjs +188 -0
  211. package/dist/actions/keyword-overview-one-database.cjs.map +1 -0
  212. package/dist/actions/keyword-overview-one-database.d.cts +9 -0
  213. package/dist/actions/keyword-overview-one-database.d.cts.map +1 -0
  214. package/dist/actions/keyword-overview-one-database.d.mts +9 -0
  215. package/dist/actions/keyword-overview-one-database.d.mts.map +1 -0
  216. package/dist/actions/keyword-overview-one-database.mjs +185 -0
  217. package/dist/actions/keyword-overview-one-database.mjs.map +1 -0
  218. package/dist/actions/keywords-ads-history.cjs +194 -0
  219. package/dist/actions/keywords-ads-history.cjs.map +1 -0
  220. package/dist/actions/keywords-ads-history.d.cts +9 -0
  221. package/dist/actions/keywords-ads-history.d.cts.map +1 -0
  222. package/dist/actions/keywords-ads-history.d.mts +9 -0
  223. package/dist/actions/keywords-ads-history.d.mts.map +1 -0
  224. package/dist/actions/keywords-ads-history.mjs +191 -0
  225. package/dist/actions/keywords-ads-history.mjs.map +1 -0
  226. package/dist/actions/organic-results.cjs +189 -0
  227. package/dist/actions/organic-results.cjs.map +1 -0
  228. package/dist/actions/organic-results.d.cts +9 -0
  229. package/dist/actions/organic-results.d.cts.map +1 -0
  230. package/dist/actions/organic-results.d.mts +9 -0
  231. package/dist/actions/organic-results.d.mts.map +1 -0
  232. package/dist/actions/organic-results.mjs +186 -0
  233. package/dist/actions/organic-results.mjs.map +1 -0
  234. package/dist/actions/paid-results.cjs +180 -0
  235. package/dist/actions/paid-results.cjs.map +1 -0
  236. package/dist/actions/paid-results.d.cts +9 -0
  237. package/dist/actions/paid-results.d.cts.map +1 -0
  238. package/dist/actions/paid-results.d.mts +9 -0
  239. package/dist/actions/paid-results.d.mts.map +1 -0
  240. package/dist/actions/paid-results.mjs +177 -0
  241. package/dist/actions/paid-results.mjs.map +1 -0
  242. package/dist/actions/phrase-questions.cjs +209 -0
  243. package/dist/actions/phrase-questions.cjs.map +1 -0
  244. package/dist/actions/phrase-questions.d.cts +9 -0
  245. package/dist/actions/phrase-questions.d.cts.map +1 -0
  246. package/dist/actions/phrase-questions.d.mts +9 -0
  247. package/dist/actions/phrase-questions.d.mts.map +1 -0
  248. package/dist/actions/phrase-questions.mjs +206 -0
  249. package/dist/actions/phrase-questions.mjs.map +1 -0
  250. package/dist/actions/pla-competitors.cjs +195 -0
  251. package/dist/actions/pla-competitors.cjs.map +1 -0
  252. package/dist/actions/pla-competitors.d.cts +9 -0
  253. package/dist/actions/pla-competitors.d.cts.map +1 -0
  254. package/dist/actions/pla-competitors.d.mts +9 -0
  255. package/dist/actions/pla-competitors.d.mts.map +1 -0
  256. package/dist/actions/pla-competitors.mjs +192 -0
  257. package/dist/actions/pla-competitors.mjs.map +1 -0
  258. package/dist/actions/pla-copies.cjs +192 -0
  259. package/dist/actions/pla-copies.cjs.map +1 -0
  260. package/dist/actions/pla-copies.d.cts +9 -0
  261. package/dist/actions/pla-copies.d.cts.map +1 -0
  262. package/dist/actions/pla-copies.d.mts +9 -0
  263. package/dist/actions/pla-copies.d.mts.map +1 -0
  264. package/dist/actions/pla-copies.mjs +189 -0
  265. package/dist/actions/pla-copies.mjs.map +1 -0
  266. package/dist/actions/referring-domains-by-country.cjs +40 -0
  267. package/dist/actions/referring-domains-by-country.cjs.map +1 -0
  268. package/dist/actions/referring-domains-by-country.d.cts +9 -0
  269. package/dist/actions/referring-domains-by-country.d.cts.map +1 -0
  270. package/dist/actions/referring-domains-by-country.d.mts +9 -0
  271. package/dist/actions/referring-domains-by-country.d.mts.map +1 -0
  272. package/dist/actions/referring-domains-by-country.mjs +37 -0
  273. package/dist/actions/referring-domains-by-country.mjs.map +1 -0
  274. package/dist/actions/referring-domains.cjs +60 -0
  275. package/dist/actions/referring-domains.cjs.map +1 -0
  276. package/dist/actions/referring-domains.d.cts +9 -0
  277. package/dist/actions/referring-domains.d.cts.map +1 -0
  278. package/dist/actions/referring-domains.d.mts +9 -0
  279. package/dist/actions/referring-domains.d.mts.map +1 -0
  280. package/dist/actions/referring-domains.mjs +57 -0
  281. package/dist/actions/referring-domains.mjs.map +1 -0
  282. package/dist/actions/referring-i-ps.cjs +50 -0
  283. package/dist/actions/referring-i-ps.cjs.map +1 -0
  284. package/dist/actions/referring-i-ps.d.cts +9 -0
  285. package/dist/actions/referring-i-ps.d.cts.map +1 -0
  286. package/dist/actions/referring-i-ps.d.mts +9 -0
  287. package/dist/actions/referring-i-ps.d.mts.map +1 -0
  288. package/dist/actions/referring-i-ps.mjs +47 -0
  289. package/dist/actions/referring-i-ps.mjs.map +1 -0
  290. package/dist/actions/related-keywords.cjs +220 -0
  291. package/dist/actions/related-keywords.cjs.map +1 -0
  292. package/dist/actions/related-keywords.d.cts +9 -0
  293. package/dist/actions/related-keywords.d.cts.map +1 -0
  294. package/dist/actions/related-keywords.d.mts +9 -0
  295. package/dist/actions/related-keywords.d.mts.map +1 -0
  296. package/dist/actions/related-keywords.mjs +217 -0
  297. package/dist/actions/related-keywords.mjs.map +1 -0
  298. package/dist/actions/tld-distribution.cjs +40 -0
  299. package/dist/actions/tld-distribution.cjs.map +1 -0
  300. package/dist/actions/tld-distribution.d.cts +9 -0
  301. package/dist/actions/tld-distribution.d.cts.map +1 -0
  302. package/dist/actions/tld-distribution.d.mts +9 -0
  303. package/dist/actions/tld-distribution.d.mts.map +1 -0
  304. package/dist/actions/tld-distribution.mjs +37 -0
  305. package/dist/actions/tld-distribution.mjs.map +1 -0
  306. package/dist/app.cjs +9 -0
  307. package/dist/app.cjs.map +1 -0
  308. package/dist/app.d.cts +5 -0
  309. package/dist/app.d.cts.map +1 -0
  310. package/dist/app.d.mts +5 -0
  311. package/dist/app.d.mts.map +1 -0
  312. package/dist/app.mjs +10 -0
  313. package/dist/app.mjs.map +1 -0
  314. package/dist/catalog.cjs +15 -0
  315. package/dist/catalog.cjs.map +1 -0
  316. package/dist/catalog.d.cts +14 -0
  317. package/dist/catalog.d.cts.map +1 -0
  318. package/dist/catalog.d.mts +14 -0
  319. package/dist/catalog.d.mts.map +1 -0
  320. package/dist/catalog.mjs +15 -0
  321. package/dist/catalog.mjs.map +1 -0
  322. package/dist/execute.cjs +18 -0
  323. package/dist/execute.cjs.map +1 -0
  324. package/dist/execute.mjs +18 -0
  325. package/dist/execute.mjs.map +1 -0
  326. package/dist/index.cjs +80 -0
  327. package/dist/index.d.cts +40 -0
  328. package/dist/index.d.mts +40 -0
  329. package/dist/index.mjs +41 -0
  330. package/package.json +49 -0
@@ -0,0 +1,228 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ const semrushDomainOrganicPages = action("SEMRUSH_DOMAIN_ORGANIC_PAGES", {
4
+ slug: "semrush-domain-organic-pages",
5
+ name: "Get domain organic pages",
6
+ description: "Fetches a report on a domain's unique organic pages ranking in Google's top 100 search results, with options for specifying database, date, columns, sorting, and filtering. Response is semicolon-separated CSV text in a single `data` field requiring explicit parsing. The literal response `ERROR 50 :: NOTHING FOUND` means zero results for that domain/database combination, not a system error. Traffic metrics (e.g., `Tr`) are modeled estimates incompatible with first-party analytics data.",
7
+ input: z.object({
8
+ domain: z.string().describe("Domain name to analyze (e.g., 'example.com')."),
9
+ database: z.enum([
10
+ "us",
11
+ "uk",
12
+ "ca",
13
+ "ru",
14
+ "de",
15
+ "fr",
16
+ "es",
17
+ "it",
18
+ "br",
19
+ "au",
20
+ "ar",
21
+ "be",
22
+ "ch",
23
+ "dk",
24
+ "fi",
25
+ "hk",
26
+ "ie",
27
+ "il",
28
+ "mx",
29
+ "nl",
30
+ "no",
31
+ "pl",
32
+ "se",
33
+ "sg",
34
+ "tr",
35
+ "jp",
36
+ "in",
37
+ "hu",
38
+ "af",
39
+ "al",
40
+ "dz",
41
+ "ao",
42
+ "am",
43
+ "at",
44
+ "az",
45
+ "bh",
46
+ "bd",
47
+ "by",
48
+ "bz",
49
+ "bo",
50
+ "ba",
51
+ "bw",
52
+ "bn",
53
+ "bg",
54
+ "cv",
55
+ "kh",
56
+ "cm",
57
+ "cl",
58
+ "co",
59
+ "cr",
60
+ "hr",
61
+ "cy",
62
+ "cz",
63
+ "cd",
64
+ "do",
65
+ "ec",
66
+ "eg",
67
+ "sv",
68
+ "ee",
69
+ "et",
70
+ "ge",
71
+ "gh",
72
+ "gr",
73
+ "gt",
74
+ "gy",
75
+ "ht",
76
+ "hn",
77
+ "is",
78
+ "id",
79
+ "jm",
80
+ "jo",
81
+ "kz",
82
+ "kw",
83
+ "lv",
84
+ "lb",
85
+ "lt",
86
+ "lu",
87
+ "mg",
88
+ "my",
89
+ "mt",
90
+ "mu",
91
+ "md",
92
+ "mn",
93
+ "me",
94
+ "ma",
95
+ "mz",
96
+ "na",
97
+ "np",
98
+ "nz",
99
+ "ni",
100
+ "ng",
101
+ "om",
102
+ "py",
103
+ "pe",
104
+ "ph",
105
+ "pt",
106
+ "ro",
107
+ "sa",
108
+ "sn",
109
+ "rs",
110
+ "sk",
111
+ "si",
112
+ "za",
113
+ "kr",
114
+ "lk",
115
+ "th",
116
+ "bs",
117
+ "tt",
118
+ "tn",
119
+ "ua",
120
+ "ae",
121
+ "uy",
122
+ "ve",
123
+ "vn",
124
+ "zm",
125
+ "zw",
126
+ "ly",
127
+ "mobile-us",
128
+ "mobile-uk",
129
+ "mobile-ca",
130
+ "mobile-de",
131
+ "mobile-fr",
132
+ "mobile-es",
133
+ "mobile-it",
134
+ "mobile-br",
135
+ "mobile-au",
136
+ "mobile-dk",
137
+ "mobile-mx",
138
+ "mobile-nl",
139
+ "mobile-se",
140
+ "mobile-tr",
141
+ "mobile-in",
142
+ "mobile-id",
143
+ "mobile-il",
144
+ "il-ext",
145
+ "tr-ext",
146
+ "dk-ext",
147
+ "no-ext",
148
+ "se-ext",
149
+ "fi-ext",
150
+ "ch-ext",
151
+ "mobile-il-ext",
152
+ "pa",
153
+ "pk",
154
+ "tw",
155
+ "qa"
156
+ ]).describe("Regional database for analysis (e.g., 'us', 'gb', 'de'). See Semrush API docs for full list."),
157
+ display_date: z.string().describe("Date for historical data report in YYYYMM15 format (e.g., '20231015'). If omitted, uses most recent data. Day component MUST be 15; any other day value will not return historical data correctly.").optional(),
158
+ display_sort: z.enum([
159
+ "pc_asc",
160
+ "pc_desc",
161
+ "tg_asc",
162
+ "tg_desc",
163
+ "tr_asc",
164
+ "tr_desc",
165
+ "sr_asc",
166
+ "sr_desc",
167
+ "st_asc",
168
+ "st_desc"
169
+ ]).default("pc_desc").describe("Column and order for sorting results (e.g., 'pc_desc' for traffic share descending).").optional(),
170
+ display_limit: z.number().int().default(1e4).describe("Maximum number of results to return. For more than 100,000, use with `display_offset`. Large domains may exceed 10,000 rows; results are silently truncated at `display_limit`. Paginate by incrementing `display_offset` until fewer rows than `display_limit` are returned. Avoid unnecessarily large values — each request consumes API units (HTTP 402 if exhausted) and may trigger rate limits (HTTP 429).").optional(),
171
+ export_decode: z.union([z.literal(0), z.literal(1)]).default(1).describe("Set to 0 for URL-encoded response, 1 for decoded (non-converted) response.").optional(),
172
+ export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe("Set to 1 to wrap report columns in double quotation marks (\"), 0 to disable.").optional(),
173
+ display_filter: z.array(z.enum([
174
+ "Ur",
175
+ "Pc",
176
+ "Tg",
177
+ "Tr",
178
+ "Ipu",
179
+ "Ip0",
180
+ "Ip1",
181
+ "Ip2",
182
+ "Ip3",
183
+ "Sr",
184
+ "St"
185
+ ])).default([]).describe("Columns from `DomainOrganicPagesFilterType` to filter results by. If empty, no column-specific filters are applied.").optional(),
186
+ display_offset: z.number().int().default(0).describe("Number of results to skip (for pagination with `display_limit`).").optional(),
187
+ export_columns: z.array(z.enum([
188
+ "Ur",
189
+ "Pc",
190
+ "Tg",
191
+ "Tr",
192
+ "Ipu",
193
+ "Ip0",
194
+ "Ip1",
195
+ "Ip2",
196
+ "Ip3",
197
+ "Itu",
198
+ "It0",
199
+ "It1",
200
+ "It2",
201
+ "It3",
202
+ "Sr",
203
+ "St"
204
+ ])).default([
205
+ "Ur",
206
+ "Pc",
207
+ "Tg",
208
+ "Tr",
209
+ "Ipu",
210
+ "Ip0",
211
+ "Ip1",
212
+ "Ip2",
213
+ "Ip3",
214
+ "Itu",
215
+ "It0",
216
+ "It1",
217
+ "It2",
218
+ "It3",
219
+ "Sr",
220
+ "St"
221
+ ]).describe("Columns to include in the report. If omitted, all columns from `DomainOrganicPagesExportColumns` are returned.").optional()
222
+ }).describe("Request schema for fetching unique organic pages of a domain."),
223
+ output: z.object({ data: z.string().describe("Report data as a string (typically CSV), structured by `export_columns` and `export_decode` settings.") }).describe("Response schema for `DomainOrganicPages`.")
224
+ });
225
+ //#endregion
226
+ export { semrushDomainOrganicPages };
227
+
228
+ //# sourceMappingURL=domain-organic-pages.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-organic-pages.mjs","names":[],"sources":["../../src/actions/domain-organic-pages.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushDomainOrganicPagesInput: z.ZodTypeAny = z.object({\n domain: z.string().describe(\"Domain name to analyze (e.g., 'example.com').\"),\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 analysis (e.g., 'us', 'gb', 'de'). See Semrush API docs for full list.\"),\n display_date: z.string().describe(\"Date for historical data report in YYYYMM15 format (e.g., '20231015'). If omitted, uses most recent data. Day component MUST be 15; any other day value will not return historical data correctly.\").optional(),\n display_sort: z.enum([\"pc_asc\", \"pc_desc\", \"tg_asc\", \"tg_desc\", \"tr_asc\", \"tr_desc\", \"sr_asc\", \"sr_desc\", \"st_asc\", \"st_desc\"]).default(\"pc_desc\").describe(\"Column and order for sorting results (e.g., 'pc_desc' for traffic share descending).\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Maximum number of results to return. For more than 100,000, use with `display_offset`. Large domains may exceed 10,000 rows; results are silently truncated at `display_limit`. Paginate by incrementing `display_offset` until fewer rows than `display_limit` are returned. Avoid unnecessarily large values — each request consumes API units (HTTP 402 if exhausted) and may trigger rate limits (HTTP 429).\").optional(),\n export_decode: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 0 for URL-encoded response, 1 for decoded (non-converted) response.\").optional(),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap report columns in double quotation marks (\\\"), 0 to disable.\").optional(),\n display_filter: z.array(z.enum([\"Ur\", \"Pc\", \"Tg\", \"Tr\", \"Ipu\", \"Ip0\", \"Ip1\", \"Ip2\", \"Ip3\", \"Sr\", \"St\"])).default([]).describe(\"Columns from `DomainOrganicPagesFilterType` to filter results by. If empty, no column-specific filters are applied.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of results to skip (for pagination with `display_limit`).\").optional(),\n export_columns: z.array(z.enum([\"Ur\", \"Pc\", \"Tg\", \"Tr\", \"Ipu\", \"Ip0\", \"Ip1\", \"Ip2\", \"Ip3\", \"Itu\", \"It0\", \"It1\", \"It2\", \"It3\", \"Sr\", \"St\"])).default([\"Ur\",\"Pc\",\"Tg\",\"Tr\",\"Ipu\",\"Ip0\",\"Ip1\",\"Ip2\",\"Ip3\",\"Itu\",\"It0\",\"It1\",\"It2\",\"It3\",\"Sr\",\"St\"]).describe(\"Columns to include in the report. If omitted, all columns from `DomainOrganicPagesExportColumns` are returned.\").optional(),\n}).describe(\"Request schema for fetching unique organic pages of a domain.\");\nexport const SemrushDomainOrganicPagesOutput: z.ZodTypeAny = z.object({\n data: z.string().describe(\"Report data as a string (typically CSV), structured by `export_columns` and `export_decode` settings.\"),\n}).describe(\"Response schema for `DomainOrganicPages`.\");\n\nexport const semrushDomainOrganicPages = action(\"SEMRUSH_DOMAIN_ORGANIC_PAGES\", {\n slug: \"semrush-domain-organic-pages\",\n name: \"Get domain organic pages\",\n description: \"Fetches a report on a domain's unique organic pages ranking in Google's top 100 search results, with options for specifying database, date, columns, sorting, and filtering. Response is semicolon-separated CSV text in a single `data` field requiring explicit parsing. The literal response `ERROR 50 :: NOTHING FOUND` means zero results for that domain/database combination, not a system error. Traffic metrics (e.g., `Tr`) are modeled estimates incompatible with first-party analytics data.\",\n input: SemrushDomainOrganicPagesInput,\n output: SemrushDomainOrganicPagesOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,263 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/domain-organic-search-keywords.ts
4
+ const SemrushDomainOrganicSearchKeywordsInput = zod.z.object({
5
+ domain: zod.z.string().describe("The domain name (e.g., example.com) to investigate for organic search keywords."),
6
+ database: zod.z.enum([
7
+ "us",
8
+ "uk",
9
+ "ca",
10
+ "ru",
11
+ "de",
12
+ "fr",
13
+ "es",
14
+ "it",
15
+ "br",
16
+ "au",
17
+ "ar",
18
+ "be",
19
+ "ch",
20
+ "dk",
21
+ "fi",
22
+ "hk",
23
+ "ie",
24
+ "il",
25
+ "mx",
26
+ "nl",
27
+ "no",
28
+ "pl",
29
+ "se",
30
+ "sg",
31
+ "tr",
32
+ "jp",
33
+ "in",
34
+ "hu",
35
+ "af",
36
+ "al",
37
+ "dz",
38
+ "ao",
39
+ "am",
40
+ "at",
41
+ "az",
42
+ "bh",
43
+ "bd",
44
+ "by",
45
+ "bz",
46
+ "bo",
47
+ "ba",
48
+ "bw",
49
+ "bn",
50
+ "bg",
51
+ "cv",
52
+ "kh",
53
+ "cm",
54
+ "cl",
55
+ "co",
56
+ "cr",
57
+ "hr",
58
+ "cy",
59
+ "cz",
60
+ "cd",
61
+ "do",
62
+ "ec",
63
+ "eg",
64
+ "sv",
65
+ "ee",
66
+ "et",
67
+ "ge",
68
+ "gh",
69
+ "gr",
70
+ "gt",
71
+ "gy",
72
+ "ht",
73
+ "hn",
74
+ "is",
75
+ "id",
76
+ "jm",
77
+ "jo",
78
+ "kz",
79
+ "kw",
80
+ "lv",
81
+ "lb",
82
+ "lt",
83
+ "lu",
84
+ "mg",
85
+ "my",
86
+ "mt",
87
+ "mu",
88
+ "md",
89
+ "mn",
90
+ "me",
91
+ "ma",
92
+ "mz",
93
+ "na",
94
+ "np",
95
+ "nz",
96
+ "ni",
97
+ "ng",
98
+ "om",
99
+ "py",
100
+ "pe",
101
+ "ph",
102
+ "pt",
103
+ "ro",
104
+ "sa",
105
+ "sn",
106
+ "rs",
107
+ "sk",
108
+ "si",
109
+ "za",
110
+ "kr",
111
+ "lk",
112
+ "th",
113
+ "bs",
114
+ "tt",
115
+ "tn",
116
+ "ua",
117
+ "ae",
118
+ "uy",
119
+ "ve",
120
+ "vn",
121
+ "zm",
122
+ "zw",
123
+ "ly",
124
+ "mobile-us",
125
+ "mobile-uk",
126
+ "mobile-ca",
127
+ "mobile-de",
128
+ "mobile-fr",
129
+ "mobile-es",
130
+ "mobile-it",
131
+ "mobile-br",
132
+ "mobile-au",
133
+ "mobile-dk",
134
+ "mobile-mx",
135
+ "mobile-nl",
136
+ "mobile-se",
137
+ "mobile-tr",
138
+ "mobile-in",
139
+ "mobile-id",
140
+ "mobile-il",
141
+ "il-ext",
142
+ "tr-ext",
143
+ "dk-ext",
144
+ "no-ext",
145
+ "se-ext",
146
+ "fi-ext",
147
+ "ch-ext",
148
+ "mobile-il-ext",
149
+ "pa",
150
+ "pk",
151
+ "tw",
152
+ "qa"
153
+ ]).describe("The regional database to query (e.g., 'us', 'uk', 'de')."),
154
+ display_date: zod.z.string().describe("Date for keyword data: 'YYYYMM15' for monthly historical, 'YYYYMMDD' for daily (e.g., '20231015', '20231120'). Shows latest daily ranking changes if unspecified.").optional(),
155
+ display_sort: zod.z.enum([
156
+ "po_asc",
157
+ "po_desc",
158
+ "tg_asc",
159
+ "tg_desc",
160
+ "tr_asc",
161
+ "tr_desc",
162
+ "tc_asc",
163
+ "tc_desc",
164
+ "nq_asc",
165
+ "nq_desc",
166
+ "co_asc",
167
+ "co_desc",
168
+ "kd_asc",
169
+ "kd_desc",
170
+ "cp_asc",
171
+ "cp_desc",
172
+ "nr_asc",
173
+ "nr_desc",
174
+ "ts_asc",
175
+ "ts_desc"
176
+ ]).default("po_desc").describe("Column and order for sorting results (e.g., 'po_desc' for position descending).").optional(),
177
+ display_daily: zod.z.number().int().describe("Set to 1 for daily updates on position changes (last 31 days), or 0 for monthly results. Requires `display_positions` if set to 1.").optional(),
178
+ display_limit: zod.z.number().int().default(1e4).describe("Number of results. When `display_offset` is used, this specifies the CUMULATIVE count from the start. Semrush may have per-call limits; use pagination for large datasets.").optional(),
179
+ export_escape: zod.z.union([zod.z.literal(0), zod.z.literal(1)]).default(1).describe("Set to 1 to wrap report columns in double quotation marks (\"); 0 to disable.").optional(),
180
+ display_filter: zod.z.array(zod.z.enum([
181
+ "Ph",
182
+ "Po",
183
+ "Nq",
184
+ "Cp",
185
+ "Ur",
186
+ "Tg",
187
+ "Tr",
188
+ "Tc",
189
+ "Nr",
190
+ "Co",
191
+ "Pp",
192
+ "Pd",
193
+ "Fp",
194
+ "Fk",
195
+ "In",
196
+ "Br"
197
+ ])).default([]).describe("List of column codes from `DomainOrganicSearchKeywordsFilterType` for filtering (e.g., 'Ph', 'Ur'). For complex filter syntax like 'Ph|Cn|semrush', refer to Semrush API documentation.").optional(),
198
+ display_offset: zod.z.number().int().default(0).describe("Number of initial results to skip for pagination. When used, `display_limit` should be `display_offset` + number of rows for the current page.").optional(),
199
+ export_columns: zod.z.array(zod.z.enum([
200
+ "Ph",
201
+ "Po",
202
+ "Pp",
203
+ "Pd",
204
+ "Nq",
205
+ "Cp",
206
+ "Ur",
207
+ "Tr",
208
+ "Tg",
209
+ "Tc",
210
+ "Co",
211
+ "Nr",
212
+ "Td",
213
+ "Kd",
214
+ "Fp",
215
+ "Fk",
216
+ "Ts",
217
+ "In",
218
+ "Pt"
219
+ ])).default([
220
+ "Ph",
221
+ "Po",
222
+ "Pp",
223
+ "Pd",
224
+ "Nq",
225
+ "Cp",
226
+ "Ur",
227
+ "Tr",
228
+ "Tg",
229
+ "Tc",
230
+ "Co",
231
+ "Nr",
232
+ "Td",
233
+ "Kd",
234
+ "Fp",
235
+ "Fk",
236
+ "Ts",
237
+ "In",
238
+ "Pt"
239
+ ]).describe("Data columns to include. If omitted, all columns from `DomainOrganicSearchKeywordsExportColumns` are requested. Retain key metrics Tr (traffic), Cp (CPC), Po (position), and Kd (keyword difficulty) to avoid missing critical data.").optional(),
240
+ display_positions: zod.z.enum([
241
+ "new",
242
+ "lost",
243
+ "rise",
244
+ "fall"
245
+ ]).describe("Filter keywords by position changes in Google's top 100: 'new', 'lost', 'rise', or 'fall'.").optional(),
246
+ display_positions_type: zod.z.enum([
247
+ "organic",
248
+ "all",
249
+ "serp_features"
250
+ ]).default("organic").describe("Type of ranking positions: 'organic' (standard), 'all' (includes SERP features), or 'serp_features' (domain ranks in SERP features).").optional()
251
+ }).describe("Request schema for retrieving organic search keywords for a domain from Semrush.");
252
+ const SemrushDomainOrganicSearchKeywordsOutput = zod.z.object({ data: zod.z.string().describe("The organic search keyword data for the specified domain, typically returned in a text-based format (e.g., CSV).") }).describe("Response schema for `DomainOrganicSearchKeywords`");
253
+ const semrushDomainOrganicSearchKeywords = require_action.action("SEMRUSH_DOMAIN_ORGANIC_SEARCH_KEYWORDS", {
254
+ slug: "semrush-domain-organic-search-keywords",
255
+ name: "Get domain organic search keywords",
256
+ description: "Retrieves organic search keywords for a domain from a specified Semrush regional database; `display_positions` must be set if `display_daily=1` for daily updates. Response is semicolon-delimited CSV text (parse with sep=';', cast numeric columns before aggregations). A response of 'ERROR 50 :: NOTHING FOUND' indicates no data for the domain in the selected database — treat as a valid zero-result.",
257
+ input: SemrushDomainOrganicSearchKeywordsInput,
258
+ output: SemrushDomainOrganicSearchKeywordsOutput
259
+ });
260
+ //#endregion
261
+ exports.semrushDomainOrganicSearchKeywords = semrushDomainOrganicSearchKeywords;
262
+
263
+ //# sourceMappingURL=domain-organic-search-keywords.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-organic-search-keywords.cjs","names":["z","action"],"sources":["../../src/actions/domain-organic-search-keywords.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SemrushDomainOrganicSearchKeywordsInput: z.ZodTypeAny = z.object({\n domain: z.string().describe(\"The domain name (e.g., example.com) to investigate for organic search keywords.\"),\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 regional database to query (e.g., 'us', 'uk', 'de').\"),\n display_date: z.string().describe(\"Date for keyword data: 'YYYYMM15' for monthly historical, 'YYYYMMDD' for daily (e.g., '20231015', '20231120'). Shows latest daily ranking changes if unspecified.\").optional(),\n display_sort: z.enum([\"po_asc\", \"po_desc\", \"tg_asc\", \"tg_desc\", \"tr_asc\", \"tr_desc\", \"tc_asc\", \"tc_desc\", \"nq_asc\", \"nq_desc\", \"co_asc\", \"co_desc\", \"kd_asc\", \"kd_desc\", \"cp_asc\", \"cp_desc\", \"nr_asc\", \"nr_desc\", \"ts_asc\", \"ts_desc\"]).default(\"po_desc\").describe(\"Column and order for sorting results (e.g., 'po_desc' for position descending).\").optional(),\n display_daily: z.number().int().describe(\"Set to 1 for daily updates on position changes (last 31 days), or 0 for monthly results. Requires `display_positions` if set to 1.\").optional(),\n display_limit: z.number().int().default(10000).describe(\"Number of results. When `display_offset` is used, this specifies the CUMULATIVE count from the start. Semrush may have per-call limits; use pagination for large datasets.\").optional(),\n export_escape: z.union([z.literal(0), z.literal(1)]).default(1).describe(\"Set to 1 to wrap report columns in double quotation marks (\\\"); 0 to disable.\").optional(),\n display_filter: z.array(z.enum([\"Ph\", \"Po\", \"Nq\", \"Cp\", \"Ur\", \"Tg\", \"Tr\", \"Tc\", \"Nr\", \"Co\", \"Pp\", \"Pd\", \"Fp\", \"Fk\", \"In\", \"Br\"])).default([]).describe(\"List of column codes from `DomainOrganicSearchKeywordsFilterType` for filtering (e.g., 'Ph', 'Ur'). For complex filter syntax like 'Ph|Cn|semrush', refer to Semrush API documentation.\").optional(),\n display_offset: z.number().int().default(0).describe(\"Number of initial results to skip for pagination. When used, `display_limit` should be `display_offset` + number of rows for the current page.\").optional(),\n export_columns: z.array(z.enum([\"Ph\", \"Po\", \"Pp\", \"Pd\", \"Nq\", \"Cp\", \"Ur\", \"Tr\", \"Tg\", \"Tc\", \"Co\", \"Nr\", \"Td\", \"Kd\", \"Fp\", \"Fk\", \"Ts\", \"In\", \"Pt\"])).default([\"Ph\",\"Po\",\"Pp\",\"Pd\",\"Nq\",\"Cp\",\"Ur\",\"Tr\",\"Tg\",\"Tc\",\"Co\",\"Nr\",\"Td\",\"Kd\",\"Fp\",\"Fk\",\"Ts\",\"In\",\"Pt\"]).describe(\"Data columns to include. If omitted, all columns from `DomainOrganicSearchKeywordsExportColumns` are requested. Retain key metrics Tr (traffic), Cp (CPC), Po (position), and Kd (keyword difficulty) to avoid missing critical data.\").optional(),\n display_positions: z.enum([\"new\", \"lost\", \"rise\", \"fall\"]).describe(\"Filter keywords by position changes in Google's top 100: 'new', 'lost', 'rise', or 'fall'.\").optional(),\n display_positions_type: z.enum([\"organic\", \"all\", \"serp_features\"]).default(\"organic\").describe(\"Type of ranking positions: 'organic' (standard), 'all' (includes SERP features), or 'serp_features' (domain ranks in SERP features).\").optional(),\n}).describe(\"Request schema for retrieving organic search keywords for a domain from Semrush.\");\nexport const SemrushDomainOrganicSearchKeywordsOutput: z.ZodTypeAny = z.object({\n data: z.string().describe(\"The organic search keyword data for the specified domain, typically returned in a text-based format (e.g., CSV).\"),\n}).describe(\"Response schema for `DomainOrganicSearchKeywords`\");\n\nexport const semrushDomainOrganicSearchKeywords = action(\"SEMRUSH_DOMAIN_ORGANIC_SEARCH_KEYWORDS\", {\n slug: \"semrush-domain-organic-search-keywords\",\n name: \"Get domain organic search keywords\",\n description: \"Retrieves organic search keywords for a domain from a specified Semrush regional database; `display_positions` must be set if `display_daily=1` for daily updates. Response is semicolon-delimited CSV text (parse with sep=';', cast numeric columns before aggregations). A response of 'ERROR 50 :: NOTHING FOUND' indicates no data for the domain in the selected database — treat as a valid zero-result.\",\n input: SemrushDomainOrganicSearchKeywordsInput,\n output: SemrushDomainOrganicSearchKeywordsOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/domain-organic-search-keywords.d.ts
4
+ declare const SemrushDomainOrganicSearchKeywordsInput: z.ZodTypeAny;
5
+ declare const SemrushDomainOrganicSearchKeywordsOutput: z.ZodTypeAny;
6
+ declare const semrushDomainOrganicSearchKeywords: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { semrushDomainOrganicSearchKeywords };
9
+ //# sourceMappingURL=domain-organic-search-keywords.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-organic-search-keywords.d.cts","names":[],"sources":["../../src/actions/domain-organic-search-keywords.ts"],"mappings":";;;cAIa,uCAAA,EAAyC,CAAA,CAAE,UAauC;AAAA,cAClF,wCAAA,EAA0C,CAAA,CAAE,UAEO;AAAA,cAEnD,kCAAA,gCAAkC,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/domain-organic-search-keywords.d.ts
4
+ declare const SemrushDomainOrganicSearchKeywordsInput: z.ZodTypeAny;
5
+ declare const SemrushDomainOrganicSearchKeywordsOutput: z.ZodTypeAny;
6
+ declare const semrushDomainOrganicSearchKeywords: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { semrushDomainOrganicSearchKeywords };
9
+ //# sourceMappingURL=domain-organic-search-keywords.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-organic-search-keywords.d.mts","names":[],"sources":["../../src/actions/domain-organic-search-keywords.ts"],"mappings":";;;cAIa,uCAAA,EAAyC,CAAA,CAAE,UAauC;AAAA,cAClF,wCAAA,EAA0C,CAAA,CAAE,UAEO;AAAA,cAEnD,kCAAA,gCAAkC,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}