semrush-cli 0.0.0-stage → 0.1.1

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.
@@ -0,0 +1,2124 @@
1
+ import { Schema } from "effect";
2
+
3
+ //#region package.json
4
+ var version$1 = "0.1.1";
5
+
6
+ //#endregion
7
+ //#region src/report-catalog.json
8
+ var report_catalog_default = {
9
+ account_status: {
10
+ "method": "user.GetInfo",
11
+ "description": "Signed-in account and report limits.",
12
+ "transport": "keyword",
13
+ "total_method": "",
14
+ "web_report": "domain.overview",
15
+ "schema": {
16
+ "additionalProperties": false,
17
+ "properties": {},
18
+ "title": "EmptyQuery",
19
+ "type": "object"
20
+ }
21
+ },
22
+ keyword_overview: {
23
+ "method": "keywords.GetInfo",
24
+ "description": "Volume, difficulty, CPC, intent and trends.",
25
+ "transport": "keyword",
26
+ "total_method": "",
27
+ "web_report": "domain.overview",
28
+ "schema": {
29
+ "additionalProperties": false,
30
+ "properties": {
31
+ "keyword": {
32
+ "maxLength": 200,
33
+ "minLength": 1,
34
+ "title": "Keyword",
35
+ "type": "string"
36
+ },
37
+ "database": {
38
+ "default": "us",
39
+ "pattern": "^[a-z]{2}$",
40
+ "title": "Database",
41
+ "type": "string"
42
+ }
43
+ },
44
+ "required": ["keyword"],
45
+ "title": "KeywordQuery",
46
+ "type": "object"
47
+ }
48
+ },
49
+ keyword_ideas: {
50
+ "method": "ideas.GetKeywords",
51
+ "description": "Overview sample of related keywords or questions.",
52
+ "transport": "keyword",
53
+ "total_method": "",
54
+ "web_report": "domain.overview",
55
+ "schema": {
56
+ "additionalProperties": false,
57
+ "properties": {
58
+ "keyword": {
59
+ "maxLength": 200,
60
+ "minLength": 1,
61
+ "title": "Keyword",
62
+ "type": "string"
63
+ },
64
+ "database": {
65
+ "default": "us",
66
+ "pattern": "^[a-z]{2}$",
67
+ "title": "Database",
68
+ "type": "string"
69
+ },
70
+ "questions_only": {
71
+ "default": false,
72
+ "title": "Questions Only",
73
+ "type": "boolean"
74
+ },
75
+ "limit": {
76
+ "default": 10,
77
+ "maximum": 100,
78
+ "minimum": 1,
79
+ "title": "Limit",
80
+ "type": "integer"
81
+ }
82
+ },
83
+ "required": ["keyword"],
84
+ "title": "IdeasQuery",
85
+ "type": "object"
86
+ }
87
+ },
88
+ keyword_ideas_summary: {
89
+ "method": "ideas.GetKeywordsSummary",
90
+ "description": "Total related keyword count and volume.",
91
+ "transport": "keyword",
92
+ "total_method": "",
93
+ "web_report": "domain.overview",
94
+ "schema": {
95
+ "additionalProperties": false,
96
+ "properties": {
97
+ "keyword": {
98
+ "maxLength": 200,
99
+ "minLength": 1,
100
+ "title": "Keyword",
101
+ "type": "string"
102
+ },
103
+ "database": {
104
+ "default": "us",
105
+ "pattern": "^[a-z]{2}$",
106
+ "title": "Database",
107
+ "type": "string"
108
+ },
109
+ "questions_only": {
110
+ "default": false,
111
+ "title": "Questions Only",
112
+ "type": "boolean"
113
+ }
114
+ },
115
+ "required": ["keyword"],
116
+ "title": "IdeasSummaryQuery",
117
+ "type": "object"
118
+ }
119
+ },
120
+ keyword_serp: {
121
+ "method": "serp.GetURLs",
122
+ "description": "Ranked URLs and SERP features.",
123
+ "transport": "keyword",
124
+ "total_method": "",
125
+ "web_report": "domain.overview",
126
+ "schema": {
127
+ "additionalProperties": false,
128
+ "properties": {
129
+ "keyword": {
130
+ "maxLength": 200,
131
+ "minLength": 1,
132
+ "title": "Keyword",
133
+ "type": "string"
134
+ },
135
+ "database": {
136
+ "default": "us",
137
+ "pattern": "^[a-z]{2}$",
138
+ "title": "Database",
139
+ "type": "string"
140
+ },
141
+ "limit": {
142
+ "default": 10,
143
+ "maximum": 100,
144
+ "minimum": 1,
145
+ "title": "Limit",
146
+ "type": "integer"
147
+ }
148
+ },
149
+ "required": ["keyword"],
150
+ "title": "KeywordListQuery",
151
+ "type": "object"
152
+ }
153
+ },
154
+ keyword_ads: {
155
+ "method": "adwords.GetCopies",
156
+ "description": "Search ad copies for a keyword.",
157
+ "transport": "keyword",
158
+ "total_method": "",
159
+ "web_report": "domain.overview",
160
+ "schema": {
161
+ "additionalProperties": false,
162
+ "properties": {
163
+ "keyword": {
164
+ "maxLength": 200,
165
+ "minLength": 1,
166
+ "title": "Keyword",
167
+ "type": "string"
168
+ },
169
+ "database": {
170
+ "default": "us",
171
+ "pattern": "^[a-z]{2}$",
172
+ "title": "Database",
173
+ "type": "string"
174
+ },
175
+ "limit": {
176
+ "default": 10,
177
+ "maximum": 100,
178
+ "minimum": 1,
179
+ "title": "Limit",
180
+ "type": "integer"
181
+ }
182
+ },
183
+ "required": ["keyword"],
184
+ "title": "KeywordListQuery",
185
+ "type": "object"
186
+ }
187
+ },
188
+ keyword_clusters: {
189
+ "method": "clusters.Get",
190
+ "description": "Keyword topics and search intents.",
191
+ "transport": "keyword",
192
+ "total_method": "",
193
+ "web_report": "domain.overview",
194
+ "schema": {
195
+ "additionalProperties": false,
196
+ "properties": {
197
+ "keyword": {
198
+ "maxLength": 200,
199
+ "minLength": 1,
200
+ "title": "Keyword",
201
+ "type": "string"
202
+ },
203
+ "database": {
204
+ "default": "us",
205
+ "pattern": "^[a-z]{2}$",
206
+ "title": "Database",
207
+ "type": "string"
208
+ }
209
+ },
210
+ "required": ["keyword"],
211
+ "title": "KeywordQuery",
212
+ "type": "object"
213
+ }
214
+ },
215
+ keyword_magic: {
216
+ "method": "ideas.GetKeywords",
217
+ "description": "Paginated Keyword Magic research with filters and sorting.",
218
+ "transport": "magic",
219
+ "total_method": "",
220
+ "web_report": "domain.overview",
221
+ "schema": {
222
+ "additionalProperties": false,
223
+ "properties": {
224
+ "keyword": {
225
+ "maxLength": 200,
226
+ "minLength": 1,
227
+ "title": "Keyword",
228
+ "type": "string"
229
+ },
230
+ "database": {
231
+ "default": "us",
232
+ "pattern": "^[a-z]{2}$",
233
+ "title": "Database",
234
+ "type": "string"
235
+ },
236
+ "questions_only": {
237
+ "default": false,
238
+ "title": "Questions Only",
239
+ "type": "boolean"
240
+ },
241
+ "mode": {
242
+ "default": 4,
243
+ "description": "Web Keyword Magic matching mode",
244
+ "maximum": 4,
245
+ "minimum": 0,
246
+ "title": "Mode",
247
+ "type": "integer"
248
+ },
249
+ "currency": {
250
+ "default": "USD",
251
+ "pattern": "^[A-Z]{3}$",
252
+ "title": "Currency",
253
+ "type": "string"
254
+ },
255
+ "sort_field": {
256
+ "default": "similarity_score",
257
+ "pattern": "^[a-z_]+$",
258
+ "title": "Sort Field",
259
+ "type": "string"
260
+ },
261
+ "descending": {
262
+ "default": true,
263
+ "title": "Descending",
264
+ "type": "boolean"
265
+ },
266
+ "filters": {
267
+ "additionalProperties": true,
268
+ "description": "Keyword Magic web filter object",
269
+ "title": "Filters",
270
+ "type": "object"
271
+ },
272
+ "groups": {
273
+ "items": { "type": "string" },
274
+ "title": "Groups",
275
+ "type": "array"
276
+ },
277
+ "page": {
278
+ "default": 1,
279
+ "minimum": 1,
280
+ "title": "Page",
281
+ "type": "integer"
282
+ },
283
+ "page_size": {
284
+ "default": 100,
285
+ "maximum": 100,
286
+ "minimum": 1,
287
+ "title": "Page Size",
288
+ "type": "integer"
289
+ }
290
+ },
291
+ "required": ["keyword"],
292
+ "title": "MagicQuery",
293
+ "type": "object"
294
+ }
295
+ },
296
+ keyword_magic_summary: {
297
+ "method": "ideas.GetKeywordsSummary",
298
+ "description": "Keyword Magic totals for matching filters.",
299
+ "transport": "magic",
300
+ "total_method": "",
301
+ "web_report": "domain.overview",
302
+ "schema": {
303
+ "additionalProperties": false,
304
+ "properties": {
305
+ "keyword": {
306
+ "maxLength": 200,
307
+ "minLength": 1,
308
+ "title": "Keyword",
309
+ "type": "string"
310
+ },
311
+ "database": {
312
+ "default": "us",
313
+ "pattern": "^[a-z]{2}$",
314
+ "title": "Database",
315
+ "type": "string"
316
+ },
317
+ "questions_only": {
318
+ "default": false,
319
+ "title": "Questions Only",
320
+ "type": "boolean"
321
+ },
322
+ "mode": {
323
+ "default": 4,
324
+ "description": "Web Keyword Magic matching mode",
325
+ "maximum": 4,
326
+ "minimum": 0,
327
+ "title": "Mode",
328
+ "type": "integer"
329
+ },
330
+ "currency": {
331
+ "default": "USD",
332
+ "pattern": "^[A-Z]{3}$",
333
+ "title": "Currency",
334
+ "type": "string"
335
+ },
336
+ "sort_field": {
337
+ "default": "similarity_score",
338
+ "pattern": "^[a-z_]+$",
339
+ "title": "Sort Field",
340
+ "type": "string"
341
+ },
342
+ "descending": {
343
+ "default": true,
344
+ "title": "Descending",
345
+ "type": "boolean"
346
+ },
347
+ "filters": {
348
+ "additionalProperties": true,
349
+ "description": "Keyword Magic web filter object",
350
+ "title": "Filters",
351
+ "type": "object"
352
+ },
353
+ "groups": {
354
+ "items": { "type": "string" },
355
+ "title": "Groups",
356
+ "type": "array"
357
+ }
358
+ },
359
+ "required": ["keyword"],
360
+ "title": "MagicSummaryQuery",
361
+ "type": "object"
362
+ }
363
+ },
364
+ keyword_magic_groups: {
365
+ "method": "ideas.GetGroups",
366
+ "description": "Keyword Magic topic groups.",
367
+ "transport": "magic",
368
+ "total_method": "",
369
+ "web_report": "domain.overview",
370
+ "schema": {
371
+ "additionalProperties": false,
372
+ "properties": {
373
+ "keyword": {
374
+ "maxLength": 200,
375
+ "minLength": 1,
376
+ "title": "Keyword",
377
+ "type": "string"
378
+ },
379
+ "database": {
380
+ "default": "us",
381
+ "pattern": "^[a-z]{2}$",
382
+ "title": "Database",
383
+ "type": "string"
384
+ },
385
+ "questions_only": {
386
+ "default": false,
387
+ "title": "Questions Only",
388
+ "type": "boolean"
389
+ },
390
+ "mode": {
391
+ "default": 4,
392
+ "description": "Web Keyword Magic matching mode",
393
+ "maximum": 4,
394
+ "minimum": 0,
395
+ "title": "Mode",
396
+ "type": "integer"
397
+ },
398
+ "currency": {
399
+ "default": "USD",
400
+ "pattern": "^[A-Z]{3}$",
401
+ "title": "Currency",
402
+ "type": "string"
403
+ },
404
+ "sort_field": {
405
+ "default": "similarity_score",
406
+ "pattern": "^[a-z_]+$",
407
+ "title": "Sort Field",
408
+ "type": "string"
409
+ },
410
+ "descending": {
411
+ "default": true,
412
+ "title": "Descending",
413
+ "type": "boolean"
414
+ },
415
+ "filters": {
416
+ "additionalProperties": true,
417
+ "description": "Keyword Magic web filter object",
418
+ "title": "Filters",
419
+ "type": "object"
420
+ },
421
+ "groups": {
422
+ "items": { "type": "string" },
423
+ "title": "Groups",
424
+ "type": "array"
425
+ },
426
+ "page": {
427
+ "default": 1,
428
+ "minimum": 1,
429
+ "title": "Page",
430
+ "type": "integer"
431
+ },
432
+ "page_size": {
433
+ "default": 100,
434
+ "maximum": 100,
435
+ "minimum": 1,
436
+ "title": "Page Size",
437
+ "type": "integer"
438
+ }
439
+ },
440
+ "required": ["keyword"],
441
+ "title": "MagicQuery",
442
+ "type": "object"
443
+ }
444
+ },
445
+ domain_overview: {
446
+ "method": "organic.Summary",
447
+ "description": "Search metrics and backlink summary.",
448
+ "transport": "domain",
449
+ "total_method": "",
450
+ "web_report": "domain.overview",
451
+ "schema": {
452
+ "additionalProperties": false,
453
+ "properties": {
454
+ "domain": {
455
+ "description": "Bare domain, e.g. openai.com",
456
+ "maxLength": 253,
457
+ "minLength": 1,
458
+ "title": "Domain",
459
+ "type": "string"
460
+ },
461
+ "database": {
462
+ "default": "us",
463
+ "pattern": "^(mobile-)?[a-z]{2}$",
464
+ "title": "Database",
465
+ "type": "string"
466
+ }
467
+ },
468
+ "required": ["domain"],
469
+ "title": "DomainQuery",
470
+ "type": "object"
471
+ }
472
+ },
473
+ domain_keywords: {
474
+ "method": "organic.Positions",
475
+ "description": "Paginated organic rankings with filters, sorting and totals.",
476
+ "transport": "domain",
477
+ "total_method": "organic.PositionsTotal",
478
+ "web_report": "organic.positions",
479
+ "schema": {
480
+ "additionalProperties": false,
481
+ "properties": {
482
+ "domain": {
483
+ "description": "Bare domain, e.g. openai.com",
484
+ "maxLength": 253,
485
+ "minLength": 1,
486
+ "title": "Domain",
487
+ "type": "string"
488
+ },
489
+ "database": {
490
+ "default": "us",
491
+ "pattern": "^(mobile-)?[a-z]{2}$",
492
+ "title": "Database",
493
+ "type": "string"
494
+ },
495
+ "date": {
496
+ "anyOf": [{
497
+ "minimum": 0,
498
+ "type": "integer"
499
+ }, { "type": "null" }],
500
+ "default": null,
501
+ "description": "Unix snapshot timestamp from snapshot_dates; omit for latest",
502
+ "title": "Date"
503
+ },
504
+ "search_type": {
505
+ "default": "domain",
506
+ "pattern": "^(domain|subdomain|subfolder|url)$",
507
+ "title": "Search Type",
508
+ "type": "string"
509
+ },
510
+ "date_type": {
511
+ "default": "daily",
512
+ "pattern": "^(daily|monthly)$",
513
+ "title": "Date Type",
514
+ "type": "string"
515
+ },
516
+ "page": {
517
+ "default": 1,
518
+ "minimum": 1,
519
+ "title": "Page",
520
+ "type": "integer"
521
+ },
522
+ "page_size": {
523
+ "default": 100,
524
+ "maximum": 100,
525
+ "minimum": 1,
526
+ "title": "Page Size",
527
+ "type": "integer"
528
+ },
529
+ "sort_field": {
530
+ "default": "trafficPercent",
531
+ "pattern": "^[a-zA-Z]+$",
532
+ "title": "Sort Field",
533
+ "type": "string"
534
+ },
535
+ "descending": {
536
+ "default": true,
537
+ "title": "Descending",
538
+ "type": "boolean"
539
+ },
540
+ "filters": {
541
+ "additionalProperties": true,
542
+ "description": "Organic report web filter object",
543
+ "title": "Filters",
544
+ "type": "object"
545
+ }
546
+ },
547
+ "required": ["domain"],
548
+ "title": "DomainReportQuery",
549
+ "type": "object"
550
+ }
551
+ },
552
+ domain_pages: {
553
+ "method": "organic.PagesV3",
554
+ "description": "Paginated top organic pages with totals.",
555
+ "transport": "domain",
556
+ "total_method": "organic.PagesTotalV3",
557
+ "web_report": "organic.pages",
558
+ "schema": {
559
+ "additionalProperties": false,
560
+ "properties": {
561
+ "domain": {
562
+ "description": "Bare domain, e.g. openai.com",
563
+ "maxLength": 253,
564
+ "minLength": 1,
565
+ "title": "Domain",
566
+ "type": "string"
567
+ },
568
+ "database": {
569
+ "default": "us",
570
+ "pattern": "^(mobile-)?[a-z]{2}$",
571
+ "title": "Database",
572
+ "type": "string"
573
+ },
574
+ "date": {
575
+ "anyOf": [{
576
+ "minimum": 0,
577
+ "type": "integer"
578
+ }, { "type": "null" }],
579
+ "default": null,
580
+ "description": "Unix snapshot timestamp from snapshot_dates; omit for latest",
581
+ "title": "Date"
582
+ },
583
+ "search_type": {
584
+ "default": "domain",
585
+ "pattern": "^(domain|subdomain|subfolder|url)$",
586
+ "title": "Search Type",
587
+ "type": "string"
588
+ },
589
+ "date_type": {
590
+ "default": "daily",
591
+ "pattern": "^(daily|monthly)$",
592
+ "title": "Date Type",
593
+ "type": "string"
594
+ },
595
+ "page": {
596
+ "default": 1,
597
+ "minimum": 1,
598
+ "title": "Page",
599
+ "type": "integer"
600
+ },
601
+ "page_size": {
602
+ "default": 100,
603
+ "maximum": 100,
604
+ "minimum": 1,
605
+ "title": "Page Size",
606
+ "type": "integer"
607
+ },
608
+ "sort_field": {
609
+ "default": "traffic",
610
+ "pattern": "^[a-zA-Z]+$",
611
+ "title": "Sort Field",
612
+ "type": "string"
613
+ },
614
+ "descending": {
615
+ "default": true,
616
+ "title": "Descending",
617
+ "type": "boolean"
618
+ },
619
+ "filters": {
620
+ "additionalProperties": true,
621
+ "description": "Organic report web filter object",
622
+ "title": "Filters",
623
+ "type": "object"
624
+ }
625
+ },
626
+ "required": ["domain"],
627
+ "title": "DomainPagesQuery",
628
+ "type": "object"
629
+ }
630
+ },
631
+ domain_subdomains: {
632
+ "method": "organic.Subdomains",
633
+ "description": "Paginated organic subdomain traffic and keyword totals.",
634
+ "transport": "domain",
635
+ "total_method": "organic.SubdomainsTotal",
636
+ "web_report": "organic.subdomains",
637
+ "schema": {
638
+ "additionalProperties": false,
639
+ "properties": {
640
+ "domain": {
641
+ "description": "Bare domain, e.g. openai.com",
642
+ "maxLength": 253,
643
+ "minLength": 1,
644
+ "title": "Domain",
645
+ "type": "string"
646
+ },
647
+ "database": {
648
+ "default": "us",
649
+ "pattern": "^(mobile-)?[a-z]{2}$",
650
+ "title": "Database",
651
+ "type": "string"
652
+ },
653
+ "date": {
654
+ "anyOf": [{
655
+ "minimum": 0,
656
+ "type": "integer"
657
+ }, { "type": "null" }],
658
+ "default": null,
659
+ "description": "Unix snapshot timestamp from snapshot_dates; omit for latest",
660
+ "title": "Date"
661
+ },
662
+ "search_type": {
663
+ "default": "domain",
664
+ "pattern": "^(domain|subdomain|subfolder|url)$",
665
+ "title": "Search Type",
666
+ "type": "string"
667
+ },
668
+ "date_type": {
669
+ "default": "daily",
670
+ "pattern": "^(daily|monthly)$",
671
+ "title": "Date Type",
672
+ "type": "string"
673
+ },
674
+ "page": {
675
+ "default": 1,
676
+ "minimum": 1,
677
+ "title": "Page",
678
+ "type": "integer"
679
+ },
680
+ "page_size": {
681
+ "default": 100,
682
+ "maximum": 100,
683
+ "minimum": 1,
684
+ "title": "Page Size",
685
+ "type": "integer"
686
+ },
687
+ "sort_field": {
688
+ "default": "traffic",
689
+ "pattern": "^[a-zA-Z]+$",
690
+ "title": "Sort Field",
691
+ "type": "string"
692
+ },
693
+ "descending": {
694
+ "default": true,
695
+ "title": "Descending",
696
+ "type": "boolean"
697
+ },
698
+ "filters": {
699
+ "additionalProperties": true,
700
+ "description": "Organic report web filter object",
701
+ "title": "Filters",
702
+ "type": "object"
703
+ }
704
+ },
705
+ "required": ["domain"],
706
+ "title": "DomainPagesQuery",
707
+ "type": "object"
708
+ }
709
+ },
710
+ domain_position_changes: {
711
+ "method": "organic.PositionChangesV2",
712
+ "description": "Paginated ranking changes with totals.",
713
+ "transport": "domain",
714
+ "total_method": "organic.PositionChangesTotalV2",
715
+ "web_report": "organic.changes",
716
+ "schema": {
717
+ "additionalProperties": false,
718
+ "properties": {
719
+ "domain": {
720
+ "description": "Bare domain, e.g. openai.com",
721
+ "maxLength": 253,
722
+ "minLength": 1,
723
+ "title": "Domain",
724
+ "type": "string"
725
+ },
726
+ "database": {
727
+ "default": "us",
728
+ "pattern": "^(mobile-)?[a-z]{2}$",
729
+ "title": "Database",
730
+ "type": "string"
731
+ },
732
+ "date": {
733
+ "anyOf": [{
734
+ "minimum": 0,
735
+ "type": "integer"
736
+ }, { "type": "null" }],
737
+ "default": null,
738
+ "description": "Unix snapshot timestamp from snapshot_dates; omit for latest",
739
+ "title": "Date"
740
+ },
741
+ "search_type": {
742
+ "default": "domain",
743
+ "pattern": "^(domain|subdomain|subfolder|url)$",
744
+ "title": "Search Type",
745
+ "type": "string"
746
+ },
747
+ "date_type": {
748
+ "default": "daily",
749
+ "pattern": "^(daily|monthly)$",
750
+ "title": "Date Type",
751
+ "type": "string"
752
+ },
753
+ "page": {
754
+ "default": 1,
755
+ "minimum": 1,
756
+ "title": "Page",
757
+ "type": "integer"
758
+ },
759
+ "page_size": {
760
+ "default": 100,
761
+ "maximum": 100,
762
+ "minimum": 1,
763
+ "title": "Page Size",
764
+ "type": "integer"
765
+ },
766
+ "sort_field": {
767
+ "default": "changeOfTraffic",
768
+ "pattern": "^[a-zA-Z]+$",
769
+ "title": "Sort Field",
770
+ "type": "string"
771
+ },
772
+ "descending": {
773
+ "default": true,
774
+ "title": "Descending",
775
+ "type": "boolean"
776
+ },
777
+ "filters": {
778
+ "additionalProperties": true,
779
+ "description": "Organic report web filter object",
780
+ "title": "Filters",
781
+ "type": "object"
782
+ }
783
+ },
784
+ "required": ["domain"],
785
+ "title": "DomainChangesQuery",
786
+ "type": "object"
787
+ }
788
+ },
789
+ domain_competitors: {
790
+ "method": "organic.Competitors",
791
+ "description": "Paginated organic search competitors and totals.",
792
+ "transport": "domain",
793
+ "total_method": "organic.CompetitorsTotal",
794
+ "web_report": "organic.competitors",
795
+ "schema": {
796
+ "additionalProperties": false,
797
+ "properties": {
798
+ "domain": {
799
+ "description": "Bare domain, e.g. openai.com",
800
+ "maxLength": 253,
801
+ "minLength": 1,
802
+ "title": "Domain",
803
+ "type": "string"
804
+ },
805
+ "database": {
806
+ "default": "us",
807
+ "pattern": "^(mobile-)?[a-z]{2}$",
808
+ "title": "Database",
809
+ "type": "string"
810
+ },
811
+ "date": {
812
+ "anyOf": [{
813
+ "minimum": 0,
814
+ "type": "integer"
815
+ }, { "type": "null" }],
816
+ "default": null,
817
+ "description": "Unix snapshot timestamp from snapshot_dates; omit for latest",
818
+ "title": "Date"
819
+ },
820
+ "search_type": {
821
+ "default": "domain",
822
+ "pattern": "^(domain|subdomain|subfolder|url)$",
823
+ "title": "Search Type",
824
+ "type": "string"
825
+ },
826
+ "date_type": {
827
+ "default": "daily",
828
+ "pattern": "^(daily|monthly)$",
829
+ "title": "Date Type",
830
+ "type": "string"
831
+ },
832
+ "page": {
833
+ "default": 1,
834
+ "minimum": 1,
835
+ "title": "Page",
836
+ "type": "integer"
837
+ },
838
+ "page_size": {
839
+ "default": 100,
840
+ "maximum": 100,
841
+ "minimum": 1,
842
+ "title": "Page Size",
843
+ "type": "integer"
844
+ },
845
+ "sort_field": {
846
+ "default": "competitionLvl",
847
+ "pattern": "^[a-zA-Z]+$",
848
+ "title": "Sort Field",
849
+ "type": "string"
850
+ },
851
+ "descending": {
852
+ "default": true,
853
+ "title": "Descending",
854
+ "type": "boolean"
855
+ }
856
+ },
857
+ "required": ["domain"],
858
+ "title": "DomainCompetitorsQuery",
859
+ "type": "object"
860
+ }
861
+ },
862
+ domain_backlinks: {
863
+ "method": "backlinks.Overview",
864
+ "description": "Backlink summary, sample links and anchors.",
865
+ "transport": "domain",
866
+ "total_method": "",
867
+ "web_report": "domain.overview",
868
+ "schema": {
869
+ "additionalProperties": false,
870
+ "properties": { "domain": {
871
+ "description": "Bare domain, e.g. openai.com",
872
+ "maxLength": 253,
873
+ "minLength": 1,
874
+ "title": "Domain",
875
+ "type": "string"
876
+ } },
877
+ "required": ["domain"],
878
+ "title": "DomainIdentityQuery",
879
+ "type": "object"
880
+ }
881
+ },
882
+ domain_ai_visibility: {
883
+ "method": "organic.AiSeoSummary",
884
+ "description": "AI visibility, mentions and citations.",
885
+ "transport": "domain",
886
+ "total_method": "",
887
+ "web_report": "domain.overview",
888
+ "schema": {
889
+ "additionalProperties": false,
890
+ "properties": { "domain": {
891
+ "description": "Bare domain, e.g. openai.com",
892
+ "maxLength": 253,
893
+ "minLength": 1,
894
+ "title": "Domain",
895
+ "type": "string"
896
+ } },
897
+ "required": ["domain"],
898
+ "title": "DomainIdentityQuery",
899
+ "type": "object"
900
+ }
901
+ },
902
+ domain_ai_countries: {
903
+ "method": "organic.AiDistributionByCountry",
904
+ "description": "AI visibility and mentions by country.",
905
+ "transport": "domain",
906
+ "total_method": "",
907
+ "web_report": "domain.overview",
908
+ "schema": {
909
+ "additionalProperties": false,
910
+ "properties": { "domain": {
911
+ "description": "Bare domain, e.g. openai.com",
912
+ "maxLength": 253,
913
+ "minLength": 1,
914
+ "title": "Domain",
915
+ "type": "string"
916
+ } },
917
+ "required": ["domain"],
918
+ "title": "DomainIdentityQuery",
919
+ "type": "object"
920
+ }
921
+ },
922
+ domain_ai_sources: {
923
+ "method": "organic.AiTopSources",
924
+ "description": "Top AI citation sources with offset and limit.",
925
+ "transport": "domain",
926
+ "total_method": "",
927
+ "web_report": "domain.overview",
928
+ "schema": {
929
+ "additionalProperties": false,
930
+ "properties": {
931
+ "domain": {
932
+ "description": "Bare domain, e.g. openai.com",
933
+ "maxLength": 253,
934
+ "minLength": 1,
935
+ "title": "Domain",
936
+ "type": "string"
937
+ },
938
+ "database": {
939
+ "default": "us",
940
+ "pattern": "^(mobile-)?[a-z]{2}$",
941
+ "title": "Database",
942
+ "type": "string"
943
+ },
944
+ "limit": {
945
+ "default": 20,
946
+ "maximum": 100,
947
+ "minimum": 1,
948
+ "title": "Limit",
949
+ "type": "integer"
950
+ },
951
+ "offset": {
952
+ "default": 0,
953
+ "minimum": 0,
954
+ "title": "Offset",
955
+ "type": "integer"
956
+ }
957
+ },
958
+ "required": ["domain"],
959
+ "title": "AiSourcesQuery",
960
+ "type": "object"
961
+ }
962
+ },
963
+ domain_trends: {
964
+ "method": "organic.OverviewTrend",
965
+ "description": "Daily or monthly organic and paid search trends.",
966
+ "transport": "domain",
967
+ "total_method": "",
968
+ "web_report": "domain.overview",
969
+ "schema": {
970
+ "additionalProperties": false,
971
+ "properties": {
972
+ "domain": {
973
+ "description": "Bare domain, e.g. openai.com",
974
+ "maxLength": 253,
975
+ "minLength": 1,
976
+ "title": "Domain",
977
+ "type": "string"
978
+ },
979
+ "database": {
980
+ "default": "us",
981
+ "pattern": "^(mobile-)?[a-z]{2}$",
982
+ "title": "Database",
983
+ "type": "string"
984
+ },
985
+ "date_type": {
986
+ "default": "monthly",
987
+ "pattern": "^(daily|monthly)$",
988
+ "title": "Date Type",
989
+ "type": "string"
990
+ },
991
+ "global_data": {
992
+ "default": false,
993
+ "title": "Global Data",
994
+ "type": "boolean"
995
+ }
996
+ },
997
+ "required": ["domain"],
998
+ "title": "DomainTrendQuery",
999
+ "type": "object"
1000
+ }
1001
+ },
1002
+ domain_paid_keywords: {
1003
+ "method": "adwords.PositionsOverview",
1004
+ "description": "Paid keyword overview sample; account permissions apply.",
1005
+ "transport": "domain",
1006
+ "total_method": "",
1007
+ "web_report": "domain.overview",
1008
+ "schema": {
1009
+ "additionalProperties": false,
1010
+ "properties": {
1011
+ "domain": {
1012
+ "description": "Bare domain, e.g. openai.com",
1013
+ "maxLength": 253,
1014
+ "minLength": 1,
1015
+ "title": "Domain",
1016
+ "type": "string"
1017
+ },
1018
+ "database": {
1019
+ "default": "us",
1020
+ "pattern": "^(mobile-)?[a-z]{2}$",
1021
+ "title": "Database",
1022
+ "type": "string"
1023
+ },
1024
+ "limit": {
1025
+ "default": 5,
1026
+ "maximum": 10,
1027
+ "minimum": 1,
1028
+ "title": "Limit",
1029
+ "type": "integer"
1030
+ }
1031
+ },
1032
+ "required": ["domain"],
1033
+ "title": "DomainListQuery",
1034
+ "type": "object"
1035
+ }
1036
+ },
1037
+ domain_paid_competitors: {
1038
+ "method": "adwords.CompetitorsOverview",
1039
+ "description": "Paid search competitors; account permissions apply.",
1040
+ "transport": "domain",
1041
+ "total_method": "",
1042
+ "web_report": "domain.overview",
1043
+ "schema": {
1044
+ "additionalProperties": false,
1045
+ "properties": {
1046
+ "domain": {
1047
+ "description": "Bare domain, e.g. openai.com",
1048
+ "maxLength": 253,
1049
+ "minLength": 1,
1050
+ "title": "Domain",
1051
+ "type": "string"
1052
+ },
1053
+ "database": {
1054
+ "default": "us",
1055
+ "pattern": "^(mobile-)?[a-z]{2}$",
1056
+ "title": "Database",
1057
+ "type": "string"
1058
+ },
1059
+ "limit": {
1060
+ "default": 5,
1061
+ "maximum": 10,
1062
+ "minimum": 1,
1063
+ "title": "Limit",
1064
+ "type": "integer"
1065
+ }
1066
+ },
1067
+ "required": ["domain"],
1068
+ "title": "DomainListQuery",
1069
+ "type": "object"
1070
+ }
1071
+ },
1072
+ domain_topics: {
1073
+ "method": "organic.TopicsResult",
1074
+ "description": "Organic search topics already available for a domain.",
1075
+ "transport": "domain",
1076
+ "total_method": "",
1077
+ "web_report": "domain.overview",
1078
+ "schema": {
1079
+ "additionalProperties": false,
1080
+ "properties": {
1081
+ "domain": {
1082
+ "description": "Bare domain, e.g. openai.com",
1083
+ "maxLength": 253,
1084
+ "minLength": 1,
1085
+ "title": "Domain",
1086
+ "type": "string"
1087
+ },
1088
+ "database": {
1089
+ "default": "us",
1090
+ "pattern": "^(mobile-)?[a-z]{2}$",
1091
+ "title": "Database",
1092
+ "type": "string"
1093
+ }
1094
+ },
1095
+ "required": ["domain"],
1096
+ "title": "DomainQuery",
1097
+ "type": "object"
1098
+ }
1099
+ },
1100
+ domain_topics_status: {
1101
+ "method": "organic.TopicsStatus",
1102
+ "description": "Availability of domain organic topics.",
1103
+ "transport": "domain",
1104
+ "total_method": "",
1105
+ "web_report": "domain.overview",
1106
+ "schema": {
1107
+ "additionalProperties": false,
1108
+ "properties": {
1109
+ "domain": {
1110
+ "description": "Bare domain, e.g. openai.com",
1111
+ "maxLength": 253,
1112
+ "minLength": 1,
1113
+ "title": "Domain",
1114
+ "type": "string"
1115
+ },
1116
+ "database": {
1117
+ "default": "us",
1118
+ "pattern": "^(mobile-)?[a-z]{2}$",
1119
+ "title": "Database",
1120
+ "type": "string"
1121
+ }
1122
+ },
1123
+ "required": ["domain"],
1124
+ "title": "DomainQuery",
1125
+ "type": "object"
1126
+ }
1127
+ },
1128
+ databases: {
1129
+ "method": "user.Databases",
1130
+ "description": "Search databases and account access.",
1131
+ "transport": "direct",
1132
+ "total_method": "",
1133
+ "web_report": "domain.overview",
1134
+ "schema": {
1135
+ "additionalProperties": false,
1136
+ "properties": {},
1137
+ "title": "EmptyQuery",
1138
+ "type": "object"
1139
+ }
1140
+ },
1141
+ snapshot_dates: {
1142
+ "method": "organic.SnapshotDates",
1143
+ "description": "Available historical domain snapshots.",
1144
+ "transport": "direct",
1145
+ "total_method": "",
1146
+ "web_report": "domain.overview",
1147
+ "schema": {
1148
+ "additionalProperties": false,
1149
+ "properties": {
1150
+ "database": {
1151
+ "default": "us",
1152
+ "pattern": "^(mobile-)?[a-z]{2}$",
1153
+ "title": "Database",
1154
+ "type": "string"
1155
+ },
1156
+ "global_data": {
1157
+ "default": false,
1158
+ "title": "Global Data",
1159
+ "type": "boolean"
1160
+ }
1161
+ },
1162
+ "title": "HistoryQuery",
1163
+ "type": "object"
1164
+ }
1165
+ },
1166
+ report_permissions: {
1167
+ "method": "dpa.UserPermissions",
1168
+ "description": "Account history, export and research permissions.",
1169
+ "transport": "domain",
1170
+ "total_method": "",
1171
+ "web_report": "domain.overview",
1172
+ "schema": {
1173
+ "additionalProperties": false,
1174
+ "properties": { "database": {
1175
+ "default": "us",
1176
+ "pattern": "^(mobile-)?[a-z]{2}$",
1177
+ "title": "Database",
1178
+ "type": "string"
1179
+ } },
1180
+ "title": "DatabaseQuery",
1181
+ "type": "object"
1182
+ }
1183
+ },
1184
+ backlink_links: {
1185
+ "method": "backlinks",
1186
+ "description": "Paginated backlinks with provider caps and totals.",
1187
+ "transport": "backlink",
1188
+ "total_method": "",
1189
+ "web_report": "domain.overview",
1190
+ "schema": {
1191
+ "additionalProperties": false,
1192
+ "properties": {
1193
+ "domain": {
1194
+ "maxLength": 253,
1195
+ "minLength": 1,
1196
+ "title": "Domain",
1197
+ "type": "string"
1198
+ },
1199
+ "target_type": {
1200
+ "default": "root_domain",
1201
+ "pattern": "^(root_domain|domain|url)$",
1202
+ "title": "Target Type",
1203
+ "type": "string"
1204
+ },
1205
+ "filters": {
1206
+ "default": "",
1207
+ "description": "Web backlink filter, e.g. +|type||nofollow",
1208
+ "title": "Filters",
1209
+ "type": "string"
1210
+ },
1211
+ "page": {
1212
+ "default": 0,
1213
+ "description": "Zero-based provider page",
1214
+ "minimum": 0,
1215
+ "title": "Page",
1216
+ "type": "integer"
1217
+ },
1218
+ "sort_field": {
1219
+ "default": "",
1220
+ "pattern": "^[a-z_]*$",
1221
+ "title": "Sort Field",
1222
+ "type": "string"
1223
+ },
1224
+ "descending": {
1225
+ "default": true,
1226
+ "title": "Descending",
1227
+ "type": "boolean"
1228
+ }
1229
+ },
1230
+ "required": ["domain"],
1231
+ "title": "BacklinkListQuery",
1232
+ "type": "object"
1233
+ }
1234
+ },
1235
+ backlink_referring_domains: {
1236
+ "method": "backlinks_refdomains",
1237
+ "description": "Paginated referring domains.",
1238
+ "transport": "backlink",
1239
+ "total_method": "",
1240
+ "web_report": "domain.overview",
1241
+ "schema": {
1242
+ "additionalProperties": false,
1243
+ "properties": {
1244
+ "domain": {
1245
+ "maxLength": 253,
1246
+ "minLength": 1,
1247
+ "title": "Domain",
1248
+ "type": "string"
1249
+ },
1250
+ "target_type": {
1251
+ "default": "root_domain",
1252
+ "pattern": "^(root_domain|domain|url)$",
1253
+ "title": "Target Type",
1254
+ "type": "string"
1255
+ },
1256
+ "filters": {
1257
+ "default": "",
1258
+ "description": "Web backlink filter, e.g. +|type||nofollow",
1259
+ "title": "Filters",
1260
+ "type": "string"
1261
+ },
1262
+ "page": {
1263
+ "default": 0,
1264
+ "description": "Zero-based provider page",
1265
+ "minimum": 0,
1266
+ "title": "Page",
1267
+ "type": "integer"
1268
+ },
1269
+ "sort_field": {
1270
+ "default": "",
1271
+ "pattern": "^[a-z_]*$",
1272
+ "title": "Sort Field",
1273
+ "type": "string"
1274
+ },
1275
+ "descending": {
1276
+ "default": true,
1277
+ "title": "Descending",
1278
+ "type": "boolean"
1279
+ }
1280
+ },
1281
+ "required": ["domain"],
1282
+ "title": "BacklinkListQuery",
1283
+ "type": "object"
1284
+ }
1285
+ },
1286
+ backlink_history: {
1287
+ "method": "historical",
1288
+ "description": "Historical backlink and referring-domain trends.",
1289
+ "transport": "backlink_overview",
1290
+ "total_method": "",
1291
+ "web_report": "domain.overview",
1292
+ "schema": {
1293
+ "additionalProperties": false,
1294
+ "properties": {
1295
+ "domain": {
1296
+ "maxLength": 253,
1297
+ "minLength": 1,
1298
+ "title": "Domain",
1299
+ "type": "string"
1300
+ },
1301
+ "target_type": {
1302
+ "default": "root_domain",
1303
+ "pattern": "^(root_domain|domain|url)$",
1304
+ "title": "Target Type",
1305
+ "type": "string"
1306
+ }
1307
+ },
1308
+ "required": ["domain"],
1309
+ "title": "BacklinkQuery",
1310
+ "type": "object"
1311
+ }
1312
+ },
1313
+ backlink_competitors: {
1314
+ "method": "competitors",
1315
+ "description": "Competitors sharing a backlink profile.",
1316
+ "transport": "backlink_overview",
1317
+ "total_method": "",
1318
+ "web_report": "domain.overview",
1319
+ "schema": {
1320
+ "additionalProperties": false,
1321
+ "properties": {
1322
+ "domain": {
1323
+ "maxLength": 253,
1324
+ "minLength": 1,
1325
+ "title": "Domain",
1326
+ "type": "string"
1327
+ },
1328
+ "target_type": {
1329
+ "default": "root_domain",
1330
+ "pattern": "^(root_domain|domain|url)$",
1331
+ "title": "Target Type",
1332
+ "type": "string"
1333
+ }
1334
+ },
1335
+ "required": ["domain"],
1336
+ "title": "BacklinkQuery",
1337
+ "type": "object"
1338
+ }
1339
+ },
1340
+ backlink_top_pages: {
1341
+ "method": "backlinks_pages",
1342
+ "description": "Paginated indexed pages ranked by referring domains.",
1343
+ "transport": "backlink",
1344
+ "total_method": "",
1345
+ "web_report": "domain.overview",
1346
+ "schema": {
1347
+ "additionalProperties": false,
1348
+ "properties": {
1349
+ "domain": {
1350
+ "maxLength": 253,
1351
+ "minLength": 1,
1352
+ "title": "Domain",
1353
+ "type": "string"
1354
+ },
1355
+ "target_type": {
1356
+ "default": "root_domain",
1357
+ "pattern": "^(root_domain|domain|url)$",
1358
+ "title": "Target Type",
1359
+ "type": "string"
1360
+ },
1361
+ "filters": {
1362
+ "default": "",
1363
+ "description": "Web backlink filter, e.g. +|type||nofollow",
1364
+ "title": "Filters",
1365
+ "type": "string"
1366
+ },
1367
+ "page": {
1368
+ "default": 0,
1369
+ "description": "Zero-based provider page",
1370
+ "minimum": 0,
1371
+ "title": "Page",
1372
+ "type": "integer"
1373
+ },
1374
+ "sort_field": {
1375
+ "default": "",
1376
+ "pattern": "^[a-z_]*$",
1377
+ "title": "Sort Field",
1378
+ "type": "string"
1379
+ },
1380
+ "descending": {
1381
+ "default": true,
1382
+ "title": "Descending",
1383
+ "type": "boolean"
1384
+ }
1385
+ },
1386
+ "required": ["domain"],
1387
+ "title": "BacklinkListQuery",
1388
+ "type": "object"
1389
+ }
1390
+ },
1391
+ backlink_anchors: {
1392
+ "method": "backlinks_anchors",
1393
+ "description": "Paginated anchor texts and backlink counts.",
1394
+ "transport": "backlink",
1395
+ "total_method": "",
1396
+ "web_report": "domain.overview",
1397
+ "schema": {
1398
+ "additionalProperties": false,
1399
+ "properties": {
1400
+ "domain": {
1401
+ "maxLength": 253,
1402
+ "minLength": 1,
1403
+ "title": "Domain",
1404
+ "type": "string"
1405
+ },
1406
+ "target_type": {
1407
+ "default": "root_domain",
1408
+ "pattern": "^(root_domain|domain|url)$",
1409
+ "title": "Target Type",
1410
+ "type": "string"
1411
+ },
1412
+ "filters": {
1413
+ "default": "",
1414
+ "description": "Web backlink filter, e.g. +|type||nofollow",
1415
+ "title": "Filters",
1416
+ "type": "string"
1417
+ },
1418
+ "page": {
1419
+ "default": 0,
1420
+ "description": "Zero-based provider page",
1421
+ "minimum": 0,
1422
+ "title": "Page",
1423
+ "type": "integer"
1424
+ },
1425
+ "sort_field": {
1426
+ "default": "",
1427
+ "pattern": "^[a-z_]*$",
1428
+ "title": "Sort Field",
1429
+ "type": "string"
1430
+ },
1431
+ "descending": {
1432
+ "default": true,
1433
+ "title": "Descending",
1434
+ "type": "boolean"
1435
+ }
1436
+ },
1437
+ "required": ["domain"],
1438
+ "title": "BacklinkListQuery",
1439
+ "type": "object"
1440
+ }
1441
+ },
1442
+ backlink_outgoing_domains: {
1443
+ "method": "backlinks_outgoing_domains",
1444
+ "description": "Paginated outbound domains and outgoing link counts.",
1445
+ "transport": "backlink",
1446
+ "total_method": "",
1447
+ "web_report": "domain.overview",
1448
+ "schema": {
1449
+ "additionalProperties": false,
1450
+ "properties": {
1451
+ "domain": {
1452
+ "maxLength": 253,
1453
+ "minLength": 1,
1454
+ "title": "Domain",
1455
+ "type": "string"
1456
+ },
1457
+ "target_type": {
1458
+ "default": "root_domain",
1459
+ "pattern": "^(root_domain|domain|url)$",
1460
+ "title": "Target Type",
1461
+ "type": "string"
1462
+ },
1463
+ "filters": {
1464
+ "default": "",
1465
+ "description": "Web backlink filter, e.g. +|type||nofollow",
1466
+ "title": "Filters",
1467
+ "type": "string"
1468
+ },
1469
+ "page": {
1470
+ "default": 0,
1471
+ "description": "Zero-based provider page",
1472
+ "minimum": 0,
1473
+ "title": "Page",
1474
+ "type": "integer"
1475
+ },
1476
+ "sort_field": {
1477
+ "default": "",
1478
+ "pattern": "^[a-z_]*$",
1479
+ "title": "Sort Field",
1480
+ "type": "string"
1481
+ },
1482
+ "descending": {
1483
+ "default": true,
1484
+ "title": "Descending",
1485
+ "type": "boolean"
1486
+ }
1487
+ },
1488
+ "required": ["domain"],
1489
+ "title": "BacklinkListQuery",
1490
+ "type": "object"
1491
+ }
1492
+ },
1493
+ backlink_countries: {
1494
+ "method": "geodomains",
1495
+ "description": "Referring-domain country distribution.",
1496
+ "transport": "backlink_overview",
1497
+ "total_method": "",
1498
+ "web_report": "domain.overview",
1499
+ "schema": {
1500
+ "additionalProperties": false,
1501
+ "properties": {
1502
+ "domain": {
1503
+ "maxLength": 253,
1504
+ "minLength": 1,
1505
+ "title": "Domain",
1506
+ "type": "string"
1507
+ },
1508
+ "target_type": {
1509
+ "default": "root_domain",
1510
+ "pattern": "^(root_domain|domain|url)$",
1511
+ "title": "Target Type",
1512
+ "type": "string"
1513
+ }
1514
+ },
1515
+ "required": ["domain"],
1516
+ "title": "BacklinkQuery",
1517
+ "type": "object"
1518
+ }
1519
+ },
1520
+ backlink_authority: {
1521
+ "method": "ascore",
1522
+ "description": "Authority score and supporting metrics.",
1523
+ "transport": "backlink_overview",
1524
+ "total_method": "",
1525
+ "web_report": "domain.overview",
1526
+ "schema": {
1527
+ "additionalProperties": false,
1528
+ "properties": {
1529
+ "domain": {
1530
+ "maxLength": 253,
1531
+ "minLength": 1,
1532
+ "title": "Domain",
1533
+ "type": "string"
1534
+ },
1535
+ "target_type": {
1536
+ "default": "root_domain",
1537
+ "pattern": "^(root_domain|domain|url)$",
1538
+ "title": "Target Type",
1539
+ "type": "string"
1540
+ }
1541
+ },
1542
+ "required": ["domain"],
1543
+ "title": "BacklinkQuery",
1544
+ "type": "object"
1545
+ }
1546
+ },
1547
+ backlink_categories: {
1548
+ "method": "category-profile",
1549
+ "description": "Referring-domain category profile.",
1550
+ "transport": "backlink_overview",
1551
+ "total_method": "",
1552
+ "web_report": "domain.overview",
1553
+ "schema": {
1554
+ "additionalProperties": false,
1555
+ "properties": {
1556
+ "domain": {
1557
+ "maxLength": 253,
1558
+ "minLength": 1,
1559
+ "title": "Domain",
1560
+ "type": "string"
1561
+ },
1562
+ "target_type": {
1563
+ "default": "root_domain",
1564
+ "pattern": "^(root_domain|domain|url)$",
1565
+ "title": "Target Type",
1566
+ "type": "string"
1567
+ }
1568
+ },
1569
+ "required": ["domain"],
1570
+ "title": "BacklinkQuery",
1571
+ "type": "object"
1572
+ }
1573
+ },
1574
+ keyword_gap: {
1575
+ "method": "/spectrum/v1/Gap/KeywordsList",
1576
+ "description": "Paginated organic keyword gap between two to five sites.",
1577
+ "transport": "gap",
1578
+ "total_method": "",
1579
+ "web_report": "domain.overview",
1580
+ "schema": {
1581
+ "additionalProperties": false,
1582
+ "properties": {
1583
+ "database": {
1584
+ "default": "us",
1585
+ "pattern": "^(mobile-)?[a-z]{2}$",
1586
+ "title": "Database",
1587
+ "type": "string"
1588
+ },
1589
+ "domains": {
1590
+ "description": "Two to five root domains, first is your site",
1591
+ "items": { "type": "string" },
1592
+ "maxItems": 5,
1593
+ "minItems": 2,
1594
+ "title": "Domains",
1595
+ "type": "array"
1596
+ },
1597
+ "filters": {
1598
+ "default": "",
1599
+ "description": "Semrush spectrum filter expression",
1600
+ "title": "Filters",
1601
+ "type": "string"
1602
+ },
1603
+ "gap_type": {
1604
+ "default": 2,
1605
+ "description": "Semrush web gap type, default 2",
1606
+ "maximum": 7,
1607
+ "minimum": 1,
1608
+ "title": "Gap Type",
1609
+ "type": "integer"
1610
+ },
1611
+ "limit": {
1612
+ "default": 100,
1613
+ "maximum": 100,
1614
+ "minimum": 1,
1615
+ "title": "Limit",
1616
+ "type": "integer"
1617
+ },
1618
+ "offset": {
1619
+ "default": 0,
1620
+ "minimum": 0,
1621
+ "title": "Offset",
1622
+ "type": "integer"
1623
+ }
1624
+ },
1625
+ "required": ["domains"],
1626
+ "title": "GapQuery",
1627
+ "type": "object"
1628
+ }
1629
+ },
1630
+ keyword_gap_totals: {
1631
+ "method": "/spectrum/v1/Gap/KeywordsTotals",
1632
+ "description": "Counts for keyword overlap and opportunity types.",
1633
+ "transport": "gap",
1634
+ "total_method": "",
1635
+ "web_report": "domain.overview",
1636
+ "schema": {
1637
+ "additionalProperties": false,
1638
+ "properties": {
1639
+ "database": {
1640
+ "default": "us",
1641
+ "pattern": "^(mobile-)?[a-z]{2}$",
1642
+ "title": "Database",
1643
+ "type": "string"
1644
+ },
1645
+ "domains": {
1646
+ "description": "Two to five root domains, first is your site",
1647
+ "items": { "type": "string" },
1648
+ "maxItems": 5,
1649
+ "minItems": 2,
1650
+ "title": "Domains",
1651
+ "type": "array"
1652
+ },
1653
+ "filters": {
1654
+ "default": "",
1655
+ "description": "Semrush spectrum filter expression",
1656
+ "title": "Filters",
1657
+ "type": "string"
1658
+ }
1659
+ },
1660
+ "required": ["domains"],
1661
+ "title": "GapSummaryQuery",
1662
+ "type": "object"
1663
+ }
1664
+ },
1665
+ keyword_gap_overlap: {
1666
+ "method": "/spectrum/v1/Gap/Overlaps",
1667
+ "description": "Organic keyword profile overlaps.",
1668
+ "transport": "gap",
1669
+ "total_method": "",
1670
+ "web_report": "domain.overview",
1671
+ "schema": {
1672
+ "additionalProperties": false,
1673
+ "properties": {
1674
+ "database": {
1675
+ "default": "us",
1676
+ "pattern": "^(mobile-)?[a-z]{2}$",
1677
+ "title": "Database",
1678
+ "type": "string"
1679
+ },
1680
+ "domains": {
1681
+ "description": "Two to five root domains, first is your site",
1682
+ "items": { "type": "string" },
1683
+ "maxItems": 5,
1684
+ "minItems": 2,
1685
+ "title": "Domains",
1686
+ "type": "array"
1687
+ },
1688
+ "filters": {
1689
+ "default": "",
1690
+ "description": "Semrush spectrum filter expression",
1691
+ "title": "Filters",
1692
+ "type": "string"
1693
+ }
1694
+ },
1695
+ "required": ["domains"],
1696
+ "title": "GapSummaryQuery",
1697
+ "type": "object"
1698
+ }
1699
+ },
1700
+ backlink_gap: {
1701
+ "method": "backlinks_matrix",
1702
+ "description": "Paginated link-building prospects shared by competitors but missing from your site.",
1703
+ "transport": "backlink_gap",
1704
+ "total_method": "",
1705
+ "web_report": "domain.overview",
1706
+ "schema": {
1707
+ "additionalProperties": false,
1708
+ "properties": {
1709
+ "domains": {
1710
+ "description": "Two to five root domains, first is your site",
1711
+ "items": { "type": "string" },
1712
+ "maxItems": 5,
1713
+ "minItems": 2,
1714
+ "title": "Domains",
1715
+ "type": "array"
1716
+ },
1717
+ "page": {
1718
+ "default": 0,
1719
+ "minimum": 0,
1720
+ "title": "Page",
1721
+ "type": "integer"
1722
+ },
1723
+ "limit": {
1724
+ "default": 100,
1725
+ "maximum": 100,
1726
+ "minimum": 1,
1727
+ "title": "Limit",
1728
+ "type": "integer"
1729
+ },
1730
+ "filters": {
1731
+ "default": "+|backlinksnum_0|Eq|0",
1732
+ "description": "Web filter; default finds referring domains missing from your site",
1733
+ "title": "Filters",
1734
+ "type": "string"
1735
+ },
1736
+ "sort_field": {
1737
+ "default": "matchesnum",
1738
+ "pattern": "^[a-z_]+$",
1739
+ "title": "Sort Field",
1740
+ "type": "string"
1741
+ },
1742
+ "descending": {
1743
+ "default": true,
1744
+ "title": "Descending",
1745
+ "type": "boolean"
1746
+ },
1747
+ "sort_target": {
1748
+ "default": 0,
1749
+ "maximum": 4,
1750
+ "minimum": 0,
1751
+ "title": "Sort Target",
1752
+ "type": "integer"
1753
+ }
1754
+ },
1755
+ "required": ["domains"],
1756
+ "title": "BacklinkGapQuery",
1757
+ "type": "object"
1758
+ }
1759
+ },
1760
+ backlink_comparison: {
1761
+ "method": "backlinks_comparison",
1762
+ "description": "Compare backlink history, country distribution and domain zones.",
1763
+ "transport": "backlink_gap",
1764
+ "total_method": "",
1765
+ "web_report": "domain.overview",
1766
+ "schema": {
1767
+ "additionalProperties": false,
1768
+ "properties": { "domains": {
1769
+ "description": "Two to five root domains, first is your site",
1770
+ "items": { "type": "string" },
1771
+ "maxItems": 5,
1772
+ "minItems": 2,
1773
+ "title": "Domains",
1774
+ "type": "array"
1775
+ } },
1776
+ "required": ["domains"],
1777
+ "title": "BacklinkComparisonQuery",
1778
+ "type": "object"
1779
+ }
1780
+ },
1781
+ projects: {
1782
+ "method": "/apis/v4-raw/crossroad/api/v0/crossroad/list",
1783
+ "description": "Existing projects and folder access, with pagination.",
1784
+ "transport": "projects",
1785
+ "total_method": "",
1786
+ "web_report": "domain.overview",
1787
+ "schema": {
1788
+ "additionalProperties": false,
1789
+ "properties": {
1790
+ "limit": {
1791
+ "default": 15,
1792
+ "maximum": 100,
1793
+ "minimum": 1,
1794
+ "title": "Limit",
1795
+ "type": "integer"
1796
+ },
1797
+ "offset": {
1798
+ "default": 0,
1799
+ "minimum": 0,
1800
+ "title": "Offset",
1801
+ "type": "integer"
1802
+ },
1803
+ "filters": {
1804
+ "additionalProperties": true,
1805
+ "description": "Project list web filter object",
1806
+ "title": "Filters",
1807
+ "type": "object"
1808
+ }
1809
+ },
1810
+ "title": "ProjectListQuery",
1811
+ "type": "object"
1812
+ }
1813
+ },
1814
+ ai_capabilities: {
1815
+ "method": "/ai-seo/api/v2/user/user_capabilities",
1816
+ "description": "Account AI Visibility Toolkit access and limits.",
1817
+ "transport": "post",
1818
+ "total_method": "",
1819
+ "web_report": "domain.overview",
1820
+ "schema": {
1821
+ "additionalProperties": false,
1822
+ "properties": {},
1823
+ "title": "EmptyQuery",
1824
+ "type": "object"
1825
+ }
1826
+ },
1827
+ audit_campaigns: {
1828
+ "method": "/siteaudit/api/campaigns/seolist",
1829
+ "description": "Existing Site Audit campaigns; does not start a crawl.",
1830
+ "transport": "get",
1831
+ "total_method": "",
1832
+ "web_report": "domain.overview",
1833
+ "schema": {
1834
+ "additionalProperties": false,
1835
+ "properties": {},
1836
+ "title": "EmptyQuery",
1837
+ "type": "object"
1838
+ }
1839
+ },
1840
+ folders: {
1841
+ "method": "/apis/v4-raw/folders/api/v0/folders/selector-list",
1842
+ "description": "Accessible project folders.",
1843
+ "transport": "get",
1844
+ "total_method": "",
1845
+ "web_report": "domain.overview",
1846
+ "schema": {
1847
+ "additionalProperties": false,
1848
+ "properties": {},
1849
+ "title": "EmptyQuery",
1850
+ "type": "object"
1851
+ }
1852
+ },
1853
+ saved_keyword_lists: {
1854
+ "method": "/apis/v4-raw/saved-keywords/api/v0/list/all",
1855
+ "description": "Existing saved keyword lists.",
1856
+ "transport": "post",
1857
+ "total_method": "",
1858
+ "web_report": "domain.overview",
1859
+ "schema": {
1860
+ "additionalProperties": false,
1861
+ "properties": {},
1862
+ "title": "EmptyQuery",
1863
+ "type": "object"
1864
+ }
1865
+ }
1866
+ };
1867
+
1868
+ //#endregion
1869
+ //#region src/report-parameters.ts
1870
+ const backlinkSorts = new Map([
1871
+ ["backlinks", "page_ascore"],
1872
+ ["backlinks_refdomains", "backlinksnum"],
1873
+ ["backlinks_anchors", "backlinksnum"],
1874
+ ["backlinks_pages", "domainsnum"],
1875
+ ["backlinks_outgoing_domains", "links_num"]
1876
+ ]);
1877
+ const version = version$1;
1878
+ const reports = report_catalog_default;
1879
+ /** Fixed request shapes observed in semrush-web-mcp. No arbitrary RPC or URL input. */
1880
+ function reportParameters(definition, q) {
1881
+ const family = definition.transport;
1882
+ if (family === "magic") return magicParameters(definition, q);
1883
+ if (family === "keyword") return keywordParameters(definition, q);
1884
+ if (family === "direct") return "database" in q ? {
1885
+ database: q.database ?? null,
1886
+ global: q.global_data ?? null,
1887
+ dateFormat: "date"
1888
+ } : {};
1889
+ if (family === "domain") return domainParameters(definition, q);
1890
+ if (family === "backlink_gap") return backlinkComparisonParameters(definition, q);
1891
+ if (family.startsWith("backlink")) return backlinkParameters(definition, q);
1892
+ if (family === "gap") return gapParameters(definition, q);
1893
+ if (family === "projects") return {
1894
+ filter: q.filters ?? null,
1895
+ range: {
1896
+ limit: q.limit ?? null,
1897
+ offset: q.offset ?? null
1898
+ }
1899
+ };
1900
+ if (family === "post" && definition.method.endsWith("/list/all")) return {
1901
+ ownership: 1,
1902
+ order: {
1903
+ field: 3,
1904
+ direction: 2
1905
+ },
1906
+ range: {
1907
+ limit: 1e3,
1908
+ offset: 0
1909
+ }
1910
+ };
1911
+ if (definition.method.endsWith("selector-list")) return {
1912
+ limit: 1e4,
1913
+ offset: 0
1914
+ };
1915
+ return {};
1916
+ }
1917
+ function magicParameters(definition, q) {
1918
+ const method = definition.method;
1919
+ const filters = Object.fromEntries([
1920
+ "phrase",
1921
+ "competition_level",
1922
+ "cpc",
1923
+ "difficulty",
1924
+ "results",
1925
+ "volume",
1926
+ "words_count"
1927
+ ].map((key) => [key, []]));
1928
+ Object.assign(filters, {
1929
+ serp_features: [{
1930
+ inverted: false,
1931
+ value: []
1932
+ }],
1933
+ phrase_include_logic: 0
1934
+ }, q.filters ?? null);
1935
+ const params = {
1936
+ phrase: q.keyword ?? null,
1937
+ database: q.database ?? null,
1938
+ currency: q.currency ?? null,
1939
+ mode: q.mode ?? null,
1940
+ questions_only: q.questions_only ?? null,
1941
+ topics_enabled: true,
1942
+ filter: filters,
1943
+ groups: q.groups ?? null,
1944
+ order: {
1945
+ direction: q.descending ? 1 : 0,
1946
+ field: q.sort_field ?? null
1947
+ },
1948
+ groups_order: {
1949
+ direction: 1,
1950
+ field: "relevance"
1951
+ }
1952
+ };
1953
+ if (method === "ideas.GetKeywords") params.page = {
1954
+ number: q.page ?? null,
1955
+ size: q.page_size ?? null
1956
+ };
1957
+ if (method === "ideas.GetGroups") params.groups_page = {
1958
+ number: q.page ?? null,
1959
+ size: q.page_size ?? null
1960
+ };
1961
+ return params;
1962
+ }
1963
+ function keywordParameters(definition, q) {
1964
+ const method = definition.method;
1965
+ if (!("keyword" in q)) return {};
1966
+ const params = {
1967
+ phrase: q.keyword ?? null,
1968
+ database: q.database ?? null,
1969
+ device: 0,
1970
+ currency: "USD",
1971
+ location: 0,
1972
+ date: ""
1973
+ };
1974
+ if (method.startsWith("ideas.")) Object.assign(params, {
1975
+ mode: 0,
1976
+ questions_only: q.questions_only ?? null
1977
+ });
1978
+ return params;
1979
+ }
1980
+ function domainParameters(definition, q) {
1981
+ const method = definition.method;
1982
+ if (!("domain" in q)) return { database: q.database ?? null };
1983
+ const params = {
1984
+ searchItem: q.domain ?? null,
1985
+ searchType: "domain",
1986
+ dateFormat: "date",
1987
+ dateType: q.date_type ?? "daily"
1988
+ };
1989
+ if ("database" in q) params.database = q.database ?? null;
1990
+ if ("search_type" in q) {
1991
+ delete params.dateFormat;
1992
+ if ((q.date ?? null) !== null) params.date = q.date ?? null;
1993
+ Object.assign(params, {
1994
+ searchType: q.search_type ?? null,
1995
+ display: {
1996
+ page: q.page ?? null,
1997
+ pageSize: q.page_size ?? null,
1998
+ order: {
1999
+ field: q.sort_field ?? null,
2000
+ direction: q.descending ? "desc" : "asc"
2001
+ }
2002
+ }
2003
+ });
2004
+ if (method === "organic.Positions" || method === "organic.PositionChangesV2") params.positionsType = "all";
2005
+ if ("filters" in q) params.filter = q.filters ?? null;
2006
+ if (method === "organic.PositionChangesV2") Object.assign(params, {
2007
+ changesTypes: null,
2008
+ dateRange: null
2009
+ });
2010
+ }
2011
+ if (method.endsWith("CompetitorsOverview")) Object.assign(params, {
2012
+ display: {
2013
+ page: 1,
2014
+ pageSize: q.limit ?? null
2015
+ },
2016
+ youDomain: true
2017
+ });
2018
+ if (method === "organic.OverviewTrend") {
2019
+ delete params.dateFormat;
2020
+ Object.assign(params, {
2021
+ dateRange: null,
2022
+ global: q.global_data ?? null
2023
+ });
2024
+ }
2025
+ if (method === "organic.TopicsStatus" || method === "organic.TopicsResult") {
2026
+ delete params.dateFormat;
2027
+ delete params.dateType;
2028
+ }
2029
+ if (method === "organic.AiTopSources") params.range = {
2030
+ limit: q.limit ?? null,
2031
+ offset: q.offset ?? null
2032
+ };
2033
+ return params;
2034
+ }
2035
+ function backlinkComparisonParameters(definition, q) {
2036
+ const method = definition.method;
2037
+ const params = {
2038
+ action: "report",
2039
+ type: method,
2040
+ "targets[]": q.domains ?? null,
2041
+ "target_types[]": Array.isArray(q.domains) ? q.domains.map(() => "root_domain") : []
2042
+ };
2043
+ if (method === "backlinks_matrix") Object.assign(params, {
2044
+ display_limit: q.limit ?? null,
2045
+ export_columns: "domain,domain_ascore,matches_num,backlinks_num,traffic",
2046
+ display_filter: q.filters ?? null,
2047
+ sort_field: q.sort_field ?? null,
2048
+ sort_type: q.descending ? "desc" : "asc",
2049
+ sort_target: q.sort_target ?? null,
2050
+ display_page: q.page ?? null
2051
+ });
2052
+ else params.export_columns = "zones,backlinks_historical,geodomains";
2053
+ return params;
2054
+ }
2055
+ function backlinkParameters(definition, q) {
2056
+ const method = definition.method;
2057
+ const family = definition.transport;
2058
+ const params = {
2059
+ target: q.domain ?? null,
2060
+ target_type: q.target_type ?? null
2061
+ };
2062
+ if (family === "backlink") {
2063
+ Object.assign(params, {
2064
+ action: "report",
2065
+ type: method,
2066
+ display_page: q.page ?? null,
2067
+ sort_field: (q.sort_field ?? null) || backlinkSorts.get(method),
2068
+ sort_type: q.descending ? "desc" : "asc"
2069
+ });
2070
+ if (q.filters ?? null) params.display_filter = q.filters ?? null;
2071
+ }
2072
+ return params;
2073
+ }
2074
+ function gapParameters(definition, q) {
2075
+ const method = definition.method;
2076
+ const params = {
2077
+ targets: Array.isArray(q.domains) ? q.domains.map((value) => ({
2078
+ product_type: 2,
2079
+ type: 1,
2080
+ value,
2081
+ filters: ""
2082
+ })) : [],
2083
+ date: null,
2084
+ database: q.database ?? null,
2085
+ filters: q.filters ?? null
2086
+ };
2087
+ if (method.endsWith("KeywordsList")) Object.assign(params, {
2088
+ type: q.gap_type ?? null,
2089
+ range: {
2090
+ limit: q.limit ?? null,
2091
+ offset: q.offset ?? null
2092
+ },
2093
+ columns: [
2094
+ "KEYWORD",
2095
+ "INTENTS",
2096
+ "VOLUME",
2097
+ "KEYWORD_DIFFICULTY",
2098
+ "CPC",
2099
+ "COMPETITION_DENSITY",
2100
+ "TARGETS_POSITION",
2101
+ "TARGETS_URL",
2102
+ "RESULTS"
2103
+ ],
2104
+ order: {
2105
+ column: 6,
2106
+ direction: 2
2107
+ }
2108
+ });
2109
+ return params;
2110
+ }
2111
+
2112
+ //#endregion
2113
+ //#region src/errors.ts
2114
+ /** Safe errors are the only error details exposed by CLI and MCP boundaries. */
2115
+ var SessionError = class extends Schema.TaggedError()("SessionError", {
2116
+ message: Schema.String,
2117
+ code: Schema.optional(Schema.String)
2118
+ }) {};
2119
+ var ReportError = class extends Schema.TaggedError()("ReportError", { message: Schema.String }) {};
2120
+ var UsageError = class extends Schema.TaggedError()("UsageError", { message: Schema.String }) {};
2121
+
2122
+ //#endregion
2123
+ export { reports as a, reportParameters as i, SessionError as n, version as o, UsageError as r, ReportError as t };
2124
+ //# sourceMappingURL=errors-BhvanypE.js.map