@gscdump/contracts 3.4.4 → 3.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.
@@ -2,6 +2,7 @@ import { addPartnerTeamMemberSchema, bindPartnerSiteTeamSchema, bindPartnerTeamC
2
2
  import { bingConnectionV1Schemas } from "./bing.mjs";
3
3
  import "./version.mjs";
4
4
  import { HTTP_V1_ERROR_CODES, defineHttpOperation, defineHttpSurface, defineResponseObject, defineSuccessResponse } from "./http-core.mjs";
5
+ import { bingDataQueryV1Schema, bingDataV1Schemas } from "./bing-data.mjs";
5
6
  import { GSCDUMP_REALTIME_ACK_POLICY, GSCDUMP_REALTIME_CLOSE_CODES, GSCDUMP_REALTIME_CONNECTION_POLICY, GSCDUMP_REALTIME_LIMITS, GSCDUMP_REALTIME_PING, GSCDUMP_REALTIME_PONG, GSCDUMP_REALTIME_REPLAY_POLICY, GSCDUMP_REALTIME_SUBPROTOCOL, GSCDUMP_REALTIME_TICKET_AUDIENCE, GSCDUMP_REALTIME_TICKET_ISSUER, GSCDUMP_REALTIME_TICKET_POLICY, GSCDUMP_REALTIME_TICKET_PREFIX, REALTIME_V1_EVENT_SEMANTICS, createRealtimeV1Schemas } from "./realtime.mjs";
6
7
  import { GSCDUMP_V1_ANALYTICS_DIMENSIONS, createGscdumpV1BrowserSchemas } from "./browser.mjs";
7
8
  import { gscdumpV1OperationRoute, gscdumpV1Surface } from "./route-catalog.mjs";
@@ -1185,6 +1186,83 @@ function createGscdumpV1Protocol() {
1185
1186
  }
1186
1187
  }
1187
1188
  }),
1189
+ getSiteBingData: defineHttpOperation({
1190
+ ...gscdumpV1OperationRoute("partner.sites.bing.data.get"),
1191
+ visibility: "public",
1192
+ semantics: {
1193
+ kind: "query",
1194
+ sideEffects: "none",
1195
+ idempotent: true,
1196
+ retry: "idempotent",
1197
+ readConsistency: "primary"
1198
+ },
1199
+ auth: {
1200
+ credentials: ["user_key", "partner_key"],
1201
+ scopes: ["analytics:read"],
1202
+ ownership: [{
1203
+ credential: "user_key",
1204
+ rule: "authorized_site"
1205
+ }, {
1206
+ credential: "partner_key",
1207
+ rule: "authorized_site"
1208
+ }]
1209
+ },
1210
+ request: {
1211
+ params: z.strictObject({ siteId: realtimeSchemas.publicSiteId }),
1212
+ query: bingDataQueryV1Schema,
1213
+ headers: requestHeaders,
1214
+ body: null
1215
+ },
1216
+ responses: { 200: defineSuccessResponse(bingDataV1Schemas, partnerResponseMeta) },
1217
+ errors: partnerSiteErrors,
1218
+ errorResponse: errorEnvelopeSchemas(partnerSiteErrors, realtimeSchemas.publicRequestId),
1219
+ resources: {
1220
+ reads: [{
1221
+ type: "site.analytics",
1222
+ idFrom: "params.siteId"
1223
+ }],
1224
+ changes: []
1225
+ },
1226
+ lifecycle: { introduced: "1.6.0" },
1227
+ docs: {
1228
+ summary: "Read Bing search data",
1229
+ description: "Reads a bounded provider-date range from the latest successful dataset. Ranked rows are not complete Site totals.",
1230
+ tags: ["Analytics"],
1231
+ examples: {
1232
+ request: {
1233
+ params: { siteId: "s_01" },
1234
+ query: {
1235
+ dataset: "traffic",
1236
+ startDate: "2026-08-01",
1237
+ endDate: "2026-08-31",
1238
+ limit: 100,
1239
+ offset: 0
1240
+ }
1241
+ },
1242
+ response: {
1243
+ data: {
1244
+ searchEngine: "bing",
1245
+ siteUrl: "https://example.com/",
1246
+ dataset: "traffic",
1247
+ semantics: "site-totals",
1248
+ sync: { _tag: "missing" },
1249
+ rows: [],
1250
+ pagination: {
1251
+ total: 0,
1252
+ limit: 100,
1253
+ offset: 0,
1254
+ hasMore: false
1255
+ }
1256
+ },
1257
+ meta: {
1258
+ requestId: "req_01",
1259
+ surface: "partner",
1260
+ version: "1.0"
1261
+ }
1262
+ }
1263
+ }
1264
+ }
1265
+ }),
1188
1266
  listSiteBingIndexingEvidence: defineHttpOperation({
1189
1267
  ...gscdumpV1OperationRoute("partner.sites.indexing.bing.evidence.list"),
1190
1268
  visibility: "public",
@@ -51,6 +51,11 @@ declare const GSCDUMP_V1_ROUTE_CATALOG: {
51
51
  readonly method: "GET";
52
52
  readonly template: "/sites/{siteId}/indexing/urls";
53
53
  };
54
+ readonly 'partner.sites.bing.data.get': {
55
+ readonly surface: "partner";
56
+ readonly method: "GET";
57
+ readonly template: "/sites/{siteId}/bing/data";
58
+ };
54
59
  readonly 'partner.sites.indexing.bing.evidence.list': {
55
60
  readonly surface: "partner";
56
61
  readonly method: "GET";
@@ -38,6 +38,11 @@ const GSCDUMP_V1_ROUTE_CATALOG = {
38
38
  method: "GET",
39
39
  template: "/sites/{siteId}/indexing/urls"
40
40
  },
41
+ "partner.sites.bing.data.get": {
42
+ surface: "partner",
43
+ method: "GET",
44
+ template: "/sites/{siteId}/bing/data"
45
+ },
41
46
  "partner.sites.indexing.bing.evidence.list": {
42
47
  surface: "partner",
43
48
  method: "GET",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gscdump/contracts",
3
3
  "type": "module",
4
- "version": "3.4.4",
4
+ "version": "3.5.0",
5
5
  "description": "Shared gscdump.com API, webhook, realtime, and lifecycle contracts.",
6
6
  "author": {
7
7
  "name": "Harlan Wilton",