@nuxtseo/protocol 0.4.1 → 0.5.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/v1/actions.d.ts +40 -0
- package/dist/v1/actions.js +11 -1
- package/dist/v1/backlinks.d.ts +405 -6
- package/dist/v1/backlinks.js +81 -3
- package/dist/v1/gsc.d.ts +145 -29
- package/dist/v1/gsc.js +15 -3
- package/dist/v1/sitemaps.d.ts +42 -0
- package/dist/v1/sites.d.ts +187 -19
- package/dist/v1/sites.js +30 -8
- package/generated/openapi.v1.json +1 -1
- package/package.json +3 -3
package/dist/v1/gsc.js
CHANGED
|
@@ -342,12 +342,24 @@ const diagnosticsSummaryDataSchema = defineResponseObject({
|
|
|
342
342
|
totalUrls: schema.number().int().nonnegative(),
|
|
343
343
|
indexed: schema.number().int().nonnegative(),
|
|
344
344
|
asOf: schema.string().datetime().nullable(),
|
|
345
|
+
/** Where `asOf` came from: `rollup` build time, `capture` (when gscdump counted the verdicts), or the `newest-check` URL inspection. Null when the age is unknown. */
|
|
346
|
+
asOfSource: schema.enum(['rollup', 'capture', 'newest-check']).nullable(),
|
|
347
|
+
/** The oldest URL inspection behind these counts. With `asOf` it bounds the evidence age. Null when unknown. */
|
|
348
|
+
oldestCheckAt: schema.string().datetime().nullable(),
|
|
349
|
+
/** Share of the counted verdicts older than 7 and 30 days when `asOf` was set. Null when gscdump did not measure verdict age. */
|
|
350
|
+
verdictFreshness: schema.object({ olderThan7dPercent: schema.number().min(0).max(100), olderThan30dPercent: schema.number().min(0).max(100) }).nullable(),
|
|
345
351
|
issues: schema.array(issueSchema.producer),
|
|
346
352
|
}, {
|
|
347
353
|
view: schema.literal('summary'),
|
|
348
354
|
totalUrls: schema.number().int().nonnegative(),
|
|
349
355
|
indexed: schema.number().int().nonnegative(),
|
|
350
356
|
asOf: schema.string().datetime().nullable(),
|
|
357
|
+
/** Where `asOf` came from: `rollup` build time, `capture` (when gscdump counted the verdicts), or the `newest-check` URL inspection. Null when the age is unknown. */
|
|
358
|
+
asOfSource: schema.enum(['rollup', 'capture', 'newest-check']).nullable(),
|
|
359
|
+
/** The oldest URL inspection behind these counts. With `asOf` it bounds the evidence age. Null when unknown. */
|
|
360
|
+
oldestCheckAt: schema.string().datetime().nullable(),
|
|
361
|
+
/** Share of the counted verdicts older than 7 and 30 days when `asOf` was set. Null when gscdump did not measure verdict age. */
|
|
362
|
+
verdictFreshness: schema.object({ olderThan7dPercent: schema.number().min(0).max(100), olderThan30dPercent: schema.number().min(0).max(100) }).nullable(),
|
|
351
363
|
issues: schema.array(issueSchema.client),
|
|
352
364
|
});
|
|
353
365
|
const diagnosticsUrlSchema = defineResponseObject({
|
|
@@ -572,7 +584,7 @@ export const indexingDiagnosticsReadOperation = defineOperation({
|
|
|
572
584
|
summary: 'Diagnose Site indexing',
|
|
573
585
|
description: 'Returns indexed coverage and issue counts, or one filtered page of affected URLs, from retained Search Console evidence.',
|
|
574
586
|
tags: ['Sites', 'Search', 'Indexing'],
|
|
575
|
-
examples: [{ request: { params: { siteId: 'site_01JXYZ' }, query: { view: 'summary' } }, response: { status: 200, body: { data: { view: 'summary', totalUrls: 100, indexed: 92, asOf: '2026-08-10T00:00:00.000Z', issues: [] }, meta: { requestId: 'req_01JXYZ', version: '1.0' } } } }],
|
|
587
|
+
examples: [{ request: { params: { siteId: 'site_01JXYZ' }, query: { view: 'summary' } }, response: { status: 200, body: { data: { view: 'summary', totalUrls: 100, indexed: 92, asOf: '2026-08-10T00:00:00.000Z', asOfSource: 'newest-check', oldestCheckAt: '2026-07-01T00:00:00.000Z', verdictFreshness: { olderThan7dPercent: 87.4, olderThan30dPercent: 60.5 }, issues: [] }, meta: { requestId: 'req_01JXYZ', version: '1.0' } } } }],
|
|
576
588
|
},
|
|
577
589
|
});
|
|
578
590
|
export const indexingHistoryReadOperation = defineOperation({
|
|
@@ -663,7 +675,7 @@ const cohortBaselineShape = {
|
|
|
663
675
|
};
|
|
664
676
|
const cohortCoverageShape = {
|
|
665
677
|
analysed: schema.number().int().nonnegative(),
|
|
666
|
-
|
|
678
|
+
notIndexedNotInCrawl: schema.number().int().nonnegative(),
|
|
667
679
|
excludedFragments: schema.number().int().nonnegative(),
|
|
668
680
|
};
|
|
669
681
|
/**
|
|
@@ -759,7 +771,7 @@ export const indexCohortsReadOperation = defineOperation({
|
|
|
759
771
|
message: null,
|
|
760
772
|
asOf: '2026-09-01T00:00:00.000Z',
|
|
761
773
|
baseline: { pages: 1200, notIndexed: 180, notIndexedPercent: 15 },
|
|
762
|
-
coverage: { analysed: 1200,
|
|
774
|
+
coverage: { analysed: 1200, notIndexedNotInCrawl: 40, excludedFragments: 2 },
|
|
763
775
|
method: 'Wilson score interval per family against its own complement, Bonferroni-corrected across 9 tested families (critical value z=2.77).',
|
|
764
776
|
familiesTested: 9,
|
|
765
777
|
established: [{
|
package/dist/v1/sitemaps.d.ts
CHANGED
|
@@ -23,6 +23,13 @@ export declare const siteSitemapsResponseSchema: import("./core.js").CompatibleR
|
|
|
23
23
|
lastError: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
24
24
|
isPending: z.ZodOptional<z.ZodBoolean>;
|
|
25
25
|
fetchedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
26
|
+
feed: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
27
|
+
_tag: z.ZodLiteral<"counted">;
|
|
28
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
29
|
+
_tag: z.ZodLiteral<"dropped">;
|
|
30
|
+
status: z.ZodUnion<readonly [z.ZodLiteral<404>, z.ZodLiteral<410>]>;
|
|
31
|
+
since: z.ZodNumber;
|
|
32
|
+
}, z.core.$strict>], "_tag">>;
|
|
26
33
|
}, z.core.$loose>>;
|
|
27
34
|
history: z.ZodArray<z.ZodObject<{
|
|
28
35
|
date: z.ZodString;
|
|
@@ -81,6 +88,13 @@ export declare const siteSitemapsResponseSchema: import("./core.js").CompatibleR
|
|
|
81
88
|
lastError: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
82
89
|
isPending: z.ZodOptional<z.ZodBoolean>;
|
|
83
90
|
fetchedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
91
|
+
feed: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
92
|
+
_tag: z.ZodLiteral<"counted">;
|
|
93
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
94
|
+
_tag: z.ZodLiteral<"dropped">;
|
|
95
|
+
status: z.ZodUnion<readonly [z.ZodLiteral<404>, z.ZodLiteral<410>]>;
|
|
96
|
+
since: z.ZodNumber;
|
|
97
|
+
}, z.core.$strict>], "_tag">>;
|
|
84
98
|
}, z.core.$loose>>;
|
|
85
99
|
history: z.ZodArray<z.ZodObject<{
|
|
86
100
|
date: z.ZodString;
|
|
@@ -271,6 +285,13 @@ export declare const siteSitemapsListOperation: {
|
|
|
271
285
|
lastError: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
272
286
|
isPending: z.ZodOptional<z.ZodBoolean>;
|
|
273
287
|
fetchedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
288
|
+
feed: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
289
|
+
_tag: z.ZodLiteral<"counted">;
|
|
290
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
291
|
+
_tag: z.ZodLiteral<"dropped">;
|
|
292
|
+
status: z.ZodUnion<readonly [z.ZodLiteral<404>, z.ZodLiteral<410>]>;
|
|
293
|
+
since: z.ZodNumber;
|
|
294
|
+
}, z.core.$strict>], "_tag">>;
|
|
274
295
|
}, z.core.$loose>>;
|
|
275
296
|
history: z.ZodArray<z.ZodObject<{
|
|
276
297
|
date: z.ZodString;
|
|
@@ -329,6 +350,13 @@ export declare const siteSitemapsListOperation: {
|
|
|
329
350
|
lastError: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
330
351
|
isPending: z.ZodOptional<z.ZodBoolean>;
|
|
331
352
|
fetchedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
353
|
+
feed: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
354
|
+
_tag: z.ZodLiteral<"counted">;
|
|
355
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
356
|
+
_tag: z.ZodLiteral<"dropped">;
|
|
357
|
+
status: z.ZodUnion<readonly [z.ZodLiteral<404>, z.ZodLiteral<410>]>;
|
|
358
|
+
since: z.ZodNumber;
|
|
359
|
+
}, z.core.$strict>], "_tag">>;
|
|
332
360
|
}, z.core.$loose>>;
|
|
333
361
|
history: z.ZodArray<z.ZodObject<{
|
|
334
362
|
date: z.ZodString;
|
|
@@ -907,6 +935,13 @@ export declare const sitemapsV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
907
935
|
lastError: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
908
936
|
isPending: z.ZodOptional<z.ZodBoolean>;
|
|
909
937
|
fetchedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
938
|
+
feed: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
939
|
+
_tag: z.ZodLiteral<"counted">;
|
|
940
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
941
|
+
_tag: z.ZodLiteral<"dropped">;
|
|
942
|
+
status: z.ZodUnion<readonly [z.ZodLiteral<404>, z.ZodLiteral<410>]>;
|
|
943
|
+
since: z.ZodNumber;
|
|
944
|
+
}, z.core.$strict>], "_tag">>;
|
|
910
945
|
}, z.core.$loose>>;
|
|
911
946
|
history: z.ZodArray<z.ZodObject<{
|
|
912
947
|
date: z.ZodString;
|
|
@@ -965,6 +1000,13 @@ export declare const sitemapsV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
965
1000
|
lastError: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
966
1001
|
isPending: z.ZodOptional<z.ZodBoolean>;
|
|
967
1002
|
fetchedAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
1003
|
+
feed: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
1004
|
+
_tag: z.ZodLiteral<"counted">;
|
|
1005
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
1006
|
+
_tag: z.ZodLiteral<"dropped">;
|
|
1007
|
+
status: z.ZodUnion<readonly [z.ZodLiteral<404>, z.ZodLiteral<410>]>;
|
|
1008
|
+
since: z.ZodNumber;
|
|
1009
|
+
}, z.core.$strict>], "_tag">>;
|
|
968
1010
|
}, z.core.$loose>>;
|
|
969
1011
|
history: z.ZodArray<z.ZodObject<{
|
|
970
1012
|
date: z.ZodString;
|
package/dist/v1/sites.d.ts
CHANGED
|
@@ -10,7 +10,6 @@ export declare const siteMonitoringModeSchema: z.ZodNullable<z.ZodEnum<{
|
|
|
10
10
|
}>>;
|
|
11
11
|
export declare const siteMonitoringStatusSchema: z.ZodEnum<{
|
|
12
12
|
active: "active";
|
|
13
|
-
archived: "archived";
|
|
14
13
|
paused: "paused";
|
|
15
14
|
unconfigured: "unconfigured";
|
|
16
15
|
}>;
|
|
@@ -32,7 +31,6 @@ export declare const siteSummaryProducerSchema: z.ZodObject<{
|
|
|
32
31
|
}>>;
|
|
33
32
|
status: z.ZodEnum<{
|
|
34
33
|
active: "active";
|
|
35
|
-
archived: "archived";
|
|
36
34
|
paused: "paused";
|
|
37
35
|
unconfigured: "unconfigured";
|
|
38
36
|
}>;
|
|
@@ -57,7 +55,6 @@ export declare const siteSummaryClientSchema: z.ZodObject<{
|
|
|
57
55
|
}>>;
|
|
58
56
|
status: z.ZodEnum<{
|
|
59
57
|
active: "active";
|
|
60
|
-
archived: "archived";
|
|
61
58
|
paused: "paused";
|
|
62
59
|
unconfigured: "unconfigured";
|
|
63
60
|
}>;
|
|
@@ -86,7 +83,6 @@ export declare const sitesListDataSchema: import("./core.js").CompatibleResponse
|
|
|
86
83
|
}>>;
|
|
87
84
|
status: z.ZodEnum<{
|
|
88
85
|
active: "active";
|
|
89
|
-
archived: "archived";
|
|
90
86
|
paused: "paused";
|
|
91
87
|
unconfigured: "unconfigured";
|
|
92
88
|
}>;
|
|
@@ -111,7 +107,6 @@ export declare const sitesListDataSchema: import("./core.js").CompatibleResponse
|
|
|
111
107
|
}>>;
|
|
112
108
|
status: z.ZodEnum<{
|
|
113
109
|
active: "active";
|
|
114
|
-
archived: "archived";
|
|
115
110
|
paused: "paused";
|
|
116
111
|
unconfigured: "unconfigured";
|
|
117
112
|
}>;
|
|
@@ -143,7 +138,6 @@ export declare const sitesListDataSchema: import("./core.js").CompatibleResponse
|
|
|
143
138
|
}>>;
|
|
144
139
|
status: z.ZodEnum<{
|
|
145
140
|
active: "active";
|
|
146
|
-
archived: "archived";
|
|
147
141
|
paused: "paused";
|
|
148
142
|
unconfigured: "unconfigured";
|
|
149
143
|
}>;
|
|
@@ -168,7 +162,6 @@ export declare const sitesListDataSchema: import("./core.js").CompatibleResponse
|
|
|
168
162
|
}>>;
|
|
169
163
|
status: z.ZodEnum<{
|
|
170
164
|
active: "active";
|
|
171
|
-
archived: "archived";
|
|
172
165
|
paused: "paused";
|
|
173
166
|
unconfigured: "unconfigured";
|
|
174
167
|
}>;
|
|
@@ -214,7 +207,6 @@ export declare const sitesListResponseSchema: import("./core.js").CompatibleResp
|
|
|
214
207
|
}>>;
|
|
215
208
|
status: z.ZodEnum<{
|
|
216
209
|
active: "active";
|
|
217
|
-
archived: "archived";
|
|
218
210
|
paused: "paused";
|
|
219
211
|
unconfigured: "unconfigured";
|
|
220
212
|
}>;
|
|
@@ -239,7 +231,6 @@ export declare const sitesListResponseSchema: import("./core.js").CompatibleResp
|
|
|
239
231
|
}>>;
|
|
240
232
|
status: z.ZodEnum<{
|
|
241
233
|
active: "active";
|
|
242
|
-
archived: "archived";
|
|
243
234
|
paused: "paused";
|
|
244
235
|
unconfigured: "unconfigured";
|
|
245
236
|
}>;
|
|
@@ -278,7 +269,6 @@ export declare const sitesListResponseSchema: import("./core.js").CompatibleResp
|
|
|
278
269
|
}>>;
|
|
279
270
|
status: z.ZodEnum<{
|
|
280
271
|
active: "active";
|
|
281
|
-
archived: "archived";
|
|
282
272
|
paused: "paused";
|
|
283
273
|
unconfigured: "unconfigured";
|
|
284
274
|
}>;
|
|
@@ -303,7 +293,6 @@ export declare const sitesListResponseSchema: import("./core.js").CompatibleResp
|
|
|
303
293
|
}>>;
|
|
304
294
|
status: z.ZodEnum<{
|
|
305
295
|
active: "active";
|
|
306
|
-
archived: "archived";
|
|
307
296
|
paused: "paused";
|
|
308
297
|
unconfigured: "unconfigured";
|
|
309
298
|
}>;
|
|
@@ -372,7 +361,6 @@ export declare const sitesListOperation: {
|
|
|
372
361
|
}>>;
|
|
373
362
|
status: z.ZodEnum<{
|
|
374
363
|
active: "active";
|
|
375
|
-
archived: "archived";
|
|
376
364
|
paused: "paused";
|
|
377
365
|
unconfigured: "unconfigured";
|
|
378
366
|
}>;
|
|
@@ -397,7 +385,6 @@ export declare const sitesListOperation: {
|
|
|
397
385
|
}>>;
|
|
398
386
|
status: z.ZodEnum<{
|
|
399
387
|
active: "active";
|
|
400
|
-
archived: "archived";
|
|
401
388
|
paused: "paused";
|
|
402
389
|
unconfigured: "unconfigured";
|
|
403
390
|
}>;
|
|
@@ -436,7 +423,6 @@ export declare const sitesListOperation: {
|
|
|
436
423
|
}>>;
|
|
437
424
|
status: z.ZodEnum<{
|
|
438
425
|
active: "active";
|
|
439
|
-
archived: "archived";
|
|
440
426
|
paused: "paused";
|
|
441
427
|
unconfigured: "unconfigured";
|
|
442
428
|
}>;
|
|
@@ -461,7 +447,6 @@ export declare const sitesListOperation: {
|
|
|
461
447
|
}>>;
|
|
462
448
|
status: z.ZodEnum<{
|
|
463
449
|
active: "active";
|
|
464
|
-
archived: "archived";
|
|
465
450
|
paused: "paused";
|
|
466
451
|
unconfigured: "unconfigured";
|
|
467
452
|
}>;
|
|
@@ -608,6 +593,25 @@ export declare const sitesListOperation: {
|
|
|
608
593
|
export declare const siteStatusParamsSchema: z.ZodObject<{
|
|
609
594
|
siteId: z.ZodString;
|
|
610
595
|
}, z.core.$strict>;
|
|
596
|
+
/**
|
|
597
|
+
* The Site-wide verdict. `assessment.aggregate` carries it unchanged, so a
|
|
598
|
+
* reader sees the whole-Site state even when a Route family leads the headline.
|
|
599
|
+
*/
|
|
600
|
+
export declare const siteAggregateVerdictSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
601
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
602
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
603
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
604
|
+
summary: z.ZodString;
|
|
605
|
+
recommendation: z.ZodString;
|
|
606
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
607
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
608
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
609
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
610
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
611
|
+
summary: z.ZodString;
|
|
612
|
+
recommendation: z.ZodString;
|
|
613
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
614
|
+
}, z.core.$strip>>;
|
|
611
615
|
export declare const siteAssessmentSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
|
|
612
616
|
readonly reachStage: z.ZodNullable<z.ZodString>;
|
|
613
617
|
readonly healthStage: z.ZodNullable<z.ZodString>;
|
|
@@ -615,6 +619,24 @@ export declare const siteAssessmentSchema: import("./core.js").CompatibleRespons
|
|
|
615
619
|
readonly summary: z.ZodString;
|
|
616
620
|
readonly recommendation: z.ZodString;
|
|
617
621
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
622
|
+
/**
|
|
623
|
+
* What the headline (`summary`, `recommendation`) describes. `site`: the
|
|
624
|
+
* whole Site. `route-family`: one Route family, a lead to check against
|
|
625
|
+
* `aggregate`. It is `site` whenever health is `quality_rejection` or most
|
|
626
|
+
* tracked URLs are not indexed.
|
|
627
|
+
*/
|
|
628
|
+
readonly scope: z.ZodEnum<{
|
|
629
|
+
"route-family": "route-family";
|
|
630
|
+
site: "site";
|
|
631
|
+
}>;
|
|
632
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
633
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
634
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
635
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
636
|
+
summary: z.ZodString;
|
|
637
|
+
recommendation: z.ZodString;
|
|
638
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
639
|
+
}, z.core.$strip>>;
|
|
618
640
|
}, z.core.$strip>, z.ZodObject<{
|
|
619
641
|
readonly reachStage: z.ZodNullable<z.ZodString>;
|
|
620
642
|
readonly healthStage: z.ZodNullable<z.ZodString>;
|
|
@@ -622,6 +644,18 @@ export declare const siteAssessmentSchema: import("./core.js").CompatibleRespons
|
|
|
622
644
|
readonly summary: z.ZodString;
|
|
623
645
|
readonly recommendation: z.ZodString;
|
|
624
646
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
647
|
+
readonly scope: z.ZodEnum<{
|
|
648
|
+
"route-family": "route-family";
|
|
649
|
+
site: "site";
|
|
650
|
+
}>;
|
|
651
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
652
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
653
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
654
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
655
|
+
summary: z.ZodString;
|
|
656
|
+
recommendation: z.ZodString;
|
|
657
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
658
|
+
}, z.core.$strip>>;
|
|
625
659
|
}, z.core.$strip>>;
|
|
626
660
|
/**
|
|
627
661
|
* The one ranked thing to do next. `kind` says what it is: `connect` asks for a
|
|
@@ -710,6 +744,24 @@ export declare const siteStatusDataSchema: import("./core.js").CompatibleRespons
|
|
|
710
744
|
readonly summary: z.ZodString;
|
|
711
745
|
readonly recommendation: z.ZodString;
|
|
712
746
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
747
|
+
/**
|
|
748
|
+
* What the headline (`summary`, `recommendation`) describes. `site`: the
|
|
749
|
+
* whole Site. `route-family`: one Route family, a lead to check against
|
|
750
|
+
* `aggregate`. It is `site` whenever health is `quality_rejection` or most
|
|
751
|
+
* tracked URLs are not indexed.
|
|
752
|
+
*/
|
|
753
|
+
readonly scope: z.ZodEnum<{
|
|
754
|
+
"route-family": "route-family";
|
|
755
|
+
site: "site";
|
|
756
|
+
}>;
|
|
757
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
758
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
759
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
760
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
761
|
+
summary: z.ZodString;
|
|
762
|
+
recommendation: z.ZodString;
|
|
763
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
764
|
+
}, z.core.$strip>>;
|
|
713
765
|
}, z.core.$strip>>;
|
|
714
766
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
715
767
|
readonly kind: z.ZodEnum<{
|
|
@@ -778,6 +830,18 @@ export declare const siteStatusDataSchema: import("./core.js").CompatibleRespons
|
|
|
778
830
|
readonly summary: z.ZodString;
|
|
779
831
|
readonly recommendation: z.ZodString;
|
|
780
832
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
833
|
+
readonly scope: z.ZodEnum<{
|
|
834
|
+
"route-family": "route-family";
|
|
835
|
+
site: "site";
|
|
836
|
+
}>;
|
|
837
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
838
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
839
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
840
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
841
|
+
summary: z.ZodString;
|
|
842
|
+
recommendation: z.ZodString;
|
|
843
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
844
|
+
}, z.core.$strip>>;
|
|
781
845
|
}, z.core.$strip>>;
|
|
782
846
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
783
847
|
readonly kind: z.ZodEnum<{
|
|
@@ -847,6 +911,24 @@ export declare const siteStatusResponseSchema: import("./core.js").CompatibleRes
|
|
|
847
911
|
readonly summary: z.ZodString;
|
|
848
912
|
readonly recommendation: z.ZodString;
|
|
849
913
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
914
|
+
/**
|
|
915
|
+
* What the headline (`summary`, `recommendation`) describes. `site`: the
|
|
916
|
+
* whole Site. `route-family`: one Route family, a lead to check against
|
|
917
|
+
* `aggregate`. It is `site` whenever health is `quality_rejection` or most
|
|
918
|
+
* tracked URLs are not indexed.
|
|
919
|
+
*/
|
|
920
|
+
readonly scope: z.ZodEnum<{
|
|
921
|
+
"route-family": "route-family";
|
|
922
|
+
site: "site";
|
|
923
|
+
}>;
|
|
924
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
925
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
926
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
927
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
928
|
+
summary: z.ZodString;
|
|
929
|
+
recommendation: z.ZodString;
|
|
930
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
931
|
+
}, z.core.$strip>>;
|
|
850
932
|
}, z.core.$strip>>;
|
|
851
933
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
852
934
|
readonly kind: z.ZodEnum<{
|
|
@@ -921,6 +1003,18 @@ export declare const siteStatusResponseSchema: import("./core.js").CompatibleRes
|
|
|
921
1003
|
readonly summary: z.ZodString;
|
|
922
1004
|
readonly recommendation: z.ZodString;
|
|
923
1005
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
1006
|
+
readonly scope: z.ZodEnum<{
|
|
1007
|
+
"route-family": "route-family";
|
|
1008
|
+
site: "site";
|
|
1009
|
+
}>;
|
|
1010
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
1011
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
1012
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
1013
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
1014
|
+
summary: z.ZodString;
|
|
1015
|
+
recommendation: z.ZodString;
|
|
1016
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
1017
|
+
}, z.core.$strip>>;
|
|
924
1018
|
}, z.core.$strip>>;
|
|
925
1019
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
926
1020
|
readonly kind: z.ZodEnum<{
|
|
@@ -1022,6 +1116,24 @@ export declare const siteStatusOperation: {
|
|
|
1022
1116
|
readonly summary: z.ZodString;
|
|
1023
1117
|
readonly recommendation: z.ZodString;
|
|
1024
1118
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
1119
|
+
/**
|
|
1120
|
+
* What the headline (`summary`, `recommendation`) describes. `site`: the
|
|
1121
|
+
* whole Site. `route-family`: one Route family, a lead to check against
|
|
1122
|
+
* `aggregate`. It is `site` whenever health is `quality_rejection` or most
|
|
1123
|
+
* tracked URLs are not indexed.
|
|
1124
|
+
*/
|
|
1125
|
+
readonly scope: z.ZodEnum<{
|
|
1126
|
+
"route-family": "route-family";
|
|
1127
|
+
site: "site";
|
|
1128
|
+
}>;
|
|
1129
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
1130
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
1131
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
1132
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
1133
|
+
summary: z.ZodString;
|
|
1134
|
+
recommendation: z.ZodString;
|
|
1135
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
1136
|
+
}, z.core.$strip>>;
|
|
1025
1137
|
}, z.core.$strip>>;
|
|
1026
1138
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
1027
1139
|
readonly kind: z.ZodEnum<{
|
|
@@ -1096,6 +1208,18 @@ export declare const siteStatusOperation: {
|
|
|
1096
1208
|
readonly summary: z.ZodString;
|
|
1097
1209
|
readonly recommendation: z.ZodString;
|
|
1098
1210
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
1211
|
+
readonly scope: z.ZodEnum<{
|
|
1212
|
+
"route-family": "route-family";
|
|
1213
|
+
site: "site";
|
|
1214
|
+
}>;
|
|
1215
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
1216
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
1217
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
1218
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
1219
|
+
summary: z.ZodString;
|
|
1220
|
+
recommendation: z.ZodString;
|
|
1221
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
1222
|
+
}, z.core.$strip>>;
|
|
1099
1223
|
}, z.core.$strip>>;
|
|
1100
1224
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
1101
1225
|
readonly kind: z.ZodEnum<{
|
|
@@ -1253,6 +1377,15 @@ export declare const siteStatusOperation: {
|
|
|
1253
1377
|
readonly summary: 'Indexing is slipping on the docs template.';
|
|
1254
1378
|
readonly recommendation: 'Fix the canonical tag on /docs pages.';
|
|
1255
1379
|
readonly assessedAt: '2026-09-04T02:00:00.000Z';
|
|
1380
|
+
readonly scope: 'site';
|
|
1381
|
+
readonly aggregate: {
|
|
1382
|
+
readonly reachStage: 'growing';
|
|
1383
|
+
readonly healthStage: 'at-risk';
|
|
1384
|
+
readonly headlineAxis: 'health';
|
|
1385
|
+
readonly summary: 'Indexing is slipping on the docs template.';
|
|
1386
|
+
readonly recommendation: 'Fix the canonical tag on /docs pages.';
|
|
1387
|
+
readonly assessedAt: '2026-09-04T02:00:00.000Z';
|
|
1388
|
+
};
|
|
1256
1389
|
};
|
|
1257
1390
|
readonly nextAction: {
|
|
1258
1391
|
readonly kind: 'action';
|
|
@@ -1355,7 +1488,6 @@ export declare const sitesV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
1355
1488
|
}>>;
|
|
1356
1489
|
status: z.ZodEnum<{
|
|
1357
1490
|
active: "active";
|
|
1358
|
-
archived: "archived";
|
|
1359
1491
|
paused: "paused";
|
|
1360
1492
|
unconfigured: "unconfigured";
|
|
1361
1493
|
}>;
|
|
@@ -1380,7 +1512,6 @@ export declare const sitesV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
1380
1512
|
}>>;
|
|
1381
1513
|
status: z.ZodEnum<{
|
|
1382
1514
|
active: "active";
|
|
1383
|
-
archived: "archived";
|
|
1384
1515
|
paused: "paused";
|
|
1385
1516
|
unconfigured: "unconfigured";
|
|
1386
1517
|
}>;
|
|
@@ -1419,7 +1550,6 @@ export declare const sitesV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
1419
1550
|
}>>;
|
|
1420
1551
|
status: z.ZodEnum<{
|
|
1421
1552
|
active: "active";
|
|
1422
|
-
archived: "archived";
|
|
1423
1553
|
paused: "paused";
|
|
1424
1554
|
unconfigured: "unconfigured";
|
|
1425
1555
|
}>;
|
|
@@ -1444,7 +1574,6 @@ export declare const sitesV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
1444
1574
|
}>>;
|
|
1445
1575
|
status: z.ZodEnum<{
|
|
1446
1576
|
active: "active";
|
|
1447
|
-
archived: "archived";
|
|
1448
1577
|
paused: "paused";
|
|
1449
1578
|
unconfigured: "unconfigured";
|
|
1450
1579
|
}>;
|
|
@@ -1626,6 +1755,24 @@ export declare const sitesV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
1626
1755
|
readonly summary: z.ZodString;
|
|
1627
1756
|
readonly recommendation: z.ZodString;
|
|
1628
1757
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
1758
|
+
/**
|
|
1759
|
+
* What the headline (`summary`, `recommendation`) describes. `site`: the
|
|
1760
|
+
* whole Site. `route-family`: one Route family, a lead to check against
|
|
1761
|
+
* `aggregate`. It is `site` whenever health is `quality_rejection` or most
|
|
1762
|
+
* tracked URLs are not indexed.
|
|
1763
|
+
*/
|
|
1764
|
+
readonly scope: z.ZodEnum<{
|
|
1765
|
+
"route-family": "route-family";
|
|
1766
|
+
site: "site";
|
|
1767
|
+
}>;
|
|
1768
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
1769
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
1770
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
1771
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
1772
|
+
summary: z.ZodString;
|
|
1773
|
+
recommendation: z.ZodString;
|
|
1774
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
1775
|
+
}, z.core.$strip>>;
|
|
1629
1776
|
}, z.core.$strip>>;
|
|
1630
1777
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
1631
1778
|
readonly kind: z.ZodEnum<{
|
|
@@ -1700,6 +1847,18 @@ export declare const sitesV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
1700
1847
|
readonly summary: z.ZodString;
|
|
1701
1848
|
readonly recommendation: z.ZodString;
|
|
1702
1849
|
readonly assessedAt: z.ZodNullable<z.ZodString>;
|
|
1850
|
+
readonly scope: z.ZodEnum<{
|
|
1851
|
+
"route-family": "route-family";
|
|
1852
|
+
site: "site";
|
|
1853
|
+
}>;
|
|
1854
|
+
readonly aggregate: z.ZodNullable<z.ZodObject<{
|
|
1855
|
+
reachStage: z.ZodNullable<z.ZodString>;
|
|
1856
|
+
healthStage: z.ZodNullable<z.ZodString>;
|
|
1857
|
+
headlineAxis: z.ZodNullable<z.ZodString>;
|
|
1858
|
+
summary: z.ZodString;
|
|
1859
|
+
recommendation: z.ZodString;
|
|
1860
|
+
assessedAt: z.ZodNullable<z.ZodString>;
|
|
1861
|
+
}, z.core.$strip>>;
|
|
1703
1862
|
}, z.core.$strip>>;
|
|
1704
1863
|
readonly nextAction: z.ZodNullable<z.ZodObject<{
|
|
1705
1864
|
readonly kind: z.ZodEnum<{
|
|
@@ -1857,6 +2016,15 @@ export declare const sitesV1Registry: import("./core.js").PublicV1Registry<{
|
|
|
1857
2016
|
readonly summary: 'Indexing is slipping on the docs template.';
|
|
1858
2017
|
readonly recommendation: 'Fix the canonical tag on /docs pages.';
|
|
1859
2018
|
readonly assessedAt: '2026-09-04T02:00:00.000Z';
|
|
2019
|
+
readonly scope: 'site';
|
|
2020
|
+
readonly aggregate: {
|
|
2021
|
+
readonly reachStage: 'growing';
|
|
2022
|
+
readonly healthStage: 'at-risk';
|
|
2023
|
+
readonly headlineAxis: 'health';
|
|
2024
|
+
readonly summary: 'Indexing is slipping on the docs template.';
|
|
2025
|
+
readonly recommendation: 'Fix the canonical tag on /docs pages.';
|
|
2026
|
+
readonly assessedAt: '2026-09-04T02:00:00.000Z';
|
|
2027
|
+
};
|
|
1860
2028
|
};
|
|
1861
2029
|
readonly nextAction: {
|
|
1862
2030
|
readonly kind: 'action';
|
package/dist/v1/sites.js
CHANGED
|
@@ -2,7 +2,7 @@ import { z as schema } from 'zod';
|
|
|
2
2
|
import { defineOperation, defineRegistry, defineResponseObject, defineSuccessEnvelope, publicV1ErrorEnvelope, publicV1MetaClientSchema, publicV1MetaProducerSchema, publicV1PageSchema, publicV1StandardRatePolicy, } from './core.js';
|
|
3
3
|
export const siteSearchConsoleStatusSchema = schema.enum(['connected', 'disconnected', 'action_required']);
|
|
4
4
|
export const siteMonitoringModeSchema = schema.enum(['search_tracking', 'full_monitoring']).nullable();
|
|
5
|
-
export const siteMonitoringStatusSchema = schema.enum(['active', 'paused', '
|
|
5
|
+
export const siteMonitoringStatusSchema = schema.enum(['active', 'paused', 'unconfigured']);
|
|
6
6
|
export const siteSummaryProducerSchema = schema.strictObject({
|
|
7
7
|
id: schema.string().min(1),
|
|
8
8
|
name: schema.string().min(1).nullable(),
|
|
@@ -121,20 +121,33 @@ export const sitesListOperation = defineOperation({
|
|
|
121
121
|
export const siteStatusParamsSchema = schema.strictObject({
|
|
122
122
|
siteId: schema.string().min(1),
|
|
123
123
|
});
|
|
124
|
-
|
|
124
|
+
const siteVerdictShape = {
|
|
125
125
|
reachStage: schema.string().nullable(),
|
|
126
126
|
healthStage: schema.string().nullable(),
|
|
127
127
|
headlineAxis: schema.string().nullable(),
|
|
128
128
|
summary: schema.string(),
|
|
129
129
|
recommendation: schema.string(),
|
|
130
130
|
assessedAt: schema.string().datetime().nullable(),
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* The Site-wide verdict. `assessment.aggregate` carries it unchanged, so a
|
|
134
|
+
* reader sees the whole-Site state even when a Route family leads the headline.
|
|
135
|
+
*/
|
|
136
|
+
export const siteAggregateVerdictSchema = defineResponseObject(siteVerdictShape, siteVerdictShape);
|
|
137
|
+
export const siteAssessmentSchema = defineResponseObject({
|
|
138
|
+
...siteVerdictShape,
|
|
139
|
+
/**
|
|
140
|
+
* What the headline (`summary`, `recommendation`) describes. `site`: the
|
|
141
|
+
* whole Site. `route-family`: one Route family, a lead to check against
|
|
142
|
+
* `aggregate`. It is `site` whenever health is `quality_rejection` or most
|
|
143
|
+
* tracked URLs are not indexed.
|
|
144
|
+
*/
|
|
145
|
+
scope: schema.enum(['site', 'route-family']),
|
|
146
|
+
aggregate: siteAggregateVerdictSchema.producer.nullable(),
|
|
131
147
|
}, {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
summary: schema.string(),
|
|
136
|
-
recommendation: schema.string(),
|
|
137
|
-
assessedAt: schema.string().datetime().nullable(),
|
|
148
|
+
...siteVerdictShape,
|
|
149
|
+
scope: schema.enum(['site', 'route-family']),
|
|
150
|
+
aggregate: siteAggregateVerdictSchema.client.nullable(),
|
|
138
151
|
});
|
|
139
152
|
/**
|
|
140
153
|
* The one ranked thing to do next. `kind` says what it is: `connect` asks for a
|
|
@@ -300,6 +313,15 @@ export const siteStatusOperation = defineOperation({
|
|
|
300
313
|
summary: 'Indexing is slipping on the docs template.',
|
|
301
314
|
recommendation: 'Fix the canonical tag on /docs pages.',
|
|
302
315
|
assessedAt: '2026-09-04T02:00:00.000Z',
|
|
316
|
+
scope: 'site',
|
|
317
|
+
aggregate: {
|
|
318
|
+
reachStage: 'growing',
|
|
319
|
+
healthStage: 'at-risk',
|
|
320
|
+
headlineAxis: 'health',
|
|
321
|
+
summary: 'Indexing is slipping on the docs template.',
|
|
322
|
+
recommendation: 'Fix the canonical tag on /docs pages.',
|
|
323
|
+
assessedAt: '2026-09-04T02:00:00.000Z',
|
|
324
|
+
},
|
|
303
325
|
},
|
|
304
326
|
nextAction: {
|
|
305
327
|
kind: 'action',
|