@nuxtseo/protocol 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.
- package/dist/analytics-codecs/analytics-row.d.ts +265 -0
- package/dist/analytics-codecs/analytics-row.js +175 -0
- package/dist/analytics-codecs/analytics-web-vitals.d.ts +57 -0
- package/dist/analytics-codecs/analytics-web-vitals.js +76 -0
- package/dist/analytics-codecs/capabilities.d.ts +35 -0
- package/dist/analytics-codecs/capabilities.js +76 -0
- package/dist/analytics-codecs/index.d.ts +3 -0
- package/dist/analytics-codecs/index.js +3 -0
- package/dist/cli-pairing.d.ts +67 -0
- package/dist/cli-pairing.js +52 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/v1/account.d.ts +715 -0
- package/dist/v1/account.js +123 -0
- package/dist/v1/actions.d.ts +2591 -0
- package/dist/v1/actions.js +460 -0
- package/dist/v1/analytics.d.ts +6145 -0
- package/dist/v1/analytics.js +296 -0
- package/dist/v1/audit.d.ts +4053 -0
- package/dist/v1/audit.js +609 -0
- package/dist/v1/backlinks.d.ts +1002 -0
- package/dist/v1/backlinks.js +239 -0
- package/dist/v1/content.d.ts +2745 -0
- package/dist/v1/content.js +326 -0
- package/dist/v1/core.d.ts +301 -0
- package/dist/v1/core.js +333 -0
- package/dist/v1/documents.d.ts +4 -0
- package/dist/v1/documents.js +216 -0
- package/dist/v1/gsc.d.ts +5172 -0
- package/dist/v1/gsc.js +583 -0
- package/dist/v1/index.d.ts +49 -0
- package/dist/v1/index.js +52 -0
- package/dist/v1/pages.d.ts +1404 -0
- package/dist/v1/pages.js +287 -0
- package/dist/v1/performance.d.ts +1379 -0
- package/dist/v1/performance.js +198 -0
- package/dist/v1/research.d.ts +1173 -0
- package/dist/v1/research.js +174 -0
- package/dist/v1/sitemaps.d.ts +1506 -0
- package/dist/v1/sitemaps.js +199 -0
- package/dist/v1/sites.d.ts +591 -0
- package/dist/v1/sites.js +101 -0
- package/generated/openapi.v1.json +1 -0
- package/package.json +131 -0
|
@@ -0,0 +1,1173 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
export declare const researchSiteParamsSchema: z.ZodObject<{
|
|
3
|
+
siteId: z.ZodString;
|
|
4
|
+
}, z.core.$strict>;
|
|
5
|
+
export declare const researchMetricsSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
6
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
7
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
8
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
9
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
10
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
11
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
12
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
13
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
14
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
15
|
+
}, z.core.$strip>>;
|
|
16
|
+
export declare const researchRankingKeywordSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
17
|
+
readonly keyword: z.ZodString;
|
|
18
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
19
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
20
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
21
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
22
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
23
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
24
|
+
readonly keyword: z.ZodString;
|
|
25
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
26
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
27
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
28
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
29
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
30
|
+
}, z.core.$strip>>;
|
|
31
|
+
export declare const researchSharedKeywordSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
32
|
+
readonly keyword: z.ZodString;
|
|
33
|
+
readonly yourPosition: z.ZodNumber;
|
|
34
|
+
readonly theirPosition: z.ZodNumber;
|
|
35
|
+
readonly volume: z.ZodNumber;
|
|
36
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
37
|
+
readonly keyword: z.ZodString;
|
|
38
|
+
readonly yourPosition: z.ZodNumber;
|
|
39
|
+
readonly theirPosition: z.ZodNumber;
|
|
40
|
+
readonly volume: z.ZodNumber;
|
|
41
|
+
}, z.core.$strip>>;
|
|
42
|
+
export declare const researchHistoryPointSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
43
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
44
|
+
readonly metrics: z.ZodObject<{
|
|
45
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
46
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
47
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
48
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
49
|
+
}, z.core.$strip>;
|
|
50
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
51
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
52
|
+
readonly metrics: z.ZodObject<{
|
|
53
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
54
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
55
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
56
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
57
|
+
}, z.core.$strip>;
|
|
58
|
+
}, z.core.$strip>>;
|
|
59
|
+
export declare const researchCompetitorSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
60
|
+
readonly domain: z.ZodString;
|
|
61
|
+
readonly discovery: z.ZodEnum<{
|
|
62
|
+
automatic: "automatic";
|
|
63
|
+
manual: "manual";
|
|
64
|
+
unknown: "unknown";
|
|
65
|
+
}>;
|
|
66
|
+
readonly metrics: z.ZodObject<{
|
|
67
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
68
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
69
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
70
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
71
|
+
}, z.core.$strip>;
|
|
72
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
73
|
+
readonly keyword: z.ZodString;
|
|
74
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
75
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
76
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
77
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
78
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
79
|
+
}, z.core.$strip>>;
|
|
80
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
81
|
+
readonly keyword: z.ZodString;
|
|
82
|
+
readonly yourPosition: z.ZodNumber;
|
|
83
|
+
readonly theirPosition: z.ZodNumber;
|
|
84
|
+
readonly volume: z.ZodNumber;
|
|
85
|
+
}, z.core.$strip>>;
|
|
86
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
87
|
+
readonly keyword: z.ZodString;
|
|
88
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
89
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
90
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
91
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
92
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
93
|
+
}, z.core.$strip>>;
|
|
94
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
95
|
+
readonly keyword: z.ZodString;
|
|
96
|
+
readonly yourPosition: z.ZodNumber;
|
|
97
|
+
readonly theirPosition: z.ZodNumber;
|
|
98
|
+
readonly volume: z.ZodNumber;
|
|
99
|
+
}, z.core.$strip>>;
|
|
100
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
101
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
102
|
+
readonly metrics: z.ZodObject<{
|
|
103
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
104
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
105
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
106
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
107
|
+
}, z.core.$strip>;
|
|
108
|
+
}, z.core.$strip>>;
|
|
109
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
110
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
111
|
+
readonly domain: z.ZodString;
|
|
112
|
+
readonly discovery: z.ZodEnum<{
|
|
113
|
+
automatic: "automatic";
|
|
114
|
+
manual: "manual";
|
|
115
|
+
unknown: "unknown";
|
|
116
|
+
}>;
|
|
117
|
+
readonly metrics: z.ZodObject<{
|
|
118
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
119
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
120
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
121
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
122
|
+
}, z.core.$strip>;
|
|
123
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
124
|
+
readonly keyword: z.ZodString;
|
|
125
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
126
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
127
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
128
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
129
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
130
|
+
}, z.core.$strip>>;
|
|
131
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
132
|
+
readonly keyword: z.ZodString;
|
|
133
|
+
readonly yourPosition: z.ZodNumber;
|
|
134
|
+
readonly theirPosition: z.ZodNumber;
|
|
135
|
+
readonly volume: z.ZodNumber;
|
|
136
|
+
}, z.core.$strip>>;
|
|
137
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
138
|
+
readonly keyword: z.ZodString;
|
|
139
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
140
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
141
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
142
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
143
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
144
|
+
}, z.core.$strip>>;
|
|
145
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
146
|
+
readonly keyword: z.ZodString;
|
|
147
|
+
readonly yourPosition: z.ZodNumber;
|
|
148
|
+
readonly theirPosition: z.ZodNumber;
|
|
149
|
+
readonly volume: z.ZodNumber;
|
|
150
|
+
}, z.core.$strip>>;
|
|
151
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
152
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
153
|
+
readonly metrics: z.ZodObject<{
|
|
154
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
155
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
156
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
157
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
158
|
+
}, z.core.$strip>;
|
|
159
|
+
}, z.core.$strip>>;
|
|
160
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
161
|
+
}, z.core.$strip>>;
|
|
162
|
+
export declare const researchSubjectSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
163
|
+
readonly domain: z.ZodString;
|
|
164
|
+
readonly metrics: z.ZodObject<{
|
|
165
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
166
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
167
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
168
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
169
|
+
}, z.core.$strip>;
|
|
170
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
171
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
172
|
+
readonly metrics: z.ZodObject<{
|
|
173
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
174
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
175
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
176
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
177
|
+
}, z.core.$strip>;
|
|
178
|
+
}, z.core.$strip>>;
|
|
179
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
180
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
181
|
+
readonly domain: z.ZodString;
|
|
182
|
+
readonly metrics: z.ZodObject<{
|
|
183
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
184
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
185
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
186
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
187
|
+
}, z.core.$strip>;
|
|
188
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
189
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
190
|
+
readonly metrics: z.ZodObject<{
|
|
191
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
192
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
193
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
194
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
195
|
+
}, z.core.$strip>;
|
|
196
|
+
}, z.core.$strip>>;
|
|
197
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
198
|
+
}, z.core.$strip>>;
|
|
199
|
+
export declare const storedResearchOverviewDataSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
200
|
+
readonly evidence: z.ZodObject<{
|
|
201
|
+
_tag: z.ZodLiteral<"stored">;
|
|
202
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
203
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
204
|
+
}, z.core.$strict>;
|
|
205
|
+
readonly summary: z.ZodObject<{
|
|
206
|
+
competitorCount: z.ZodNumber;
|
|
207
|
+
quickWins: z.ZodNumber;
|
|
208
|
+
totalSharedKeywords: z.ZodNumber;
|
|
209
|
+
totalTrafficValue: z.ZodNumber;
|
|
210
|
+
}, z.core.$strict>;
|
|
211
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
212
|
+
readonly domain: z.ZodString;
|
|
213
|
+
readonly metrics: z.ZodObject<{
|
|
214
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
215
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
216
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
217
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
218
|
+
}, z.core.$strip>;
|
|
219
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
220
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
221
|
+
readonly metrics: z.ZodObject<{
|
|
222
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
223
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
224
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
225
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
226
|
+
}, z.core.$strip>;
|
|
227
|
+
}, z.core.$strip>>;
|
|
228
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
229
|
+
}, z.core.$strip>>;
|
|
230
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
231
|
+
readonly domain: z.ZodString;
|
|
232
|
+
readonly discovery: z.ZodEnum<{
|
|
233
|
+
automatic: "automatic";
|
|
234
|
+
manual: "manual";
|
|
235
|
+
unknown: "unknown";
|
|
236
|
+
}>;
|
|
237
|
+
readonly metrics: z.ZodObject<{
|
|
238
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
239
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
240
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
241
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
242
|
+
}, z.core.$strip>;
|
|
243
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
244
|
+
readonly keyword: z.ZodString;
|
|
245
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
246
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
247
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
248
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
249
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
250
|
+
}, z.core.$strip>>;
|
|
251
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
252
|
+
readonly keyword: z.ZodString;
|
|
253
|
+
readonly yourPosition: z.ZodNumber;
|
|
254
|
+
readonly theirPosition: z.ZodNumber;
|
|
255
|
+
readonly volume: z.ZodNumber;
|
|
256
|
+
}, z.core.$strip>>;
|
|
257
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
258
|
+
readonly keyword: z.ZodString;
|
|
259
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
260
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
261
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
262
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
263
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
264
|
+
}, z.core.$strip>>;
|
|
265
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
266
|
+
readonly keyword: z.ZodString;
|
|
267
|
+
readonly yourPosition: z.ZodNumber;
|
|
268
|
+
readonly theirPosition: z.ZodNumber;
|
|
269
|
+
readonly volume: z.ZodNumber;
|
|
270
|
+
}, z.core.$strip>>;
|
|
271
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
272
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
273
|
+
readonly metrics: z.ZodObject<{
|
|
274
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
275
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
276
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
277
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
278
|
+
}, z.core.$strip>;
|
|
279
|
+
}, z.core.$strip>>;
|
|
280
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
281
|
+
}, z.core.$strip>>;
|
|
282
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
283
|
+
readonly evidence: z.ZodObject<{
|
|
284
|
+
_tag: z.ZodLiteral<"stored">;
|
|
285
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
286
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
287
|
+
}, z.core.$loose>;
|
|
288
|
+
readonly summary: z.ZodObject<{
|
|
289
|
+
competitorCount: z.ZodNumber;
|
|
290
|
+
quickWins: z.ZodNumber;
|
|
291
|
+
totalSharedKeywords: z.ZodNumber;
|
|
292
|
+
totalTrafficValue: z.ZodNumber;
|
|
293
|
+
}, z.core.$loose>;
|
|
294
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
295
|
+
readonly domain: z.ZodString;
|
|
296
|
+
readonly metrics: z.ZodObject<{
|
|
297
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
298
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
299
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
300
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
301
|
+
}, z.core.$strip>;
|
|
302
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
303
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
304
|
+
readonly metrics: z.ZodObject<{
|
|
305
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
306
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
307
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
308
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
309
|
+
}, z.core.$strip>;
|
|
310
|
+
}, z.core.$strip>>;
|
|
311
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
312
|
+
}, z.core.$strip>>;
|
|
313
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
314
|
+
readonly domain: z.ZodString;
|
|
315
|
+
readonly discovery: z.ZodEnum<{
|
|
316
|
+
automatic: "automatic";
|
|
317
|
+
manual: "manual";
|
|
318
|
+
unknown: "unknown";
|
|
319
|
+
}>;
|
|
320
|
+
readonly metrics: z.ZodObject<{
|
|
321
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
322
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
323
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
324
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
325
|
+
}, z.core.$strip>;
|
|
326
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
327
|
+
readonly keyword: z.ZodString;
|
|
328
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
329
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
330
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
331
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
332
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
333
|
+
}, z.core.$strip>>;
|
|
334
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
335
|
+
readonly keyword: z.ZodString;
|
|
336
|
+
readonly yourPosition: z.ZodNumber;
|
|
337
|
+
readonly theirPosition: z.ZodNumber;
|
|
338
|
+
readonly volume: z.ZodNumber;
|
|
339
|
+
}, z.core.$strip>>;
|
|
340
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
341
|
+
readonly keyword: z.ZodString;
|
|
342
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
343
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
344
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
345
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
346
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
347
|
+
}, z.core.$strip>>;
|
|
348
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
349
|
+
readonly keyword: z.ZodString;
|
|
350
|
+
readonly yourPosition: z.ZodNumber;
|
|
351
|
+
readonly theirPosition: z.ZodNumber;
|
|
352
|
+
readonly volume: z.ZodNumber;
|
|
353
|
+
}, z.core.$strip>>;
|
|
354
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
355
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
356
|
+
readonly metrics: z.ZodObject<{
|
|
357
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
358
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
359
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
360
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
361
|
+
}, z.core.$strip>;
|
|
362
|
+
}, z.core.$strip>>;
|
|
363
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
364
|
+
}, z.core.$strip>>;
|
|
365
|
+
}, z.core.$strip>>;
|
|
366
|
+
export declare const storedResearchOverviewResponseSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
367
|
+
data: z.ZodObject<{
|
|
368
|
+
readonly evidence: z.ZodObject<{
|
|
369
|
+
_tag: z.ZodLiteral<"stored">;
|
|
370
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
371
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
372
|
+
}, z.core.$strict>;
|
|
373
|
+
readonly summary: z.ZodObject<{
|
|
374
|
+
competitorCount: z.ZodNumber;
|
|
375
|
+
quickWins: z.ZodNumber;
|
|
376
|
+
totalSharedKeywords: z.ZodNumber;
|
|
377
|
+
totalTrafficValue: z.ZodNumber;
|
|
378
|
+
}, z.core.$strict>;
|
|
379
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
380
|
+
readonly domain: z.ZodString;
|
|
381
|
+
readonly metrics: z.ZodObject<{
|
|
382
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
383
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
384
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
385
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
386
|
+
}, z.core.$strip>;
|
|
387
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
388
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
389
|
+
readonly metrics: z.ZodObject<{
|
|
390
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
391
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
392
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
393
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
394
|
+
}, z.core.$strip>;
|
|
395
|
+
}, z.core.$strip>>;
|
|
396
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
397
|
+
}, z.core.$strip>>;
|
|
398
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
399
|
+
readonly domain: z.ZodString;
|
|
400
|
+
readonly discovery: z.ZodEnum<{
|
|
401
|
+
automatic: "automatic";
|
|
402
|
+
manual: "manual";
|
|
403
|
+
unknown: "unknown";
|
|
404
|
+
}>;
|
|
405
|
+
readonly metrics: z.ZodObject<{
|
|
406
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
407
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
408
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
409
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
410
|
+
}, z.core.$strip>;
|
|
411
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
412
|
+
readonly keyword: z.ZodString;
|
|
413
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
414
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
415
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
416
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
417
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
418
|
+
}, z.core.$strip>>;
|
|
419
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
420
|
+
readonly keyword: z.ZodString;
|
|
421
|
+
readonly yourPosition: z.ZodNumber;
|
|
422
|
+
readonly theirPosition: z.ZodNumber;
|
|
423
|
+
readonly volume: z.ZodNumber;
|
|
424
|
+
}, z.core.$strip>>;
|
|
425
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
426
|
+
readonly keyword: z.ZodString;
|
|
427
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
428
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
429
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
430
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
431
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
432
|
+
}, z.core.$strip>>;
|
|
433
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
434
|
+
readonly keyword: z.ZodString;
|
|
435
|
+
readonly yourPosition: z.ZodNumber;
|
|
436
|
+
readonly theirPosition: z.ZodNumber;
|
|
437
|
+
readonly volume: z.ZodNumber;
|
|
438
|
+
}, z.core.$strip>>;
|
|
439
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
440
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
441
|
+
readonly metrics: z.ZodObject<{
|
|
442
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
443
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
444
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
445
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
446
|
+
}, z.core.$strip>;
|
|
447
|
+
}, z.core.$strip>>;
|
|
448
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
449
|
+
}, z.core.$strip>>;
|
|
450
|
+
}, z.core.$strip>;
|
|
451
|
+
meta: z.ZodObject<{
|
|
452
|
+
requestId: z.ZodString;
|
|
453
|
+
version: z.ZodLiteral<"1.0">;
|
|
454
|
+
}, z.core.$strict>;
|
|
455
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
456
|
+
data: z.ZodObject<{
|
|
457
|
+
readonly evidence: z.ZodObject<{
|
|
458
|
+
_tag: z.ZodLiteral<"stored">;
|
|
459
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
460
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
461
|
+
}, z.core.$loose>;
|
|
462
|
+
readonly summary: z.ZodObject<{
|
|
463
|
+
competitorCount: z.ZodNumber;
|
|
464
|
+
quickWins: z.ZodNumber;
|
|
465
|
+
totalSharedKeywords: z.ZodNumber;
|
|
466
|
+
totalTrafficValue: z.ZodNumber;
|
|
467
|
+
}, z.core.$loose>;
|
|
468
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
469
|
+
readonly domain: z.ZodString;
|
|
470
|
+
readonly metrics: z.ZodObject<{
|
|
471
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
472
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
473
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
474
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
475
|
+
}, z.core.$strip>;
|
|
476
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
477
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
478
|
+
readonly metrics: z.ZodObject<{
|
|
479
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
480
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
481
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
482
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
483
|
+
}, z.core.$strip>;
|
|
484
|
+
}, z.core.$strip>>;
|
|
485
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
486
|
+
}, z.core.$strip>>;
|
|
487
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
488
|
+
readonly domain: z.ZodString;
|
|
489
|
+
readonly discovery: z.ZodEnum<{
|
|
490
|
+
automatic: "automatic";
|
|
491
|
+
manual: "manual";
|
|
492
|
+
unknown: "unknown";
|
|
493
|
+
}>;
|
|
494
|
+
readonly metrics: z.ZodObject<{
|
|
495
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
496
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
497
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
498
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
499
|
+
}, z.core.$strip>;
|
|
500
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
501
|
+
readonly keyword: z.ZodString;
|
|
502
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
503
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
504
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
505
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
506
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
507
|
+
}, z.core.$strip>>;
|
|
508
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
509
|
+
readonly keyword: z.ZodString;
|
|
510
|
+
readonly yourPosition: z.ZodNumber;
|
|
511
|
+
readonly theirPosition: z.ZodNumber;
|
|
512
|
+
readonly volume: z.ZodNumber;
|
|
513
|
+
}, z.core.$strip>>;
|
|
514
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
515
|
+
readonly keyword: z.ZodString;
|
|
516
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
517
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
518
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
519
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
520
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
521
|
+
}, z.core.$strip>>;
|
|
522
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
523
|
+
readonly keyword: z.ZodString;
|
|
524
|
+
readonly yourPosition: z.ZodNumber;
|
|
525
|
+
readonly theirPosition: z.ZodNumber;
|
|
526
|
+
readonly volume: z.ZodNumber;
|
|
527
|
+
}, z.core.$strip>>;
|
|
528
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
529
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
530
|
+
readonly metrics: z.ZodObject<{
|
|
531
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
532
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
533
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
534
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
535
|
+
}, z.core.$strip>;
|
|
536
|
+
}, z.core.$strip>>;
|
|
537
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
538
|
+
}, z.core.$strip>>;
|
|
539
|
+
}, z.core.$strip>;
|
|
540
|
+
meta: z.ZodObject<{
|
|
541
|
+
requestId: z.ZodString;
|
|
542
|
+
version: z.ZodLiteral<"1.0">;
|
|
543
|
+
}, z.core.$loose>;
|
|
544
|
+
}, z.core.$strip>>;
|
|
545
|
+
export type StoredResearchOverview = z.output<typeof storedResearchOverviewDataSchema.producer>;
|
|
546
|
+
export declare const storedResearchOverviewOperation: {
|
|
547
|
+
readonly id: 'research.overview';
|
|
548
|
+
readonly method: 'GET';
|
|
549
|
+
readonly path: '/api/v1/sites/{siteId}/research';
|
|
550
|
+
readonly visibility: 'public';
|
|
551
|
+
readonly semantics: {
|
|
552
|
+
readonly kind: 'query';
|
|
553
|
+
readonly sideEffects: 'none';
|
|
554
|
+
readonly retry: 'idempotent';
|
|
555
|
+
readonly readConsistency: 'primary';
|
|
556
|
+
};
|
|
557
|
+
readonly auth: {
|
|
558
|
+
readonly credentials: readonly ["session", "api_token"];
|
|
559
|
+
readonly scopes: readonly ["research:read"];
|
|
560
|
+
readonly minimumRole: 'viewer';
|
|
561
|
+
readonly ownership: 'site';
|
|
562
|
+
};
|
|
563
|
+
readonly request: {
|
|
564
|
+
readonly params: z.ZodObject<{
|
|
565
|
+
siteId: z.ZodString;
|
|
566
|
+
}, z.core.$strict>;
|
|
567
|
+
readonly query: null;
|
|
568
|
+
readonly headers: null;
|
|
569
|
+
readonly body: null;
|
|
570
|
+
};
|
|
571
|
+
readonly responses: {
|
|
572
|
+
readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
573
|
+
data: z.ZodObject<{
|
|
574
|
+
readonly evidence: z.ZodObject<{
|
|
575
|
+
_tag: z.ZodLiteral<"stored">;
|
|
576
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
577
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
578
|
+
}, z.core.$strict>;
|
|
579
|
+
readonly summary: z.ZodObject<{
|
|
580
|
+
competitorCount: z.ZodNumber;
|
|
581
|
+
quickWins: z.ZodNumber;
|
|
582
|
+
totalSharedKeywords: z.ZodNumber;
|
|
583
|
+
totalTrafficValue: z.ZodNumber;
|
|
584
|
+
}, z.core.$strict>;
|
|
585
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
586
|
+
readonly domain: z.ZodString;
|
|
587
|
+
readonly metrics: z.ZodObject<{
|
|
588
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
589
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
590
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
591
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
592
|
+
}, z.core.$strip>;
|
|
593
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
594
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
595
|
+
readonly metrics: z.ZodObject<{
|
|
596
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
597
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
598
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
599
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
600
|
+
}, z.core.$strip>;
|
|
601
|
+
}, z.core.$strip>>;
|
|
602
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
603
|
+
}, z.core.$strip>>;
|
|
604
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
605
|
+
readonly domain: z.ZodString;
|
|
606
|
+
readonly discovery: z.ZodEnum<{
|
|
607
|
+
automatic: "automatic";
|
|
608
|
+
manual: "manual";
|
|
609
|
+
unknown: "unknown";
|
|
610
|
+
}>;
|
|
611
|
+
readonly metrics: z.ZodObject<{
|
|
612
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
613
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
614
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
615
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
616
|
+
}, z.core.$strip>;
|
|
617
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
618
|
+
readonly keyword: z.ZodString;
|
|
619
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
620
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
621
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
622
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
623
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
624
|
+
}, z.core.$strip>>;
|
|
625
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
626
|
+
readonly keyword: z.ZodString;
|
|
627
|
+
readonly yourPosition: z.ZodNumber;
|
|
628
|
+
readonly theirPosition: z.ZodNumber;
|
|
629
|
+
readonly volume: z.ZodNumber;
|
|
630
|
+
}, z.core.$strip>>;
|
|
631
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
632
|
+
readonly keyword: z.ZodString;
|
|
633
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
634
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
635
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
636
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
637
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
638
|
+
}, z.core.$strip>>;
|
|
639
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
640
|
+
readonly keyword: z.ZodString;
|
|
641
|
+
readonly yourPosition: z.ZodNumber;
|
|
642
|
+
readonly theirPosition: z.ZodNumber;
|
|
643
|
+
readonly volume: z.ZodNumber;
|
|
644
|
+
}, z.core.$strip>>;
|
|
645
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
646
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
647
|
+
readonly metrics: z.ZodObject<{
|
|
648
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
649
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
650
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
651
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
652
|
+
}, z.core.$strip>;
|
|
653
|
+
}, z.core.$strip>>;
|
|
654
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
655
|
+
}, z.core.$strip>>;
|
|
656
|
+
}, z.core.$strip>;
|
|
657
|
+
meta: z.ZodObject<{
|
|
658
|
+
requestId: z.ZodString;
|
|
659
|
+
version: z.ZodLiteral<"1.0">;
|
|
660
|
+
}, z.core.$strict>;
|
|
661
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
662
|
+
data: z.ZodObject<{
|
|
663
|
+
readonly evidence: z.ZodObject<{
|
|
664
|
+
_tag: z.ZodLiteral<"stored">;
|
|
665
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
666
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
667
|
+
}, z.core.$loose>;
|
|
668
|
+
readonly summary: z.ZodObject<{
|
|
669
|
+
competitorCount: z.ZodNumber;
|
|
670
|
+
quickWins: z.ZodNumber;
|
|
671
|
+
totalSharedKeywords: z.ZodNumber;
|
|
672
|
+
totalTrafficValue: z.ZodNumber;
|
|
673
|
+
}, z.core.$loose>;
|
|
674
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
675
|
+
readonly domain: z.ZodString;
|
|
676
|
+
readonly metrics: z.ZodObject<{
|
|
677
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
678
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
679
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
680
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
681
|
+
}, z.core.$strip>;
|
|
682
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
683
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
684
|
+
readonly metrics: z.ZodObject<{
|
|
685
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
686
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
687
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
688
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
689
|
+
}, z.core.$strip>;
|
|
690
|
+
}, z.core.$strip>>;
|
|
691
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
692
|
+
}, z.core.$strip>>;
|
|
693
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
694
|
+
readonly domain: z.ZodString;
|
|
695
|
+
readonly discovery: z.ZodEnum<{
|
|
696
|
+
automatic: "automatic";
|
|
697
|
+
manual: "manual";
|
|
698
|
+
unknown: "unknown";
|
|
699
|
+
}>;
|
|
700
|
+
readonly metrics: z.ZodObject<{
|
|
701
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
702
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
703
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
704
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
705
|
+
}, z.core.$strip>;
|
|
706
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
707
|
+
readonly keyword: z.ZodString;
|
|
708
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
709
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
710
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
711
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
712
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
713
|
+
}, z.core.$strip>>;
|
|
714
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
715
|
+
readonly keyword: z.ZodString;
|
|
716
|
+
readonly yourPosition: z.ZodNumber;
|
|
717
|
+
readonly theirPosition: z.ZodNumber;
|
|
718
|
+
readonly volume: z.ZodNumber;
|
|
719
|
+
}, z.core.$strip>>;
|
|
720
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
721
|
+
readonly keyword: z.ZodString;
|
|
722
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
723
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
724
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
725
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
726
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
727
|
+
}, z.core.$strip>>;
|
|
728
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
729
|
+
readonly keyword: z.ZodString;
|
|
730
|
+
readonly yourPosition: z.ZodNumber;
|
|
731
|
+
readonly theirPosition: z.ZodNumber;
|
|
732
|
+
readonly volume: z.ZodNumber;
|
|
733
|
+
}, z.core.$strip>>;
|
|
734
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
735
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
736
|
+
readonly metrics: z.ZodObject<{
|
|
737
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
738
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
739
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
740
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
741
|
+
}, z.core.$strip>;
|
|
742
|
+
}, z.core.$strip>>;
|
|
743
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
744
|
+
}, z.core.$strip>>;
|
|
745
|
+
}, z.core.$strip>;
|
|
746
|
+
meta: z.ZodObject<{
|
|
747
|
+
requestId: z.ZodString;
|
|
748
|
+
version: z.ZodLiteral<"1.0">;
|
|
749
|
+
}, z.core.$loose>;
|
|
750
|
+
}, z.core.$strip>>;
|
|
751
|
+
};
|
|
752
|
+
readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "contract_violation", "internal_error"];
|
|
753
|
+
readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
754
|
+
readonly error: z.ZodObject<{
|
|
755
|
+
code: z.ZodEnum<{
|
|
756
|
+
auth_expired: "auth_expired";
|
|
757
|
+
conflict: "conflict";
|
|
758
|
+
contract_violation: "contract_violation";
|
|
759
|
+
entitlement_required: "entitlement_required";
|
|
760
|
+
forbidden: "forbidden";
|
|
761
|
+
internal_error: "internal_error";
|
|
762
|
+
invalid_request: "invalid_request";
|
|
763
|
+
not_found: "not_found";
|
|
764
|
+
provider_unavailable: "provider_unavailable";
|
|
765
|
+
quota_exhausted: "quota_exhausted";
|
|
766
|
+
rate_limited: "rate_limited";
|
|
767
|
+
site_ambiguous: "site_ambiguous";
|
|
768
|
+
stale_evidence: "stale_evidence";
|
|
769
|
+
unauthorized: "unauthorized";
|
|
770
|
+
}>;
|
|
771
|
+
message: z.ZodString;
|
|
772
|
+
requestId: z.ZodString;
|
|
773
|
+
retryable: z.ZodBoolean;
|
|
774
|
+
details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
775
|
+
}, z.core.$strict>;
|
|
776
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
777
|
+
readonly error: z.ZodObject<{
|
|
778
|
+
code: z.ZodEnum<{
|
|
779
|
+
auth_expired: "auth_expired";
|
|
780
|
+
conflict: "conflict";
|
|
781
|
+
contract_violation: "contract_violation";
|
|
782
|
+
entitlement_required: "entitlement_required";
|
|
783
|
+
forbidden: "forbidden";
|
|
784
|
+
internal_error: "internal_error";
|
|
785
|
+
invalid_request: "invalid_request";
|
|
786
|
+
not_found: "not_found";
|
|
787
|
+
provider_unavailable: "provider_unavailable";
|
|
788
|
+
quota_exhausted: "quota_exhausted";
|
|
789
|
+
rate_limited: "rate_limited";
|
|
790
|
+
site_ambiguous: "site_ambiguous";
|
|
791
|
+
stale_evidence: "stale_evidence";
|
|
792
|
+
unauthorized: "unauthorized";
|
|
793
|
+
}>;
|
|
794
|
+
message: z.ZodString;
|
|
795
|
+
requestId: z.ZodString;
|
|
796
|
+
retryable: z.ZodBoolean;
|
|
797
|
+
details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
798
|
+
}, z.core.$loose>;
|
|
799
|
+
}, z.core.$strip>>;
|
|
800
|
+
readonly resources: {
|
|
801
|
+
readonly reads: readonly [{
|
|
802
|
+
readonly type: 'site.research';
|
|
803
|
+
readonly idFrom: 'params.siteId';
|
|
804
|
+
}];
|
|
805
|
+
readonly changes: readonly [];
|
|
806
|
+
};
|
|
807
|
+
readonly policy: {
|
|
808
|
+
readonly rate: {
|
|
809
|
+
readonly name: 'public-v1-fixed-window';
|
|
810
|
+
readonly limit: 50;
|
|
811
|
+
readonly windowSeconds: 60;
|
|
812
|
+
};
|
|
813
|
+
readonly idempotency: {
|
|
814
|
+
readonly _tag: 'none';
|
|
815
|
+
};
|
|
816
|
+
readonly entitlement: null;
|
|
817
|
+
readonly meter: null;
|
|
818
|
+
};
|
|
819
|
+
readonly lifecycle: {
|
|
820
|
+
readonly introduced: '1.0.0';
|
|
821
|
+
};
|
|
822
|
+
readonly docs: {
|
|
823
|
+
readonly summary: 'Get stored Site Research';
|
|
824
|
+
readonly description: 'Returns retained competitor and keyword-gap evidence already collected for the Site. It never starts provider work and does not consume metered units.';
|
|
825
|
+
readonly tags: readonly ["Research"];
|
|
826
|
+
readonly examples: readonly [{
|
|
827
|
+
readonly request: {
|
|
828
|
+
readonly params: {
|
|
829
|
+
readonly siteId: 'site_01JXYZ';
|
|
830
|
+
};
|
|
831
|
+
};
|
|
832
|
+
readonly response: {
|
|
833
|
+
readonly status: 200;
|
|
834
|
+
readonly body: {
|
|
835
|
+
readonly data: {
|
|
836
|
+
readonly evidence: {
|
|
837
|
+
readonly _tag: 'stored';
|
|
838
|
+
readonly provider: 'dataforseo';
|
|
839
|
+
readonly collectedAt: null;
|
|
840
|
+
};
|
|
841
|
+
readonly summary: {
|
|
842
|
+
readonly competitorCount: 0;
|
|
843
|
+
readonly quickWins: 0;
|
|
844
|
+
readonly totalSharedKeywords: 0;
|
|
845
|
+
readonly totalTrafficValue: 0;
|
|
846
|
+
};
|
|
847
|
+
readonly subject: null;
|
|
848
|
+
readonly competitors: readonly [];
|
|
849
|
+
};
|
|
850
|
+
readonly meta: {
|
|
851
|
+
readonly requestId: 'req_01JXYZ';
|
|
852
|
+
readonly version: '1.0';
|
|
853
|
+
};
|
|
854
|
+
};
|
|
855
|
+
};
|
|
856
|
+
}];
|
|
857
|
+
};
|
|
858
|
+
};
|
|
859
|
+
export declare const researchV1Registry: import("./core.js").PublicV1Registry<{
|
|
860
|
+
readonly overview: {
|
|
861
|
+
readonly id: 'research.overview';
|
|
862
|
+
readonly method: 'GET';
|
|
863
|
+
readonly path: '/api/v1/sites/{siteId}/research';
|
|
864
|
+
readonly visibility: 'public';
|
|
865
|
+
readonly semantics: {
|
|
866
|
+
readonly kind: 'query';
|
|
867
|
+
readonly sideEffects: 'none';
|
|
868
|
+
readonly retry: 'idempotent';
|
|
869
|
+
readonly readConsistency: 'primary';
|
|
870
|
+
};
|
|
871
|
+
readonly auth: {
|
|
872
|
+
readonly credentials: readonly ["session", "api_token"];
|
|
873
|
+
readonly scopes: readonly ["research:read"];
|
|
874
|
+
readonly minimumRole: 'viewer';
|
|
875
|
+
readonly ownership: 'site';
|
|
876
|
+
};
|
|
877
|
+
readonly request: {
|
|
878
|
+
readonly params: z.ZodObject<{
|
|
879
|
+
siteId: z.ZodString;
|
|
880
|
+
}, z.core.$strict>;
|
|
881
|
+
readonly query: null;
|
|
882
|
+
readonly headers: null;
|
|
883
|
+
readonly body: null;
|
|
884
|
+
};
|
|
885
|
+
readonly responses: {
|
|
886
|
+
readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
887
|
+
data: z.ZodObject<{
|
|
888
|
+
readonly evidence: z.ZodObject<{
|
|
889
|
+
_tag: z.ZodLiteral<"stored">;
|
|
890
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
891
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
892
|
+
}, z.core.$strict>;
|
|
893
|
+
readonly summary: z.ZodObject<{
|
|
894
|
+
competitorCount: z.ZodNumber;
|
|
895
|
+
quickWins: z.ZodNumber;
|
|
896
|
+
totalSharedKeywords: z.ZodNumber;
|
|
897
|
+
totalTrafficValue: z.ZodNumber;
|
|
898
|
+
}, z.core.$strict>;
|
|
899
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
900
|
+
readonly domain: z.ZodString;
|
|
901
|
+
readonly metrics: z.ZodObject<{
|
|
902
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
903
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
904
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
905
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
906
|
+
}, z.core.$strip>;
|
|
907
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
908
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
909
|
+
readonly metrics: z.ZodObject<{
|
|
910
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
911
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
912
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
913
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
914
|
+
}, z.core.$strip>;
|
|
915
|
+
}, z.core.$strip>>;
|
|
916
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
917
|
+
}, z.core.$strip>>;
|
|
918
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
919
|
+
readonly domain: z.ZodString;
|
|
920
|
+
readonly discovery: z.ZodEnum<{
|
|
921
|
+
automatic: "automatic";
|
|
922
|
+
manual: "manual";
|
|
923
|
+
unknown: "unknown";
|
|
924
|
+
}>;
|
|
925
|
+
readonly metrics: z.ZodObject<{
|
|
926
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
927
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
928
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
929
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
930
|
+
}, z.core.$strip>;
|
|
931
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
932
|
+
readonly keyword: z.ZodString;
|
|
933
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
934
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
935
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
936
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
937
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
938
|
+
}, z.core.$strip>>;
|
|
939
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
940
|
+
readonly keyword: z.ZodString;
|
|
941
|
+
readonly yourPosition: z.ZodNumber;
|
|
942
|
+
readonly theirPosition: z.ZodNumber;
|
|
943
|
+
readonly volume: z.ZodNumber;
|
|
944
|
+
}, z.core.$strip>>;
|
|
945
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
946
|
+
readonly keyword: z.ZodString;
|
|
947
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
948
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
949
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
950
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
951
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
952
|
+
}, z.core.$strip>>;
|
|
953
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
954
|
+
readonly keyword: z.ZodString;
|
|
955
|
+
readonly yourPosition: z.ZodNumber;
|
|
956
|
+
readonly theirPosition: z.ZodNumber;
|
|
957
|
+
readonly volume: z.ZodNumber;
|
|
958
|
+
}, z.core.$strip>>;
|
|
959
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
960
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
961
|
+
readonly metrics: z.ZodObject<{
|
|
962
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
963
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
964
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
965
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
966
|
+
}, z.core.$strip>;
|
|
967
|
+
}, z.core.$strip>>;
|
|
968
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
969
|
+
}, z.core.$strip>>;
|
|
970
|
+
}, z.core.$strip>;
|
|
971
|
+
meta: z.ZodObject<{
|
|
972
|
+
requestId: z.ZodString;
|
|
973
|
+
version: z.ZodLiteral<"1.0">;
|
|
974
|
+
}, z.core.$strict>;
|
|
975
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
976
|
+
data: z.ZodObject<{
|
|
977
|
+
readonly evidence: z.ZodObject<{
|
|
978
|
+
_tag: z.ZodLiteral<"stored">;
|
|
979
|
+
provider: z.ZodLiteral<"dataforseo">;
|
|
980
|
+
collectedAt: z.ZodNullable<z.ZodString>;
|
|
981
|
+
}, z.core.$loose>;
|
|
982
|
+
readonly summary: z.ZodObject<{
|
|
983
|
+
competitorCount: z.ZodNumber;
|
|
984
|
+
quickWins: z.ZodNumber;
|
|
985
|
+
totalSharedKeywords: z.ZodNumber;
|
|
986
|
+
totalTrafficValue: z.ZodNumber;
|
|
987
|
+
}, z.core.$loose>;
|
|
988
|
+
readonly subject: z.ZodNullable<z.ZodObject<{
|
|
989
|
+
readonly domain: z.ZodString;
|
|
990
|
+
readonly metrics: z.ZodObject<{
|
|
991
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
992
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
993
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
994
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
995
|
+
}, z.core.$strip>;
|
|
996
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
997
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
998
|
+
readonly metrics: z.ZodObject<{
|
|
999
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
1000
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
1001
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
1002
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
1003
|
+
}, z.core.$strip>;
|
|
1004
|
+
}, z.core.$strip>>;
|
|
1005
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
1006
|
+
}, z.core.$strip>>;
|
|
1007
|
+
readonly competitors: z.ZodArray<z.ZodObject<{
|
|
1008
|
+
readonly domain: z.ZodString;
|
|
1009
|
+
readonly discovery: z.ZodEnum<{
|
|
1010
|
+
automatic: "automatic";
|
|
1011
|
+
manual: "manual";
|
|
1012
|
+
unknown: "unknown";
|
|
1013
|
+
}>;
|
|
1014
|
+
readonly metrics: z.ZodObject<{
|
|
1015
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
1016
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
1017
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
1018
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
1019
|
+
}, z.core.$strip>;
|
|
1020
|
+
readonly topKeywords: z.ZodArray<z.ZodObject<{
|
|
1021
|
+
readonly keyword: z.ZodString;
|
|
1022
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
1023
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
1024
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
1025
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
1026
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
1027
|
+
}, z.core.$strip>>;
|
|
1028
|
+
readonly sharedKeywords: z.ZodArray<z.ZodObject<{
|
|
1029
|
+
readonly keyword: z.ZodString;
|
|
1030
|
+
readonly yourPosition: z.ZodNumber;
|
|
1031
|
+
readonly theirPosition: z.ZodNumber;
|
|
1032
|
+
readonly volume: z.ZodNumber;
|
|
1033
|
+
}, z.core.$strip>>;
|
|
1034
|
+
readonly keywordGaps: z.ZodArray<z.ZodObject<{
|
|
1035
|
+
readonly keyword: z.ZodString;
|
|
1036
|
+
readonly position: z.ZodNullable<z.ZodNumber>;
|
|
1037
|
+
readonly volume: z.ZodNullable<z.ZodNumber>;
|
|
1038
|
+
readonly traffic: z.ZodNullable<z.ZodNumber>;
|
|
1039
|
+
readonly url: z.ZodNullable<z.ZodString>;
|
|
1040
|
+
readonly intent: z.ZodNullable<z.ZodString>;
|
|
1041
|
+
}, z.core.$strip>>;
|
|
1042
|
+
readonly quickWins: z.ZodArray<z.ZodObject<{
|
|
1043
|
+
readonly keyword: z.ZodString;
|
|
1044
|
+
readonly yourPosition: z.ZodNumber;
|
|
1045
|
+
readonly theirPosition: z.ZodNumber;
|
|
1046
|
+
readonly volume: z.ZodNumber;
|
|
1047
|
+
}, z.core.$strip>>;
|
|
1048
|
+
readonly history: z.ZodArray<z.ZodObject<{
|
|
1049
|
+
readonly observedAt: z.ZodNullable<z.ZodString>;
|
|
1050
|
+
readonly metrics: z.ZodObject<{
|
|
1051
|
+
readonly organicTraffic: z.ZodNullable<z.ZodNumber>;
|
|
1052
|
+
readonly totalKeywords: z.ZodNullable<z.ZodNumber>;
|
|
1053
|
+
readonly keywordFootprint: z.ZodNullable<z.ZodNumber>;
|
|
1054
|
+
readonly trafficValue: z.ZodNullable<z.ZodNumber>;
|
|
1055
|
+
}, z.core.$strip>;
|
|
1056
|
+
}, z.core.$strip>>;
|
|
1057
|
+
readonly collectedAt: z.ZodNullable<z.ZodString>;
|
|
1058
|
+
}, z.core.$strip>>;
|
|
1059
|
+
}, z.core.$strip>;
|
|
1060
|
+
meta: z.ZodObject<{
|
|
1061
|
+
requestId: z.ZodString;
|
|
1062
|
+
version: z.ZodLiteral<"1.0">;
|
|
1063
|
+
}, z.core.$loose>;
|
|
1064
|
+
}, z.core.$strip>>;
|
|
1065
|
+
};
|
|
1066
|
+
readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "contract_violation", "internal_error"];
|
|
1067
|
+
readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
1068
|
+
readonly error: z.ZodObject<{
|
|
1069
|
+
code: z.ZodEnum<{
|
|
1070
|
+
auth_expired: "auth_expired";
|
|
1071
|
+
conflict: "conflict";
|
|
1072
|
+
contract_violation: "contract_violation";
|
|
1073
|
+
entitlement_required: "entitlement_required";
|
|
1074
|
+
forbidden: "forbidden";
|
|
1075
|
+
internal_error: "internal_error";
|
|
1076
|
+
invalid_request: "invalid_request";
|
|
1077
|
+
not_found: "not_found";
|
|
1078
|
+
provider_unavailable: "provider_unavailable";
|
|
1079
|
+
quota_exhausted: "quota_exhausted";
|
|
1080
|
+
rate_limited: "rate_limited";
|
|
1081
|
+
site_ambiguous: "site_ambiguous";
|
|
1082
|
+
stale_evidence: "stale_evidence";
|
|
1083
|
+
unauthorized: "unauthorized";
|
|
1084
|
+
}>;
|
|
1085
|
+
message: z.ZodString;
|
|
1086
|
+
requestId: z.ZodString;
|
|
1087
|
+
retryable: z.ZodBoolean;
|
|
1088
|
+
details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
1089
|
+
}, z.core.$strict>;
|
|
1090
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
1091
|
+
readonly error: z.ZodObject<{
|
|
1092
|
+
code: z.ZodEnum<{
|
|
1093
|
+
auth_expired: "auth_expired";
|
|
1094
|
+
conflict: "conflict";
|
|
1095
|
+
contract_violation: "contract_violation";
|
|
1096
|
+
entitlement_required: "entitlement_required";
|
|
1097
|
+
forbidden: "forbidden";
|
|
1098
|
+
internal_error: "internal_error";
|
|
1099
|
+
invalid_request: "invalid_request";
|
|
1100
|
+
not_found: "not_found";
|
|
1101
|
+
provider_unavailable: "provider_unavailable";
|
|
1102
|
+
quota_exhausted: "quota_exhausted";
|
|
1103
|
+
rate_limited: "rate_limited";
|
|
1104
|
+
site_ambiguous: "site_ambiguous";
|
|
1105
|
+
stale_evidence: "stale_evidence";
|
|
1106
|
+
unauthorized: "unauthorized";
|
|
1107
|
+
}>;
|
|
1108
|
+
message: z.ZodString;
|
|
1109
|
+
requestId: z.ZodString;
|
|
1110
|
+
retryable: z.ZodBoolean;
|
|
1111
|
+
details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
1112
|
+
}, z.core.$loose>;
|
|
1113
|
+
}, z.core.$strip>>;
|
|
1114
|
+
readonly resources: {
|
|
1115
|
+
readonly reads: readonly [{
|
|
1116
|
+
readonly type: 'site.research';
|
|
1117
|
+
readonly idFrom: 'params.siteId';
|
|
1118
|
+
}];
|
|
1119
|
+
readonly changes: readonly [];
|
|
1120
|
+
};
|
|
1121
|
+
readonly policy: {
|
|
1122
|
+
readonly rate: {
|
|
1123
|
+
readonly name: 'public-v1-fixed-window';
|
|
1124
|
+
readonly limit: 50;
|
|
1125
|
+
readonly windowSeconds: 60;
|
|
1126
|
+
};
|
|
1127
|
+
readonly idempotency: {
|
|
1128
|
+
readonly _tag: 'none';
|
|
1129
|
+
};
|
|
1130
|
+
readonly entitlement: null;
|
|
1131
|
+
readonly meter: null;
|
|
1132
|
+
};
|
|
1133
|
+
readonly lifecycle: {
|
|
1134
|
+
readonly introduced: '1.0.0';
|
|
1135
|
+
};
|
|
1136
|
+
readonly docs: {
|
|
1137
|
+
readonly summary: 'Get stored Site Research';
|
|
1138
|
+
readonly description: 'Returns retained competitor and keyword-gap evidence already collected for the Site. It never starts provider work and does not consume metered units.';
|
|
1139
|
+
readonly tags: readonly ["Research"];
|
|
1140
|
+
readonly examples: readonly [{
|
|
1141
|
+
readonly request: {
|
|
1142
|
+
readonly params: {
|
|
1143
|
+
readonly siteId: 'site_01JXYZ';
|
|
1144
|
+
};
|
|
1145
|
+
};
|
|
1146
|
+
readonly response: {
|
|
1147
|
+
readonly status: 200;
|
|
1148
|
+
readonly body: {
|
|
1149
|
+
readonly data: {
|
|
1150
|
+
readonly evidence: {
|
|
1151
|
+
readonly _tag: 'stored';
|
|
1152
|
+
readonly provider: 'dataforseo';
|
|
1153
|
+
readonly collectedAt: null;
|
|
1154
|
+
};
|
|
1155
|
+
readonly summary: {
|
|
1156
|
+
readonly competitorCount: 0;
|
|
1157
|
+
readonly quickWins: 0;
|
|
1158
|
+
readonly totalSharedKeywords: 0;
|
|
1159
|
+
readonly totalTrafficValue: 0;
|
|
1160
|
+
};
|
|
1161
|
+
readonly subject: null;
|
|
1162
|
+
readonly competitors: readonly [];
|
|
1163
|
+
};
|
|
1164
|
+
readonly meta: {
|
|
1165
|
+
readonly requestId: 'req_01JXYZ';
|
|
1166
|
+
readonly version: '1.0';
|
|
1167
|
+
};
|
|
1168
|
+
};
|
|
1169
|
+
};
|
|
1170
|
+
}];
|
|
1171
|
+
};
|
|
1172
|
+
};
|
|
1173
|
+
}>;
|