@wevion/cli 1.0.3459 → 1.0.3465
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/openapi.json +753 -0
- package/package.json +1 -1
package/openapi.json
CHANGED
|
@@ -138066,6 +138066,759 @@
|
|
|
138066
138066
|
}
|
|
138067
138067
|
}
|
|
138068
138068
|
},
|
|
138069
|
+
"/api/v1/gsc/status": {
|
|
138070
|
+
"get": {
|
|
138071
|
+
"operationId": "getGscStatus",
|
|
138072
|
+
"summary": "Get the Google Search Console connection status",
|
|
138073
|
+
"tags": [
|
|
138074
|
+
"gsc"
|
|
138075
|
+
],
|
|
138076
|
+
"description": "Returns whether the workspace has a Search Console read connection, how many sites are matched to it, and when the site list was last read. `configured: false` means the server has no Search Console OAuth credentials or the runtime feature flag is off for this user.",
|
|
138077
|
+
"security": [
|
|
138078
|
+
{
|
|
138079
|
+
"bearerAuth": []
|
|
138080
|
+
}
|
|
138081
|
+
],
|
|
138082
|
+
"responses": {
|
|
138083
|
+
"200": {
|
|
138084
|
+
"description": "Successful response",
|
|
138085
|
+
"content": {
|
|
138086
|
+
"application/json": {
|
|
138087
|
+
"schema": {
|
|
138088
|
+
"additionalProperties": false,
|
|
138089
|
+
"type": "object",
|
|
138090
|
+
"required": [
|
|
138091
|
+
"configured",
|
|
138092
|
+
"connected",
|
|
138093
|
+
"email",
|
|
138094
|
+
"token_status",
|
|
138095
|
+
"last_listed_at",
|
|
138096
|
+
"selected_count"
|
|
138097
|
+
],
|
|
138098
|
+
"properties": {
|
|
138099
|
+
"configured": {
|
|
138100
|
+
"description": "False when the server has no Search Console OAuth credentials or the runtime flag is off.",
|
|
138101
|
+
"type": "boolean"
|
|
138102
|
+
},
|
|
138103
|
+
"connected": {
|
|
138104
|
+
"type": "boolean"
|
|
138105
|
+
},
|
|
138106
|
+
"email": {
|
|
138107
|
+
"anyOf": [
|
|
138108
|
+
{
|
|
138109
|
+
"type": "string"
|
|
138110
|
+
},
|
|
138111
|
+
{
|
|
138112
|
+
"type": "null"
|
|
138113
|
+
}
|
|
138114
|
+
]
|
|
138115
|
+
},
|
|
138116
|
+
"token_status": {
|
|
138117
|
+
"anyOf": [
|
|
138118
|
+
{
|
|
138119
|
+
"type": "string"
|
|
138120
|
+
},
|
|
138121
|
+
{
|
|
138122
|
+
"type": "null"
|
|
138123
|
+
}
|
|
138124
|
+
]
|
|
138125
|
+
},
|
|
138126
|
+
"last_listed_at": {
|
|
138127
|
+
"anyOf": [
|
|
138128
|
+
{
|
|
138129
|
+
"format": "date-time",
|
|
138130
|
+
"type": "string"
|
|
138131
|
+
},
|
|
138132
|
+
{
|
|
138133
|
+
"type": "null"
|
|
138134
|
+
}
|
|
138135
|
+
]
|
|
138136
|
+
},
|
|
138137
|
+
"selected_count": {
|
|
138138
|
+
"description": "Number of sites matched to this workspace.",
|
|
138139
|
+
"type": "integer"
|
|
138140
|
+
}
|
|
138141
|
+
}
|
|
138142
|
+
}
|
|
138143
|
+
}
|
|
138144
|
+
}
|
|
138145
|
+
},
|
|
138146
|
+
"401": {
|
|
138147
|
+
"description": "Unauthorized - missing or invalid bearer token",
|
|
138148
|
+
"content": {
|
|
138149
|
+
"application/json": {
|
|
138150
|
+
"schema": {
|
|
138151
|
+
"additionalProperties": false,
|
|
138152
|
+
"type": "object",
|
|
138153
|
+
"required": [
|
|
138154
|
+
"error"
|
|
138155
|
+
],
|
|
138156
|
+
"properties": {
|
|
138157
|
+
"error": {
|
|
138158
|
+
"type": "string"
|
|
138159
|
+
}
|
|
138160
|
+
}
|
|
138161
|
+
}
|
|
138162
|
+
}
|
|
138163
|
+
}
|
|
138164
|
+
},
|
|
138165
|
+
"500": {
|
|
138166
|
+
"description": "Internal server error",
|
|
138167
|
+
"content": {
|
|
138168
|
+
"application/json": {
|
|
138169
|
+
"schema": {
|
|
138170
|
+
"additionalProperties": false,
|
|
138171
|
+
"type": "object",
|
|
138172
|
+
"required": [
|
|
138173
|
+
"error"
|
|
138174
|
+
],
|
|
138175
|
+
"properties": {
|
|
138176
|
+
"error": {
|
|
138177
|
+
"type": "string"
|
|
138178
|
+
}
|
|
138179
|
+
}
|
|
138180
|
+
}
|
|
138181
|
+
}
|
|
138182
|
+
}
|
|
138183
|
+
}
|
|
138184
|
+
}
|
|
138185
|
+
}
|
|
138186
|
+
},
|
|
138187
|
+
"/api/v1/gsc/login-url": {
|
|
138188
|
+
"get": {
|
|
138189
|
+
"operationId": "getGscLoginUrl",
|
|
138190
|
+
"summary": "Start the Search Console read-only OAuth flow",
|
|
138191
|
+
"tags": [
|
|
138192
|
+
"gsc"
|
|
138193
|
+
],
|
|
138194
|
+
"description": "Returns the Google consent URL for the `webmasters.readonly` scope. The destination workspace is signed into the OAuth state, so the callback stamps the connection on the active team.",
|
|
138195
|
+
"security": [
|
|
138196
|
+
{
|
|
138197
|
+
"bearerAuth": []
|
|
138198
|
+
}
|
|
138199
|
+
],
|
|
138200
|
+
"responses": {
|
|
138201
|
+
"200": {
|
|
138202
|
+
"description": "Successful response",
|
|
138203
|
+
"content": {
|
|
138204
|
+
"application/json": {
|
|
138205
|
+
"schema": {
|
|
138206
|
+
"additionalProperties": false,
|
|
138207
|
+
"type": "object",
|
|
138208
|
+
"required": [
|
|
138209
|
+
"url"
|
|
138210
|
+
],
|
|
138211
|
+
"properties": {
|
|
138212
|
+
"url": {
|
|
138213
|
+
"type": "string"
|
|
138214
|
+
}
|
|
138215
|
+
}
|
|
138216
|
+
}
|
|
138217
|
+
}
|
|
138218
|
+
}
|
|
138219
|
+
},
|
|
138220
|
+
"401": {
|
|
138221
|
+
"description": "Unauthorized - missing or invalid bearer token",
|
|
138222
|
+
"content": {
|
|
138223
|
+
"application/json": {
|
|
138224
|
+
"schema": {
|
|
138225
|
+
"additionalProperties": false,
|
|
138226
|
+
"type": "object",
|
|
138227
|
+
"required": [
|
|
138228
|
+
"error"
|
|
138229
|
+
],
|
|
138230
|
+
"properties": {
|
|
138231
|
+
"error": {
|
|
138232
|
+
"type": "string"
|
|
138233
|
+
}
|
|
138234
|
+
}
|
|
138235
|
+
}
|
|
138236
|
+
}
|
|
138237
|
+
}
|
|
138238
|
+
},
|
|
138239
|
+
"403": {
|
|
138240
|
+
"description": "Forbidden - caller lacks the required role/permission",
|
|
138241
|
+
"content": {
|
|
138242
|
+
"application/json": {
|
|
138243
|
+
"schema": {
|
|
138244
|
+
"additionalProperties": false,
|
|
138245
|
+
"type": "object",
|
|
138246
|
+
"required": [
|
|
138247
|
+
"error"
|
|
138248
|
+
],
|
|
138249
|
+
"properties": {
|
|
138250
|
+
"error": {
|
|
138251
|
+
"type": "string"
|
|
138252
|
+
}
|
|
138253
|
+
}
|
|
138254
|
+
}
|
|
138255
|
+
}
|
|
138256
|
+
}
|
|
138257
|
+
},
|
|
138258
|
+
"500": {
|
|
138259
|
+
"description": "Internal server error",
|
|
138260
|
+
"content": {
|
|
138261
|
+
"application/json": {
|
|
138262
|
+
"schema": {
|
|
138263
|
+
"additionalProperties": false,
|
|
138264
|
+
"type": "object",
|
|
138265
|
+
"required": [
|
|
138266
|
+
"error"
|
|
138267
|
+
],
|
|
138268
|
+
"properties": {
|
|
138269
|
+
"error": {
|
|
138270
|
+
"type": "string"
|
|
138271
|
+
}
|
|
138272
|
+
}
|
|
138273
|
+
}
|
|
138274
|
+
}
|
|
138275
|
+
}
|
|
138276
|
+
},
|
|
138277
|
+
"503": {
|
|
138278
|
+
"description": "Service unavailable",
|
|
138279
|
+
"content": {
|
|
138280
|
+
"application/json": {
|
|
138281
|
+
"schema": {
|
|
138282
|
+
"additionalProperties": false,
|
|
138283
|
+
"type": "object",
|
|
138284
|
+
"required": [
|
|
138285
|
+
"error"
|
|
138286
|
+
],
|
|
138287
|
+
"properties": {
|
|
138288
|
+
"error": {
|
|
138289
|
+
"type": "string"
|
|
138290
|
+
}
|
|
138291
|
+
}
|
|
138292
|
+
}
|
|
138293
|
+
}
|
|
138294
|
+
}
|
|
138295
|
+
}
|
|
138296
|
+
}
|
|
138297
|
+
}
|
|
138298
|
+
},
|
|
138299
|
+
"/api/v1/gsc/sites": {
|
|
138300
|
+
"get": {
|
|
138301
|
+
"operationId": "listGscSites",
|
|
138302
|
+
"summary": "List the Search Console sites visible to the connected Google account",
|
|
138303
|
+
"tags": [
|
|
138304
|
+
"gsc"
|
|
138305
|
+
],
|
|
138306
|
+
"description": "Reads `sites.list` live with the stored consent — the list is never persisted. Sites already matched to the workspace but no longer returned by Google come back with `accessible: false` so they can still be unmatched. Matched sites are listed first. Returns 404 when the workspace has no connection and 401 when the consent was revoked.",
|
|
138307
|
+
"security": [
|
|
138308
|
+
{
|
|
138309
|
+
"bearerAuth": []
|
|
138310
|
+
}
|
|
138311
|
+
],
|
|
138312
|
+
"responses": {
|
|
138313
|
+
"200": {
|
|
138314
|
+
"description": "Successful response",
|
|
138315
|
+
"content": {
|
|
138316
|
+
"application/json": {
|
|
138317
|
+
"schema": {
|
|
138318
|
+
"additionalProperties": false,
|
|
138319
|
+
"type": "object",
|
|
138320
|
+
"required": [
|
|
138321
|
+
"connected_email",
|
|
138322
|
+
"items"
|
|
138323
|
+
],
|
|
138324
|
+
"properties": {
|
|
138325
|
+
"connected_email": {
|
|
138326
|
+
"type": "string"
|
|
138327
|
+
},
|
|
138328
|
+
"items": {
|
|
138329
|
+
"type": "array",
|
|
138330
|
+
"items": {
|
|
138331
|
+
"additionalProperties": false,
|
|
138332
|
+
"type": "object",
|
|
138333
|
+
"required": [
|
|
138334
|
+
"site_url",
|
|
138335
|
+
"permission_level",
|
|
138336
|
+
"property_type",
|
|
138337
|
+
"selected",
|
|
138338
|
+
"accessible"
|
|
138339
|
+
],
|
|
138340
|
+
"properties": {
|
|
138341
|
+
"site_url": {
|
|
138342
|
+
"type": "string"
|
|
138343
|
+
},
|
|
138344
|
+
"permission_level": {
|
|
138345
|
+
"description": "Raw Google value: siteOwner | siteFullUser | siteRestrictedUser | siteUnverifiedUser.",
|
|
138346
|
+
"type": "string"
|
|
138347
|
+
},
|
|
138348
|
+
"property_type": {
|
|
138349
|
+
"description": "`domain` for `sc-domain:` properties, `url_prefix` for everything else.",
|
|
138350
|
+
"anyOf": [
|
|
138351
|
+
{
|
|
138352
|
+
"type": "string",
|
|
138353
|
+
"enum": [
|
|
138354
|
+
"domain"
|
|
138355
|
+
]
|
|
138356
|
+
},
|
|
138357
|
+
{
|
|
138358
|
+
"type": "string",
|
|
138359
|
+
"enum": [
|
|
138360
|
+
"url_prefix"
|
|
138361
|
+
]
|
|
138362
|
+
}
|
|
138363
|
+
]
|
|
138364
|
+
},
|
|
138365
|
+
"selected": {
|
|
138366
|
+
"description": "True when the site is matched to this workspace.",
|
|
138367
|
+
"type": "boolean"
|
|
138368
|
+
},
|
|
138369
|
+
"accessible": {
|
|
138370
|
+
"description": "False for a matched site the connected account can no longer see in sites.list.",
|
|
138371
|
+
"type": "boolean"
|
|
138372
|
+
}
|
|
138373
|
+
}
|
|
138374
|
+
}
|
|
138375
|
+
}
|
|
138376
|
+
}
|
|
138377
|
+
}
|
|
138378
|
+
}
|
|
138379
|
+
}
|
|
138380
|
+
},
|
|
138381
|
+
"401": {
|
|
138382
|
+
"description": "Unauthorized - missing or invalid bearer token",
|
|
138383
|
+
"content": {
|
|
138384
|
+
"application/json": {
|
|
138385
|
+
"schema": {
|
|
138386
|
+
"additionalProperties": false,
|
|
138387
|
+
"type": "object",
|
|
138388
|
+
"required": [
|
|
138389
|
+
"error"
|
|
138390
|
+
],
|
|
138391
|
+
"properties": {
|
|
138392
|
+
"error": {
|
|
138393
|
+
"type": "string"
|
|
138394
|
+
}
|
|
138395
|
+
}
|
|
138396
|
+
}
|
|
138397
|
+
}
|
|
138398
|
+
}
|
|
138399
|
+
},
|
|
138400
|
+
"404": {
|
|
138401
|
+
"description": "Resource not found",
|
|
138402
|
+
"content": {
|
|
138403
|
+
"application/json": {
|
|
138404
|
+
"schema": {
|
|
138405
|
+
"additionalProperties": false,
|
|
138406
|
+
"type": "object",
|
|
138407
|
+
"required": [
|
|
138408
|
+
"error"
|
|
138409
|
+
],
|
|
138410
|
+
"properties": {
|
|
138411
|
+
"error": {
|
|
138412
|
+
"type": "string"
|
|
138413
|
+
}
|
|
138414
|
+
}
|
|
138415
|
+
}
|
|
138416
|
+
}
|
|
138417
|
+
}
|
|
138418
|
+
},
|
|
138419
|
+
"500": {
|
|
138420
|
+
"description": "Internal server error",
|
|
138421
|
+
"content": {
|
|
138422
|
+
"application/json": {
|
|
138423
|
+
"schema": {
|
|
138424
|
+
"additionalProperties": false,
|
|
138425
|
+
"type": "object",
|
|
138426
|
+
"required": [
|
|
138427
|
+
"error"
|
|
138428
|
+
],
|
|
138429
|
+
"properties": {
|
|
138430
|
+
"error": {
|
|
138431
|
+
"type": "string"
|
|
138432
|
+
}
|
|
138433
|
+
}
|
|
138434
|
+
}
|
|
138435
|
+
}
|
|
138436
|
+
}
|
|
138437
|
+
},
|
|
138438
|
+
"502": {
|
|
138439
|
+
"description": "Bad gateway - upstream provider failed",
|
|
138440
|
+
"content": {
|
|
138441
|
+
"application/json": {
|
|
138442
|
+
"schema": {
|
|
138443
|
+
"additionalProperties": false,
|
|
138444
|
+
"type": "object",
|
|
138445
|
+
"required": [
|
|
138446
|
+
"error"
|
|
138447
|
+
],
|
|
138448
|
+
"properties": {
|
|
138449
|
+
"error": {
|
|
138450
|
+
"type": "string"
|
|
138451
|
+
}
|
|
138452
|
+
}
|
|
138453
|
+
}
|
|
138454
|
+
}
|
|
138455
|
+
}
|
|
138456
|
+
},
|
|
138457
|
+
"503": {
|
|
138458
|
+
"description": "Service unavailable",
|
|
138459
|
+
"content": {
|
|
138460
|
+
"application/json": {
|
|
138461
|
+
"schema": {
|
|
138462
|
+
"additionalProperties": false,
|
|
138463
|
+
"type": "object",
|
|
138464
|
+
"required": [
|
|
138465
|
+
"error"
|
|
138466
|
+
],
|
|
138467
|
+
"properties": {
|
|
138468
|
+
"error": {
|
|
138469
|
+
"type": "string"
|
|
138470
|
+
}
|
|
138471
|
+
}
|
|
138472
|
+
}
|
|
138473
|
+
}
|
|
138474
|
+
}
|
|
138475
|
+
}
|
|
138476
|
+
}
|
|
138477
|
+
}
|
|
138478
|
+
},
|
|
138479
|
+
"/api/v1/gsc/site": {
|
|
138480
|
+
"put": {
|
|
138481
|
+
"operationId": "setGscSiteSelection",
|
|
138482
|
+
"summary": "Match or unmatch a Search Console site with the workspace",
|
|
138483
|
+
"tags": [
|
|
138484
|
+
"gsc"
|
|
138485
|
+
],
|
|
138486
|
+
"description": "With `selected: true` the site is validated against `sites.get` and persisted with its current permission level; a `siteUnverifiedUser` property has no data access and is rejected with 400. With `selected: false` the match is removed (idempotent).",
|
|
138487
|
+
"requestBody": {
|
|
138488
|
+
"required": true,
|
|
138489
|
+
"content": {
|
|
138490
|
+
"application/json": {
|
|
138491
|
+
"schema": {
|
|
138492
|
+
"additionalProperties": false,
|
|
138493
|
+
"type": "object",
|
|
138494
|
+
"required": [
|
|
138495
|
+
"site_url",
|
|
138496
|
+
"selected"
|
|
138497
|
+
],
|
|
138498
|
+
"properties": {
|
|
138499
|
+
"site_url": {
|
|
138500
|
+
"minLength": 1,
|
|
138501
|
+
"maxLength": 500,
|
|
138502
|
+
"description": "Google property identifier: `sc-domain:example.com` or a URL-prefix such as `https://example.com/`.",
|
|
138503
|
+
"type": "string"
|
|
138504
|
+
},
|
|
138505
|
+
"selected": {
|
|
138506
|
+
"type": "boolean"
|
|
138507
|
+
}
|
|
138508
|
+
}
|
|
138509
|
+
}
|
|
138510
|
+
}
|
|
138511
|
+
}
|
|
138512
|
+
},
|
|
138513
|
+
"security": [
|
|
138514
|
+
{
|
|
138515
|
+
"bearerAuth": []
|
|
138516
|
+
}
|
|
138517
|
+
],
|
|
138518
|
+
"responses": {
|
|
138519
|
+
"200": {
|
|
138520
|
+
"description": "Successful response",
|
|
138521
|
+
"content": {
|
|
138522
|
+
"application/json": {
|
|
138523
|
+
"schema": {
|
|
138524
|
+
"additionalProperties": false,
|
|
138525
|
+
"type": "object",
|
|
138526
|
+
"required": [
|
|
138527
|
+
"site"
|
|
138528
|
+
],
|
|
138529
|
+
"properties": {
|
|
138530
|
+
"site": {
|
|
138531
|
+
"additionalProperties": false,
|
|
138532
|
+
"type": "object",
|
|
138533
|
+
"required": [
|
|
138534
|
+
"site_url",
|
|
138535
|
+
"permission_level",
|
|
138536
|
+
"property_type",
|
|
138537
|
+
"selected"
|
|
138538
|
+
],
|
|
138539
|
+
"properties": {
|
|
138540
|
+
"site_url": {
|
|
138541
|
+
"type": "string"
|
|
138542
|
+
},
|
|
138543
|
+
"permission_level": {
|
|
138544
|
+
"description": "Raw Google value: siteOwner | siteFullUser | siteRestrictedUser | siteUnverifiedUser.",
|
|
138545
|
+
"type": "string"
|
|
138546
|
+
},
|
|
138547
|
+
"property_type": {
|
|
138548
|
+
"description": "`domain` for `sc-domain:` properties, `url_prefix` for everything else.",
|
|
138549
|
+
"anyOf": [
|
|
138550
|
+
{
|
|
138551
|
+
"type": "string",
|
|
138552
|
+
"enum": [
|
|
138553
|
+
"domain"
|
|
138554
|
+
]
|
|
138555
|
+
},
|
|
138556
|
+
{
|
|
138557
|
+
"type": "string",
|
|
138558
|
+
"enum": [
|
|
138559
|
+
"url_prefix"
|
|
138560
|
+
]
|
|
138561
|
+
}
|
|
138562
|
+
]
|
|
138563
|
+
},
|
|
138564
|
+
"selected": {
|
|
138565
|
+
"type": "boolean"
|
|
138566
|
+
}
|
|
138567
|
+
}
|
|
138568
|
+
}
|
|
138569
|
+
}
|
|
138570
|
+
}
|
|
138571
|
+
}
|
|
138572
|
+
}
|
|
138573
|
+
},
|
|
138574
|
+
"400": {
|
|
138575
|
+
"description": "Invalid request - schema validation failed",
|
|
138576
|
+
"content": {
|
|
138577
|
+
"application/json": {
|
|
138578
|
+
"schema": {
|
|
138579
|
+
"additionalProperties": false,
|
|
138580
|
+
"type": "object",
|
|
138581
|
+
"required": [
|
|
138582
|
+
"error"
|
|
138583
|
+
],
|
|
138584
|
+
"properties": {
|
|
138585
|
+
"error": {
|
|
138586
|
+
"type": "string"
|
|
138587
|
+
}
|
|
138588
|
+
}
|
|
138589
|
+
}
|
|
138590
|
+
}
|
|
138591
|
+
}
|
|
138592
|
+
},
|
|
138593
|
+
"401": {
|
|
138594
|
+
"description": "Unauthorized - missing or invalid bearer token",
|
|
138595
|
+
"content": {
|
|
138596
|
+
"application/json": {
|
|
138597
|
+
"schema": {
|
|
138598
|
+
"additionalProperties": false,
|
|
138599
|
+
"type": "object",
|
|
138600
|
+
"required": [
|
|
138601
|
+
"error"
|
|
138602
|
+
],
|
|
138603
|
+
"properties": {
|
|
138604
|
+
"error": {
|
|
138605
|
+
"type": "string"
|
|
138606
|
+
}
|
|
138607
|
+
}
|
|
138608
|
+
}
|
|
138609
|
+
}
|
|
138610
|
+
}
|
|
138611
|
+
},
|
|
138612
|
+
"403": {
|
|
138613
|
+
"description": "Forbidden - caller lacks the required role/permission",
|
|
138614
|
+
"content": {
|
|
138615
|
+
"application/json": {
|
|
138616
|
+
"schema": {
|
|
138617
|
+
"additionalProperties": false,
|
|
138618
|
+
"type": "object",
|
|
138619
|
+
"required": [
|
|
138620
|
+
"error"
|
|
138621
|
+
],
|
|
138622
|
+
"properties": {
|
|
138623
|
+
"error": {
|
|
138624
|
+
"type": "string"
|
|
138625
|
+
}
|
|
138626
|
+
}
|
|
138627
|
+
}
|
|
138628
|
+
}
|
|
138629
|
+
}
|
|
138630
|
+
},
|
|
138631
|
+
"404": {
|
|
138632
|
+
"description": "Resource not found",
|
|
138633
|
+
"content": {
|
|
138634
|
+
"application/json": {
|
|
138635
|
+
"schema": {
|
|
138636
|
+
"additionalProperties": false,
|
|
138637
|
+
"type": "object",
|
|
138638
|
+
"required": [
|
|
138639
|
+
"error"
|
|
138640
|
+
],
|
|
138641
|
+
"properties": {
|
|
138642
|
+
"error": {
|
|
138643
|
+
"type": "string"
|
|
138644
|
+
}
|
|
138645
|
+
}
|
|
138646
|
+
}
|
|
138647
|
+
}
|
|
138648
|
+
}
|
|
138649
|
+
},
|
|
138650
|
+
"500": {
|
|
138651
|
+
"description": "Internal server error",
|
|
138652
|
+
"content": {
|
|
138653
|
+
"application/json": {
|
|
138654
|
+
"schema": {
|
|
138655
|
+
"additionalProperties": false,
|
|
138656
|
+
"type": "object",
|
|
138657
|
+
"required": [
|
|
138658
|
+
"error"
|
|
138659
|
+
],
|
|
138660
|
+
"properties": {
|
|
138661
|
+
"error": {
|
|
138662
|
+
"type": "string"
|
|
138663
|
+
}
|
|
138664
|
+
}
|
|
138665
|
+
}
|
|
138666
|
+
}
|
|
138667
|
+
}
|
|
138668
|
+
},
|
|
138669
|
+
"502": {
|
|
138670
|
+
"description": "Bad gateway - upstream provider failed",
|
|
138671
|
+
"content": {
|
|
138672
|
+
"application/json": {
|
|
138673
|
+
"schema": {
|
|
138674
|
+
"additionalProperties": false,
|
|
138675
|
+
"type": "object",
|
|
138676
|
+
"required": [
|
|
138677
|
+
"error"
|
|
138678
|
+
],
|
|
138679
|
+
"properties": {
|
|
138680
|
+
"error": {
|
|
138681
|
+
"type": "string"
|
|
138682
|
+
}
|
|
138683
|
+
}
|
|
138684
|
+
}
|
|
138685
|
+
}
|
|
138686
|
+
}
|
|
138687
|
+
},
|
|
138688
|
+
"503": {
|
|
138689
|
+
"description": "Service unavailable",
|
|
138690
|
+
"content": {
|
|
138691
|
+
"application/json": {
|
|
138692
|
+
"schema": {
|
|
138693
|
+
"additionalProperties": false,
|
|
138694
|
+
"type": "object",
|
|
138695
|
+
"required": [
|
|
138696
|
+
"error"
|
|
138697
|
+
],
|
|
138698
|
+
"properties": {
|
|
138699
|
+
"error": {
|
|
138700
|
+
"type": "string"
|
|
138701
|
+
}
|
|
138702
|
+
}
|
|
138703
|
+
}
|
|
138704
|
+
}
|
|
138705
|
+
}
|
|
138706
|
+
}
|
|
138707
|
+
}
|
|
138708
|
+
}
|
|
138709
|
+
},
|
|
138710
|
+
"/api/v1/gsc/connection": {
|
|
138711
|
+
"delete": {
|
|
138712
|
+
"operationId": "disconnectGsc",
|
|
138713
|
+
"summary": "Remove the Search Console connection",
|
|
138714
|
+
"tags": [
|
|
138715
|
+
"gsc"
|
|
138716
|
+
],
|
|
138717
|
+
"description": "Deletes the stored consent and every site match for the workspace. The Google grant itself is not revoked: the OAuth client is shared with Google Ads and GA4. Returns `disconnected: false` when there was nothing to remove.",
|
|
138718
|
+
"security": [
|
|
138719
|
+
{
|
|
138720
|
+
"bearerAuth": []
|
|
138721
|
+
}
|
|
138722
|
+
],
|
|
138723
|
+
"responses": {
|
|
138724
|
+
"200": {
|
|
138725
|
+
"description": "Successful response",
|
|
138726
|
+
"content": {
|
|
138727
|
+
"application/json": {
|
|
138728
|
+
"schema": {
|
|
138729
|
+
"additionalProperties": false,
|
|
138730
|
+
"type": "object",
|
|
138731
|
+
"required": [
|
|
138732
|
+
"disconnected"
|
|
138733
|
+
],
|
|
138734
|
+
"properties": {
|
|
138735
|
+
"disconnected": {
|
|
138736
|
+
"type": "boolean"
|
|
138737
|
+
}
|
|
138738
|
+
}
|
|
138739
|
+
}
|
|
138740
|
+
}
|
|
138741
|
+
}
|
|
138742
|
+
},
|
|
138743
|
+
"401": {
|
|
138744
|
+
"description": "Unauthorized - missing or invalid bearer token",
|
|
138745
|
+
"content": {
|
|
138746
|
+
"application/json": {
|
|
138747
|
+
"schema": {
|
|
138748
|
+
"additionalProperties": false,
|
|
138749
|
+
"type": "object",
|
|
138750
|
+
"required": [
|
|
138751
|
+
"error"
|
|
138752
|
+
],
|
|
138753
|
+
"properties": {
|
|
138754
|
+
"error": {
|
|
138755
|
+
"type": "string"
|
|
138756
|
+
}
|
|
138757
|
+
}
|
|
138758
|
+
}
|
|
138759
|
+
}
|
|
138760
|
+
}
|
|
138761
|
+
},
|
|
138762
|
+
"403": {
|
|
138763
|
+
"description": "Forbidden - caller lacks the required role/permission",
|
|
138764
|
+
"content": {
|
|
138765
|
+
"application/json": {
|
|
138766
|
+
"schema": {
|
|
138767
|
+
"additionalProperties": false,
|
|
138768
|
+
"type": "object",
|
|
138769
|
+
"required": [
|
|
138770
|
+
"error"
|
|
138771
|
+
],
|
|
138772
|
+
"properties": {
|
|
138773
|
+
"error": {
|
|
138774
|
+
"type": "string"
|
|
138775
|
+
}
|
|
138776
|
+
}
|
|
138777
|
+
}
|
|
138778
|
+
}
|
|
138779
|
+
}
|
|
138780
|
+
},
|
|
138781
|
+
"500": {
|
|
138782
|
+
"description": "Internal server error",
|
|
138783
|
+
"content": {
|
|
138784
|
+
"application/json": {
|
|
138785
|
+
"schema": {
|
|
138786
|
+
"additionalProperties": false,
|
|
138787
|
+
"type": "object",
|
|
138788
|
+
"required": [
|
|
138789
|
+
"error"
|
|
138790
|
+
],
|
|
138791
|
+
"properties": {
|
|
138792
|
+
"error": {
|
|
138793
|
+
"type": "string"
|
|
138794
|
+
}
|
|
138795
|
+
}
|
|
138796
|
+
}
|
|
138797
|
+
}
|
|
138798
|
+
}
|
|
138799
|
+
},
|
|
138800
|
+
"503": {
|
|
138801
|
+
"description": "Service unavailable",
|
|
138802
|
+
"content": {
|
|
138803
|
+
"application/json": {
|
|
138804
|
+
"schema": {
|
|
138805
|
+
"additionalProperties": false,
|
|
138806
|
+
"type": "object",
|
|
138807
|
+
"required": [
|
|
138808
|
+
"error"
|
|
138809
|
+
],
|
|
138810
|
+
"properties": {
|
|
138811
|
+
"error": {
|
|
138812
|
+
"type": "string"
|
|
138813
|
+
}
|
|
138814
|
+
}
|
|
138815
|
+
}
|
|
138816
|
+
}
|
|
138817
|
+
}
|
|
138818
|
+
}
|
|
138819
|
+
}
|
|
138820
|
+
}
|
|
138821
|
+
},
|
|
138069
138822
|
"/api/v1/hourly-sync": {
|
|
138070
138823
|
"post": {
|
|
138071
138824
|
"operationId": "triggerHourlySync",
|