@terrascale/sdk 0.0.3 → 0.0.4

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.
Files changed (64) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +177 -67
  3. package/package.json +10 -4
  4. package/sdk-public-v1-route-manifest.json +81 -0
  5. package/sdk-v1-route-manifest.json +896 -15
  6. package/src/http.js +3 -48
  7. package/src/index.js +75 -1
  8. package/src/local/environment.js +0 -1
  9. package/src/ts-auth.js +1 -5
  10. package/src/v1/backups.js +111 -0
  11. package/src/v1/catalog.js +210 -0
  12. package/src/v1/changes.js +225 -0
  13. package/src/v1/database-schema.js +45 -0
  14. package/src/v1/decode.js +5 -5
  15. package/src/v1/errors.js +23 -3
  16. package/src/v1/ids.js +5 -2
  17. package/src/v1/imports.js +72 -0
  18. package/src/v1/indexes.js +76 -0
  19. package/src/v1/json.js +4 -3
  20. package/src/v1/management-decode.js +24 -0
  21. package/src/v1/management-routes.js +67 -0
  22. package/src/v1/management-validation.js +25 -0
  23. package/src/v1/routes.js +32 -7
  24. package/src/v1/saved-queries.js +58 -0
  25. package/src/v1/shape-crypto.js +125 -0
  26. package/src/v1/shape-manifest.js +31 -0
  27. package/src/v1/shape-reader.js +212 -0
  28. package/src/v1/shape-subscription.js +208 -0
  29. package/src/v1/shapes.js +11 -5
  30. package/src/v1/sql.js +98 -0
  31. package/src/v1/system.js +80 -0
  32. package/src/v1/terrabase-v1.js +178 -27
  33. package/src/v1/transport.js +75 -31
  34. package/src/v1/usage.js +101 -0
  35. package/types/http.d.ts +2 -8
  36. package/types/index.d.ts +68 -0
  37. package/types/local/environment.d.ts +1 -1
  38. package/types/ts-auth.d.ts +0 -2
  39. package/types/v1/backups.d.ts +128 -0
  40. package/types/v1/catalog.d.ts +92 -0
  41. package/types/v1/changes.d.ts +53 -0
  42. package/types/v1/database-schema.d.ts +82 -0
  43. package/types/v1/decode.d.ts +15 -4
  44. package/types/v1/errors.d.ts +16 -1
  45. package/types/v1/ids.d.ts +2 -2
  46. package/types/v1/imports.d.ts +132 -0
  47. package/types/v1/indexes.d.ts +75 -0
  48. package/types/v1/management-decode.d.ts +15 -0
  49. package/types/v1/management-routes.d.ts +3 -0
  50. package/types/v1/management-validation.d.ts +8 -0
  51. package/types/v1/routes.d.ts +5 -2
  52. package/types/v1/saved-queries.d.ts +33 -0
  53. package/types/v1/shape-crypto.d.ts +39 -0
  54. package/types/v1/shape-manifest.d.ts +28 -0
  55. package/types/v1/shape-reader.d.ts +45 -0
  56. package/types/v1/shape-subscription.d.ts +35 -0
  57. package/types/v1/shapes.d.ts +16 -2
  58. package/types/v1/sql.d.ts +47 -0
  59. package/types/v1/system.d.ts +85 -0
  60. package/types/v1/terrabase-v1.d.ts +113 -4
  61. package/types/v1/transport.d.ts +25 -8
  62. package/types/v1/usage.d.ts +171 -0
  63. package/src/ts-auth-discovery.js +0 -207
  64. package/types/ts-auth-discovery.d.ts +0 -19
@@ -1,5 +1,57 @@
1
1
  {
2
- "manifestVersion": 2,
2
+ "manifestVersion": 4,
3
+ "shapeProtocol": {
4
+ "repository": "TerraScale/terrascale",
5
+ "revision": "993927ce7ecf8f9b889d24d4d1d21ec96eaf9416",
6
+ "status": "locally adapted snapshot of the source revision; sha256 identifies local bytes; proposed protocol; runtime endpoints and generated OpenAPI not qualified",
7
+ "inputs": {
8
+ "shape-reads.md": {
9
+ "sourcePath": "docs/terrabase/shape-reads.md",
10
+ "sha256": "357a25d272a97e7b2fb5515cc3dfc9a092cd9ffa4ba98858c9932f4b4a6cb092"
11
+ },
12
+ "free-reads.md": {
13
+ "sourcePath": "docs/terrabase/free-reads.md",
14
+ "sha256": "32caaca94f06da36969e421f8dce6ee7d053ddfa691031c5ec630d43918c29ad"
15
+ }
16
+ },
17
+ "deferredVectors": {
18
+ "presigned-manifest": "Owner explicitly deferred manifest/302 delivery to the FR-22 follow-up."
19
+ },
20
+ "routes": [
21
+ {
22
+ "operation": "readFreeShape",
23
+ "method": "GET",
24
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/shape",
25
+ "permission": "documents:read",
26
+ "requestMediaTypes": [],
27
+ "responseMediaType": "application/json",
28
+ "successStatuses": [
29
+ 200,
30
+ 307
31
+ ],
32
+ "idempotencyKey": "none",
33
+ "replaySafe": true,
34
+ "contract": "docs/terrabase/shape-reads.md",
35
+ "contractText": []
36
+ },
37
+ {
38
+ "operation": "getShapeKey",
39
+ "method": "GET",
40
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/shape/keys",
41
+ "permission": "documents:read",
42
+ "requestMediaTypes": [],
43
+ "responseMediaType": "application/json",
44
+ "successStatuses": [
45
+ 200
46
+ ],
47
+ "idempotencyKey": "none",
48
+ "replaySafe": true,
49
+ "contract": "docs/terrabase/shape-reads.md",
50
+ "contractText": []
51
+ }
52
+ ],
53
+ "generatedOpenApi": "Unavailable: proposed protocol only; producer qualification skipped."
54
+ },
3
55
  "contractVersion": "terrabase-csharp-v1",
4
56
  "contractSource": {
5
57
  "registryOrigin": "https://git.terrascale.tech",
@@ -124,7 +176,586 @@
124
176
  "openapiBytesSha256": "af84145b3472baf04fe9d76bd553ddf8e0f5bd9a0d4c70a791d99e6dd177b6d6",
125
177
  "openapiNormalization": "JSON.parse, remove generated servers, JSON.stringify"
126
178
  },
127
- "routeCount": 12,
179
+ "currentSource": {
180
+ "producer": "TerraScale/terrascale",
181
+ "revision": "e30ffdc287530551b161b0130220be53d3c0475e",
182
+ "sdkBaseRevision": "eac7e3fca1178d30d81eb18ff35d8629e5f454e4",
183
+ "evidence": "Read-only source snapshot; not generated OpenAPI or runtime qualification. Imports excluded.",
184
+ "routes": {
185
+ "getDocument": "src/TerraBase/Features/Documents/GetDocumentEndpoint.cs",
186
+ "putDocument": "src/TerraBase/Features/Documents/PutDocumentEndpoint.cs",
187
+ "createDocument": "src/TerraBase/Features/Documents/CreateDocumentEndpoint.cs",
188
+ "patchDocument": "src/TerraBase/Features/Documents/PatchDocumentEndpoint.cs",
189
+ "deleteDocument": "src/TerraBase/Features/Documents/DeleteDocumentEndpoint.cs",
190
+ "commitTransaction": "src/TerraBase/Features/Documents/TransactionEndpoint.cs",
191
+ "queryDocuments": "src/TerraBase/Features/Documents/QueryDocumentsEndpoint.cs",
192
+ "createCollection": "src/TerraBase/Features/Documents/CreateCollectionEndpoint.cs",
193
+ "getCollection": "src/TerraBase/Features/Documents/GetCollectionEndpoint.cs",
194
+ "listCollections": "src/TerraBase/Features/Documents/ListCollectionsEndpoint.cs",
195
+ "dropCollection": "src/TerraBase/Features/Documents/DropCollectionEndpoint.cs",
196
+ "listDocuments": "src/TerraBase/Features/Documents/ListDocumentsEndpoint.cs",
197
+ "getCollectionSchema": "src/TerraBase/Features/Documents/GetCollectionSchemaEndpoint.cs",
198
+ "putCollectionSchema": "src/TerraBase/Features/Documents/PutCollectionSchemaEndpoint.cs",
199
+ "deleteCollectionSchema": "src/TerraBase/Features/Documents/DeleteCollectionSchemaEndpoint.cs",
200
+ "streamDatabaseChanges": "src/TerraBase/Features/Documents/GetDatabaseChangesEndpoint.cs",
201
+ "runSql": "src/TerraBase/Features/Management/Queries/RunSqlEndpoint.cs",
202
+ "checkSql": "src/TerraBase/Features/Management/Queries/CheckSqlEndpoint.cs",
203
+ "explainSql": "src/TerraBase/Features/Management/Queries/ExplainSqlEndpoint.cs",
204
+ "createDatabase": "src/TerraBase/Features/Management/CreateManagedDatabaseEndpoint.cs",
205
+ "listDatabases": "src/TerraBase/Features/Management/ListManagedDatabasesEndpoint.cs",
206
+ "getDatabase": "src/TerraBase/Features/Management/GetManagedDatabaseEndpoint.cs",
207
+ "updateDatabase": "src/TerraBase/Features/Management/UpdateManagedDatabaseEndpoint.cs",
208
+ "deleteDatabase": "src/TerraBase/Features/Management/DeleteManagedDatabaseEndpoint.cs",
209
+ "branchDatabase": "src/TerraBase/Features/Management/BranchManagedDatabaseEndpoint.cs"
210
+ },
211
+ "inputs": {
212
+ "src/TerraBase/Engine/Lattices/DocumentState.cs": {
213
+ "sha256": "3dbf94f195b41783efb230801831ac85cba31a428a1fb43b0d4df68cf082125e"
214
+ },
215
+ "src/TerraBase/Errors/ErrorResponse.cs": {
216
+ "sha256": "db83574aa5c2737d8cb7c905b9dbd5c553ba76c4bcf8e21eb8c269916958426d"
217
+ },
218
+ "src/TerraBase/Features/ApiKeys/ApiKeyAuthenticationHandler.cs": {
219
+ "sha256": "ff55b316403eaad56ff2941b75d06ce2e561d01bb1ff0cda3fcb3eb49e17e494"
220
+ },
221
+ "src/TerraBase/Features/ApiKeys/IApiKeyStore.cs": {
222
+ "sha256": "3abf96b87470e93fd9eaa4d72bd79dac2ded185399eaed6dd5d487e99dfda066"
223
+ },
224
+ "src/TerraBase/Features/Documents/ChangeCursor.cs": {
225
+ "sha256": "0ba18e88079fc019f81b708afcfbf949b02ef9746e2aa9420d2f52470bc3224e"
226
+ },
227
+ "src/TerraBase/Features/Documents/CollectionSchemaRoute.cs": {
228
+ "sha256": "60665ffa0c29d19fd63895e391c65c1b6015c2109e75f960faf569f701ab7e50"
229
+ },
230
+ "src/TerraBase/Features/Documents/CreateCollectionEndpoint.cs": {
231
+ "sha256": "dfc7b259119127dd6bdafc34b97194659441500c47bdf7a3171e052c1547bc83"
232
+ },
233
+ "src/TerraBase/Features/Documents/CreateDocumentEndpoint.cs": {
234
+ "sha256": "25678dbe2d651d1291be796b1e9c75f93762e1e476648629427acce027d99fc5"
235
+ },
236
+ "src/TerraBase/Features/Documents/DatabaseChangeModels.cs": {
237
+ "sha256": "157ab37070ec2104f72730bf0e641fa5219946614a3dafe82530885e9a573ed7"
238
+ },
239
+ "src/TerraBase/Features/Documents/DatabaseChanges.cs": {
240
+ "sha256": "bbe8ee1e1cf3dacc2ba32967538bbbb427530edbe96fbe165bba8e52400a3406"
241
+ },
242
+ "src/TerraBase/Features/Documents/DeleteCollectionSchemaEndpoint.cs": {
243
+ "sha256": "63fca1ce65c98aeba3f9caa2b12673c8c46b49b40f18180e8c9e08f233ca6830"
244
+ },
245
+ "src/TerraBase/Features/Documents/DeleteDocumentEndpoint.cs": {
246
+ "sha256": "c8062dde557574824d5278f77c736bbe62277d4f2b659c602b6fa4d3a44f9908"
247
+ },
248
+ "src/TerraBase/Features/Documents/DocumentModels.cs": {
249
+ "sha256": "160e0cc11b4b9a28b10261c3e1718f9d047dd5c782b3b65b288be4ea31db6581"
250
+ },
251
+ "src/TerraBase/Features/Documents/DocumentPatch.cs": {
252
+ "sha256": "6b75821cc347e30189149bec4386e8995914f31aeedd41eaa97b135835252e5d"
253
+ },
254
+ "src/TerraBase/Features/Documents/DocumentRoute.cs": {
255
+ "sha256": "1ccdf60170c6ccffdbce3dae444fed0ebefb920658b0700f8f410b3983dc53a8"
256
+ },
257
+ "src/TerraBase/Features/Documents/DropCollectionEndpoint.cs": {
258
+ "sha256": "e1a91ca3a740218ea7c994af994ca54301308f92414759f044650d6717f4f2d9"
259
+ },
260
+ "src/TerraBase/Features/Documents/GetCollectionEndpoint.cs": {
261
+ "sha256": "28af27dda8c6dceadebdc00562c33ef93b8f88f8f6b30e784edfa7dea4a18907"
262
+ },
263
+ "src/TerraBase/Features/Documents/GetCollectionSchemaEndpoint.cs": {
264
+ "sha256": "600d89a860177dc3cf20cb90b84e47cc1542afb09041636e300a9d61f3d2a526"
265
+ },
266
+ "src/TerraBase/Features/Documents/GetDatabaseChangesEndpoint.cs": {
267
+ "sha256": "13ca12352bf33d2e687f4a7fb4d78d6f28f3048f936b14e1db8f9fd947745dd8"
268
+ },
269
+ "src/TerraBase/Features/Documents/GetDocumentEndpoint.cs": {
270
+ "sha256": "f2c960cafe784acc67108de412df1134e8c89a2ceac71d1bed6c5654bd5884fa"
271
+ },
272
+ "src/TerraBase/Features/Documents/ListCollectionsEndpoint.cs": {
273
+ "sha256": "e421d2627ae3eb110ec5ff03803938590114383cdc38dcf9d737879544b296d0"
274
+ },
275
+ "src/TerraBase/Features/Documents/ListDocumentsEndpoint.cs": {
276
+ "sha256": "99274324f34fcaf92da5637da834bd3963db5d41a39c66515a0cefba0259c207"
277
+ },
278
+ "src/TerraBase/Features/Documents/PatchDocumentEndpoint.cs": {
279
+ "sha256": "c14d7808bea905c49064f9fce5ba3c4b081fd8ebbc539e508c520f4680b08ae0"
280
+ },
281
+ "src/TerraBase/Features/Documents/PutCollectionSchemaEndpoint.cs": {
282
+ "sha256": "836d24b6a8137af9fdfce3e9c800c5c47a917802233658f83f9283a59490d3b2"
283
+ },
284
+ "src/TerraBase/Features/Documents/PutDocumentEndpoint.cs": {
285
+ "sha256": "894fc735975b86c980a27a73df898fe454f920e7eca0e5c536b5af4cdae25134"
286
+ },
287
+ "src/TerraBase/Features/Documents/QueryDocumentsEndpoint.cs": {
288
+ "sha256": "9052c75d80ec46bbe113312f45b2cee4b198ae1730ffe90d3eb07f7507db2a93"
289
+ },
290
+ "src/TerraBase/Features/Documents/TransactionEndpoint.cs": {
291
+ "sha256": "1e518f9c73f28b13e6e1761f4706e4157e89bf50776b6ac73ad44b6e22150c5c"
292
+ },
293
+ "src/TerraBase/Features/Management/BranchManagedDatabaseEndpoint.cs": {
294
+ "sha256": "16729700b6baa72fd26ebe8c8537f51e3414fd1a439a9d0bcbac211dc6266043"
295
+ },
296
+ "src/TerraBase/Features/Management/CreateManagedDatabaseEndpoint.cs": {
297
+ "sha256": "8302ef780cf65c92aa5f2a86e26fdd811c68e9446fa27f292d53ddf7207aa06a"
298
+ },
299
+ "src/TerraBase/Features/Management/DatabaseRegions.cs": {
300
+ "sha256": "b25dd27ce0864e4d2fba10c7f54595aa21b263ef6a59d20583d3b20916722e31"
301
+ },
302
+ "src/TerraBase/Features/Management/DeleteManagedDatabaseEndpoint.cs": {
303
+ "sha256": "1f6c26915734fb2e8eefceb613b72a08952c72aafc95a83c658e8caec36f81da"
304
+ },
305
+ "src/TerraBase/Features/Management/GetManagedDatabaseEndpoint.cs": {
306
+ "sha256": "263b6ee7698bdc95b1546e5947ff2b12368348d14b833919ff4a2684bfb34d91"
307
+ },
308
+ "src/TerraBase/Features/Management/ListManagedDatabasesEndpoint.cs": {
309
+ "sha256": "ddd6d4f39bd5881b26e3247d23bc50fa6aabde16406ee89c82c28b5a52dd6f9e"
310
+ },
311
+ "src/TerraBase/Features/Management/ManagedDatabaseBody.cs": {
312
+ "sha256": "eaafeb932f4189f3f5f8246408a16adc33772c36ba11ab1cec972281d8a5a2fc"
313
+ },
314
+ "src/TerraBase/Features/Management/ProjectApiRoute.cs": {
315
+ "sha256": "f78ac4888e34b0aa76158e9666efaf5de996d73e2b220018e44167ea2d7372cc"
316
+ },
317
+ "src/TerraBase/Features/Management/Queries/CheckSqlEndpoint.cs": {
318
+ "sha256": "d7569e0bfe6395f528e5b93ad6c2c2f3a16859721250cedb3363d65f6f02e197"
319
+ },
320
+ "src/TerraBase/Features/Management/Queries/ExplainSqlEndpoint.cs": {
321
+ "sha256": "a491c12f83bae64724bf36258de26b71556822ef29f94b10995e9ba4d75d6ada"
322
+ },
323
+ "src/TerraBase/Features/Management/Queries/RunSqlEndpoint.cs": {
324
+ "sha256": "a038d67d1c3e4979cc3333d425732c8d1c256035b5528fe5e649e64df93c6279"
325
+ },
326
+ "src/TerraBase/Features/Management/UpdateManagedDatabaseEndpoint.cs": {
327
+ "sha256": "08120d2aa197b7739dfcdb471dd753f08a5f597e96a62c6631b710f7e148021b"
328
+ },
329
+ "src/TerraBase/Features/UserAuth/ProjectToken.cs": {
330
+ "sha256": "dc880e5a063f5148df174bea1455e0058bc4cd5b89f94d26d9f8853e62ad43dc"
331
+ },
332
+ "src/TerraBase/Features/UserAuth/UserAuthenticationHandler.cs": {
333
+ "sha256": "af40f669b8759b3683dfae8454e4b9fd9b05a5588cbf303a28644768942121c5"
334
+ },
335
+ "src/TerraBase/Features/UserAuth/UserAuthExtensions.cs": {
336
+ "sha256": "ee71fc08d5f34231bd2a11029d4cd99f0213e16100841789e54f994bfcc3c38f"
337
+ },
338
+ "src/TerraBase/Features/Documents/ETags.cs": {
339
+ "sha256": "a486f8e5297eaf50c2b5844d646b7d4f1b04cb2bcf542865426bb7a12a44fefc"
340
+ },
341
+ "src/TerraBase/Features/Management/Queries/IQueryService.cs": {
342
+ "sha256": "ef61b792dbadd17fd8911626feff692f5cb1c4177e860de00453b0d386192eb7"
343
+ },
344
+ "src/TerraBase/Features/Management/Queries/SqlSubset.cs": {
345
+ "sha256": "8f5f4be149663febe469a13741cadc5469cfc08de622527bedaaa8fe0e5893fd"
346
+ },
347
+ "src/TerraBase/Features/Management/Queries/QueryService.cs": {
348
+ "sha256": "df439371d7df3fd8de35bd26a7c34bc4b91009f860ed76d99f83315fd813bb64"
349
+ }
350
+ }
351
+ },
352
+ "currentRouteEvidence": [
353
+ {
354
+ "operation": "getDocument",
355
+ "producerOperationId": "getDocument",
356
+ "sourcePath": "src/TerraBase/Features/Documents/GetDocumentEndpoint.cs",
357
+ "sha256": "f2c960cafe784acc67108de412df1134e8c89a2ceac71d1bed6c5654bd5884fa",
358
+ "method": "GET",
359
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/documents/by-key",
360
+ "authorizationPolicy": "ApiKeyScopes.DocumentsRead",
361
+ "permission": "documents:read",
362
+ "requestMediaTypes": [],
363
+ "responseMediaType": "application/json",
364
+ "successStatuses": [
365
+ 200
366
+ ]
367
+ },
368
+ {
369
+ "operation": "putDocument",
370
+ "producerOperationId": "putDocument",
371
+ "sourcePath": "src/TerraBase/Features/Documents/PutDocumentEndpoint.cs",
372
+ "sha256": "894fc735975b86c980a27a73df898fe454f920e7eca0e5c536b5af4cdae25134",
373
+ "method": "PUT",
374
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/documents/by-key",
375
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
376
+ "permission": "documents:write",
377
+ "requestMediaTypes": [
378
+ "application/json"
379
+ ],
380
+ "responseMediaType": "application/json",
381
+ "successStatuses": [
382
+ 200,
383
+ 201
384
+ ]
385
+ },
386
+ {
387
+ "operation": "createDocument",
388
+ "producerOperationId": "createDocument",
389
+ "sourcePath": "src/TerraBase/Features/Documents/CreateDocumentEndpoint.cs",
390
+ "sha256": "25678dbe2d651d1291be796b1e9c75f93762e1e476648629427acce027d99fc5",
391
+ "method": "POST",
392
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/documents",
393
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
394
+ "permission": "documents:write",
395
+ "requestMediaTypes": [
396
+ "application/json"
397
+ ],
398
+ "responseMediaType": "application/json",
399
+ "successStatuses": [
400
+ 201
401
+ ]
402
+ },
403
+ {
404
+ "operation": "patchDocument",
405
+ "producerOperationId": "patchDocument",
406
+ "sourcePath": "src/TerraBase/Features/Documents/PatchDocumentEndpoint.cs",
407
+ "sha256": "c14d7808bea905c49064f9fce5ba3c4b081fd8ebbc539e508c520f4680b08ae0",
408
+ "method": "PATCH",
409
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/documents/by-key",
410
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
411
+ "permission": "documents:write",
412
+ "requestMediaTypes": [
413
+ "application/merge-patch+json",
414
+ "application/vnd.terrabase.ops+json"
415
+ ],
416
+ "responseMediaType": "application/json",
417
+ "successStatuses": [
418
+ 200
419
+ ]
420
+ },
421
+ {
422
+ "operation": "deleteDocument",
423
+ "producerOperationId": "deleteDocument",
424
+ "sourcePath": "src/TerraBase/Features/Documents/DeleteDocumentEndpoint.cs",
425
+ "sha256": "c8062dde557574824d5278f77c736bbe62277d4f2b659c602b6fa4d3a44f9908",
426
+ "method": "DELETE",
427
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/documents/by-key",
428
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
429
+ "permission": "documents:write",
430
+ "requestMediaTypes": [],
431
+ "responseMediaType": "application/json",
432
+ "successStatuses": [
433
+ 200
434
+ ]
435
+ },
436
+ {
437
+ "operation": "commitTransaction",
438
+ "producerOperationId": "runTransaction",
439
+ "sourcePath": "src/TerraBase/Features/Documents/TransactionEndpoint.cs",
440
+ "sha256": "1e518f9c73f28b13e6e1761f4706e4157e89bf50776b6ac73ad44b6e22150c5c",
441
+ "method": "POST",
442
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/transactions",
443
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
444
+ "permission": "documents:write",
445
+ "requestMediaTypes": [
446
+ "application/json"
447
+ ],
448
+ "responseMediaType": "application/json",
449
+ "successStatuses": [
450
+ 200
451
+ ]
452
+ },
453
+ {
454
+ "operation": "queryDocuments",
455
+ "producerOperationId": "queryDocuments",
456
+ "sourcePath": "src/TerraBase/Features/Documents/QueryDocumentsEndpoint.cs",
457
+ "sha256": "9052c75d80ec46bbe113312f45b2cee4b198ae1730ffe90d3eb07f7507db2a93",
458
+ "method": "POST",
459
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/query",
460
+ "authorizationPolicy": "ApiKeyScopes.DocumentsRead",
461
+ "permission": "documents:read",
462
+ "requestMediaTypes": [
463
+ "application/json"
464
+ ],
465
+ "responseMediaType": "application/json",
466
+ "successStatuses": [
467
+ 200
468
+ ]
469
+ },
470
+ {
471
+ "operation": "createCollection",
472
+ "producerOperationId": "createCollection",
473
+ "sourcePath": "src/TerraBase/Features/Documents/CreateCollectionEndpoint.cs",
474
+ "sha256": "dfc7b259119127dd6bdafc34b97194659441500c47bdf7a3171e052c1547bc83",
475
+ "method": "POST",
476
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections",
477
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
478
+ "permission": "documents:write",
479
+ "requestMediaTypes": [
480
+ "application/json"
481
+ ],
482
+ "responseMediaType": "application/json",
483
+ "successStatuses": [
484
+ 201
485
+ ]
486
+ },
487
+ {
488
+ "operation": "getCollection",
489
+ "producerOperationId": "getCollection",
490
+ "sourcePath": "src/TerraBase/Features/Documents/GetCollectionEndpoint.cs",
491
+ "sha256": "28af27dda8c6dceadebdc00562c33ef93b8f88f8f6b30e784edfa7dea4a18907",
492
+ "method": "GET",
493
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}",
494
+ "authorizationPolicy": "ApiKeyScopes.DocumentsRead",
495
+ "permission": "documents:read",
496
+ "requestMediaTypes": [],
497
+ "responseMediaType": "application/json",
498
+ "successStatuses": [
499
+ 200
500
+ ]
501
+ },
502
+ {
503
+ "operation": "listCollections",
504
+ "producerOperationId": "listCollections",
505
+ "sourcePath": "src/TerraBase/Features/Documents/ListCollectionsEndpoint.cs",
506
+ "sha256": "e421d2627ae3eb110ec5ff03803938590114383cdc38dcf9d737879544b296d0",
507
+ "method": "GET",
508
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections",
509
+ "authorizationPolicy": "ApiKeyScopes.DocumentsRead",
510
+ "permission": "documents:read",
511
+ "requestMediaTypes": [],
512
+ "responseMediaType": "application/json",
513
+ "successStatuses": [
514
+ 200
515
+ ]
516
+ },
517
+ {
518
+ "operation": "dropCollection",
519
+ "producerOperationId": "dropCollection",
520
+ "sourcePath": "src/TerraBase/Features/Documents/DropCollectionEndpoint.cs",
521
+ "sha256": "e1a91ca3a740218ea7c994af994ca54301308f92414759f044650d6717f4f2d9",
522
+ "method": "DELETE",
523
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}",
524
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
525
+ "permission": "documents:write",
526
+ "requestMediaTypes": [],
527
+ "responseMediaType": "application/json",
528
+ "successStatuses": [
529
+ 200
530
+ ]
531
+ },
532
+ {
533
+ "operation": "runSql",
534
+ "producerOperationId": "runSql",
535
+ "sourcePath": "src/TerraBase/Features/Management/Queries/RunSqlEndpoint.cs",
536
+ "sha256": "a038d67d1c3e4979cc3333d425732c8d1c256035b5528fe5e649e64df93c6279",
537
+ "method": "POST",
538
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/sql",
539
+ "authorizationPolicy": "ApiKeyScopes.DatabasesRead",
540
+ "permission": "databases:read",
541
+ "requestMediaTypes": [
542
+ "application/json"
543
+ ],
544
+ "responseMediaType": "application/json",
545
+ "successStatuses": [
546
+ 200
547
+ ]
548
+ },
549
+ {
550
+ "operation": "checkSql",
551
+ "producerOperationId": "checkSql",
552
+ "sourcePath": "src/TerraBase/Features/Management/Queries/CheckSqlEndpoint.cs",
553
+ "sha256": "d7569e0bfe6395f528e5b93ad6c2c2f3a16859721250cedb3363d65f6f02e197",
554
+ "method": "POST",
555
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/sql/check",
556
+ "authorizationPolicy": "ApiKeyScopes.DatabasesRead",
557
+ "permission": "databases:read",
558
+ "requestMediaTypes": [
559
+ "application/json"
560
+ ],
561
+ "responseMediaType": "application/json",
562
+ "successStatuses": [
563
+ 200
564
+ ]
565
+ },
566
+ {
567
+ "operation": "explainSql",
568
+ "producerOperationId": "explainSql",
569
+ "sourcePath": "src/TerraBase/Features/Management/Queries/ExplainSqlEndpoint.cs",
570
+ "sha256": "a491c12f83bae64724bf36258de26b71556822ef29f94b10995e9ba4d75d6ada",
571
+ "method": "POST",
572
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/sql/explain",
573
+ "authorizationPolicy": "UserAuthExtensions.PolicyName",
574
+ "permission": "databases:read",
575
+ "requestMediaTypes": [
576
+ "application/json"
577
+ ],
578
+ "responseMediaType": "application/json",
579
+ "successStatuses": [
580
+ 200
581
+ ]
582
+ },
583
+ {
584
+ "operation": "streamDatabaseChanges",
585
+ "producerOperationId": "streamDatabaseChanges",
586
+ "sourcePath": "src/TerraBase/Features/Documents/GetDatabaseChangesEndpoint.cs",
587
+ "sha256": "13ca12352bf33d2e687f4a7fb4d78d6f28f3048f936b14e1db8f9fd947745dd8",
588
+ "method": "GET",
589
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/changes",
590
+ "authorizationPolicy": "ApiKeyScopes.DocumentsRead",
591
+ "permission": "documents:read",
592
+ "requestMediaTypes": [],
593
+ "responseMediaType": "text/event-stream",
594
+ "successStatuses": [
595
+ 200
596
+ ]
597
+ },
598
+ {
599
+ "operation": "listDocuments",
600
+ "producerOperationId": "listDocuments",
601
+ "sourcePath": "src/TerraBase/Features/Documents/ListDocumentsEndpoint.cs",
602
+ "sha256": "99274324f34fcaf92da5637da834bd3963db5d41a39c66515a0cefba0259c207",
603
+ "method": "GET",
604
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/documents",
605
+ "authorizationPolicy": "ApiKeyScopes.DocumentsRead",
606
+ "permission": "documents:read",
607
+ "requestMediaTypes": [],
608
+ "responseMediaType": "application/json",
609
+ "successStatuses": [
610
+ 200
611
+ ]
612
+ },
613
+ {
614
+ "operation": "getCollectionSchema",
615
+ "producerOperationId": "getDeclaredCollectionSchema",
616
+ "sourcePath": "src/TerraBase/Features/Documents/GetCollectionSchemaEndpoint.cs",
617
+ "sha256": "600d89a860177dc3cf20cb90b84e47cc1542afb09041636e300a9d61f3d2a526",
618
+ "method": "GET",
619
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/schema",
620
+ "authorizationPolicy": "ApiKeyScopes.DocumentsRead",
621
+ "permission": "documents:read",
622
+ "requestMediaTypes": [],
623
+ "responseMediaType": "application/json",
624
+ "successStatuses": [
625
+ 200
626
+ ]
627
+ },
628
+ {
629
+ "operation": "putCollectionSchema",
630
+ "producerOperationId": "putDeclaredCollectionSchema",
631
+ "sourcePath": "src/TerraBase/Features/Documents/PutCollectionSchemaEndpoint.cs",
632
+ "sha256": "836d24b6a8137af9fdfce3e9c800c5c47a917802233658f83f9283a59490d3b2",
633
+ "method": "PUT",
634
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/schema",
635
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
636
+ "permission": "documents:write",
637
+ "requestMediaTypes": [
638
+ "application/json"
639
+ ],
640
+ "responseMediaType": "application/json",
641
+ "successStatuses": [
642
+ 200
643
+ ]
644
+ },
645
+ {
646
+ "operation": "deleteCollectionSchema",
647
+ "producerOperationId": "deleteDeclaredCollectionSchema",
648
+ "sourcePath": "src/TerraBase/Features/Documents/DeleteCollectionSchemaEndpoint.cs",
649
+ "sha256": "63fca1ce65c98aeba3f9caa2b12673c8c46b49b40f18180e8c9e08f233ca6830",
650
+ "method": "DELETE",
651
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/schema",
652
+ "authorizationPolicy": "ApiKeyScopes.DocumentsWrite",
653
+ "permission": "documents:write",
654
+ "requestMediaTypes": [],
655
+ "responseMediaType": "application/json",
656
+ "successStatuses": [
657
+ 200
658
+ ]
659
+ },
660
+ {
661
+ "operation": "createDatabase",
662
+ "producerOperationId": "createDatabase",
663
+ "sourcePath": "src/TerraBase/Features/Management/CreateManagedDatabaseEndpoint.cs",
664
+ "sha256": "8302ef780cf65c92aa5f2a86e26fdd811c68e9446fa27f292d53ddf7207aa06a",
665
+ "method": "POST",
666
+ "pathTemplate": "/v1/projects/{project}/databases",
667
+ "authorizationPolicy": "ApiKeyScopes.DatabasesWrite",
668
+ "permission": "databases:write",
669
+ "requestMediaTypes": [
670
+ "application/json"
671
+ ],
672
+ "responseMediaType": "application/json",
673
+ "successStatuses": [
674
+ 201
675
+ ]
676
+ },
677
+ {
678
+ "operation": "listDatabases",
679
+ "producerOperationId": "listDatabases",
680
+ "sourcePath": "src/TerraBase/Features/Management/ListManagedDatabasesEndpoint.cs",
681
+ "sha256": "ddd6d4f39bd5881b26e3247d23bc50fa6aabde16406ee89c82c28b5a52dd6f9e",
682
+ "method": "GET",
683
+ "pathTemplate": "/v1/projects/{project}/databases",
684
+ "authorizationPolicy": "ApiKeyScopes.DatabasesRead",
685
+ "permission": "databases:read",
686
+ "requestMediaTypes": [],
687
+ "responseMediaType": "application/json",
688
+ "successStatuses": [
689
+ 200
690
+ ]
691
+ },
692
+ {
693
+ "operation": "getDatabase",
694
+ "producerOperationId": "getDatabase",
695
+ "sourcePath": "src/TerraBase/Features/Management/GetManagedDatabaseEndpoint.cs",
696
+ "sha256": "263b6ee7698bdc95b1546e5947ff2b12368348d14b833919ff4a2684bfb34d91",
697
+ "method": "GET",
698
+ "pathTemplate": "/v1/projects/{project}/databases/{database}",
699
+ "authorizationPolicy": "ApiKeyScopes.DatabasesRead",
700
+ "permission": "databases:read",
701
+ "requestMediaTypes": [],
702
+ "responseMediaType": "application/json",
703
+ "successStatuses": [
704
+ 200
705
+ ]
706
+ },
707
+ {
708
+ "operation": "updateDatabase",
709
+ "producerOperationId": "updateDatabase",
710
+ "sourcePath": "src/TerraBase/Features/Management/UpdateManagedDatabaseEndpoint.cs",
711
+ "sha256": "08120d2aa197b7739dfcdb471dd753f08a5f597e96a62c6631b710f7e148021b",
712
+ "method": "PATCH",
713
+ "pathTemplate": "/v1/projects/{project}/databases/{database}",
714
+ "authorizationPolicy": "ApiKeyScopes.DatabasesWrite",
715
+ "permission": "databases:write",
716
+ "requestMediaTypes": [
717
+ "application/json"
718
+ ],
719
+ "responseMediaType": "application/json",
720
+ "successStatuses": [
721
+ 200
722
+ ]
723
+ },
724
+ {
725
+ "operation": "deleteDatabase",
726
+ "producerOperationId": "deleteDatabase",
727
+ "sourcePath": "src/TerraBase/Features/Management/DeleteManagedDatabaseEndpoint.cs",
728
+ "sha256": "1f6c26915734fb2e8eefceb613b72a08952c72aafc95a83c658e8caec36f81da",
729
+ "method": "DELETE",
730
+ "pathTemplate": "/v1/projects/{project}/databases/{database}",
731
+ "authorizationPolicy": "ApiKeyScopes.DatabasesWrite",
732
+ "permission": "databases:write",
733
+ "requestMediaTypes": [],
734
+ "responseMediaType": "",
735
+ "successStatuses": [
736
+ 204
737
+ ]
738
+ },
739
+ {
740
+ "operation": "branchDatabase",
741
+ "producerOperationId": "branchDatabase",
742
+ "sourcePath": "src/TerraBase/Features/Management/BranchManagedDatabaseEndpoint.cs",
743
+ "sha256": "16729700b6baa72fd26ebe8c8537f51e3414fd1a439a9d0bcbac211dc6266043",
744
+ "method": "POST",
745
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/branches",
746
+ "authorizationPolicy": "ApiKeyScopes.DatabasesWrite",
747
+ "permission": "databases:write",
748
+ "requestMediaTypes": [
749
+ "application/json"
750
+ ],
751
+ "responseMediaType": "application/json",
752
+ "successStatuses": [
753
+ 201
754
+ ]
755
+ }
756
+ ],
757
+ "currentGeneratedOpenApi": "Unavailable: current route parity is source-bound, not runtime qualification.",
758
+ "routeCount": 26,
128
759
  "routes": [
129
760
  {
130
761
  "producer": "terrabase-csharp",
@@ -140,7 +771,8 @@
140
771
  ],
141
772
  "idempotencyKey": "none",
142
773
  "replaySafe": true,
143
- "producerOperation": {
774
+ "evidence": "current-handler-source",
775
+ "historicalProducerOperation": {
144
776
  "tags": [
145
777
  "Documents"
146
778
  ],
@@ -631,7 +1263,8 @@
631
1263
  ],
632
1264
  "idempotencyKey": "none",
633
1265
  "replaySafe": false,
634
- "producerOperation": {
1266
+ "evidence": "current-handler-source",
1267
+ "historicalProducerOperation": {
635
1268
  "tags": [
636
1269
  "Documents"
637
1270
  ],
@@ -1192,7 +1825,8 @@
1192
1825
  ],
1193
1826
  "idempotencyKey": "none",
1194
1827
  "replaySafe": false,
1195
- "producerOperation": {
1828
+ "evidence": "current-handler-source",
1829
+ "historicalProducerOperation": {
1196
1830
  "tags": [
1197
1831
  "Documents"
1198
1832
  ],
@@ -1711,7 +2345,8 @@
1711
2345
  ],
1712
2346
  "idempotencyKey": "none",
1713
2347
  "replaySafe": false,
1714
- "producerOperation": {
2348
+ "evidence": "current-handler-source",
2349
+ "historicalProducerOperation": {
1715
2350
  "tags": [
1716
2351
  "Documents"
1717
2352
  ],
@@ -2294,7 +2929,8 @@
2294
2929
  ],
2295
2930
  "idempotencyKey": "none",
2296
2931
  "replaySafe": false,
2297
- "producerOperation": {
2932
+ "evidence": "current-handler-source",
2933
+ "historicalProducerOperation": {
2298
2934
  "tags": [
2299
2935
  "Documents"
2300
2936
  ],
@@ -2782,7 +3418,8 @@
2782
3418
  ],
2783
3419
  "idempotencyKey": "none",
2784
3420
  "replaySafe": false,
2785
- "producerOperation": {
3421
+ "evidence": "current-handler-source",
3422
+ "historicalProducerOperation": {
2786
3423
  "tags": [
2787
3424
  "Transactions"
2788
3425
  ],
@@ -3447,7 +4084,8 @@
3447
4084
  ],
3448
4085
  "idempotencyKey": "none",
3449
4086
  "replaySafe": true,
3450
- "producerOperation": {
4087
+ "evidence": "current-handler-source",
4088
+ "historicalProducerOperation": {
3451
4089
  "tags": [
3452
4090
  "Queries"
3453
4091
  ],
@@ -3993,7 +4631,8 @@
3993
4631
  ],
3994
4632
  "idempotencyKey": "none",
3995
4633
  "replaySafe": false,
3996
- "producerOperation": {
4634
+ "evidence": "current-handler-source",
4635
+ "historicalProducerOperation": {
3997
4636
  "tags": [
3998
4637
  "Collections"
3999
4638
  ],
@@ -4461,7 +5100,8 @@
4461
5100
  ],
4462
5101
  "idempotencyKey": "none",
4463
5102
  "replaySafe": true,
4464
- "producerOperation": {
5103
+ "evidence": "current-handler-source",
5104
+ "historicalProducerOperation": {
4465
5105
  "tags": [
4466
5106
  "Collections"
4467
5107
  ],
@@ -4872,7 +5512,8 @@
4872
5512
  ],
4873
5513
  "idempotencyKey": "none",
4874
5514
  "replaySafe": true,
4875
- "producerOperation": {
5515
+ "evidence": "current-handler-source",
5516
+ "historicalProducerOperation": {
4876
5517
  "tags": [
4877
5518
  "Collections"
4878
5519
  ],
@@ -5288,7 +5929,8 @@
5288
5929
  ],
5289
5930
  "idempotencyKey": "none",
5290
5931
  "replaySafe": false,
5291
- "producerOperation": {
5932
+ "evidence": "current-handler-source",
5933
+ "historicalProducerOperation": {
5292
5934
  "tags": [
5293
5935
  "Collections"
5294
5936
  ],
@@ -5700,7 +6342,8 @@
5700
6342
  ],
5701
6343
  "idempotencyKey": "none",
5702
6344
  "replaySafe": true,
5703
- "producerOperation": {
6345
+ "evidence": "historical-release-only; absent from current source",
6346
+ "historicalProducerOperation": {
5704
6347
  "tags": [
5705
6348
  "Live"
5706
6349
  ],
@@ -6224,6 +6867,244 @@
6224
6867
  "shapes:read"
6225
6868
  ]
6226
6869
  }
6870
+ },
6871
+ {
6872
+ "producer": "terrabase-csharp",
6873
+ "client": "TerraBaseV1Client",
6874
+ "operation": "runSql",
6875
+ "method": "POST",
6876
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/sql",
6877
+ "permission": "databases:read",
6878
+ "requestMediaTypes": [
6879
+ "application/json"
6880
+ ],
6881
+ "responseMediaType": "application/json",
6882
+ "successStatuses": [
6883
+ 200
6884
+ ],
6885
+ "idempotencyKey": "none",
6886
+ "replaySafe": true,
6887
+ "evidence": "current-handler-source"
6888
+ },
6889
+ {
6890
+ "producer": "terrabase-csharp",
6891
+ "client": "TerraBaseV1Client",
6892
+ "operation": "checkSql",
6893
+ "method": "POST",
6894
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/sql/check",
6895
+ "permission": "databases:read",
6896
+ "requestMediaTypes": [
6897
+ "application/json"
6898
+ ],
6899
+ "responseMediaType": "application/json",
6900
+ "successStatuses": [
6901
+ 200
6902
+ ],
6903
+ "idempotencyKey": "none",
6904
+ "replaySafe": true,
6905
+ "evidence": "current-handler-source"
6906
+ },
6907
+ {
6908
+ "producer": "terrabase-csharp",
6909
+ "client": "TerraBaseV1Client",
6910
+ "operation": "explainSql",
6911
+ "method": "POST",
6912
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/sql/explain",
6913
+ "permission": "databases:read",
6914
+ "requestMediaTypes": [
6915
+ "application/json"
6916
+ ],
6917
+ "responseMediaType": "application/json",
6918
+ "successStatuses": [
6919
+ 200
6920
+ ],
6921
+ "idempotencyKey": "none",
6922
+ "replaySafe": true,
6923
+ "evidence": "current-handler-source"
6924
+ },
6925
+ {
6926
+ "producer": "terrabase-csharp",
6927
+ "client": "TerraBaseV1Client",
6928
+ "operation": "streamDatabaseChanges",
6929
+ "method": "GET",
6930
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/changes",
6931
+ "permission": "documents:read",
6932
+ "requestMediaTypes": [],
6933
+ "responseMediaType": "text/event-stream",
6934
+ "successStatuses": [
6935
+ 200
6936
+ ],
6937
+ "idempotencyKey": "none",
6938
+ "replaySafe": true,
6939
+ "evidence": "current-handler-source"
6940
+ },
6941
+ {
6942
+ "producer": "terrabase-csharp",
6943
+ "client": "TerraBaseV1Client",
6944
+ "operation": "listDocuments",
6945
+ "method": "GET",
6946
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/documents",
6947
+ "permission": "documents:read",
6948
+ "requestMediaTypes": [],
6949
+ "responseMediaType": "application/json",
6950
+ "successStatuses": [
6951
+ 200
6952
+ ],
6953
+ "idempotencyKey": "none",
6954
+ "replaySafe": true,
6955
+ "evidence": "current-handler-source"
6956
+ },
6957
+ {
6958
+ "producer": "terrabase-csharp",
6959
+ "client": "TerraBaseV1Client",
6960
+ "operation": "getCollectionSchema",
6961
+ "method": "GET",
6962
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/schema",
6963
+ "permission": "documents:read",
6964
+ "requestMediaTypes": [],
6965
+ "responseMediaType": "application/json",
6966
+ "successStatuses": [
6967
+ 200
6968
+ ],
6969
+ "idempotencyKey": "none",
6970
+ "replaySafe": true,
6971
+ "evidence": "current-handler-source"
6972
+ },
6973
+ {
6974
+ "producer": "terrabase-csharp",
6975
+ "client": "TerraBaseV1Client",
6976
+ "operation": "putCollectionSchema",
6977
+ "method": "PUT",
6978
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/schema",
6979
+ "permission": "documents:write",
6980
+ "requestMediaTypes": [
6981
+ "application/json"
6982
+ ],
6983
+ "responseMediaType": "application/json",
6984
+ "successStatuses": [
6985
+ 200
6986
+ ],
6987
+ "idempotencyKey": "none",
6988
+ "replaySafe": false,
6989
+ "evidence": "current-handler-source"
6990
+ },
6991
+ {
6992
+ "producer": "terrabase-csharp",
6993
+ "client": "TerraBaseV1Client",
6994
+ "operation": "deleteCollectionSchema",
6995
+ "method": "DELETE",
6996
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/collections/{collection}/schema",
6997
+ "permission": "documents:write",
6998
+ "requestMediaTypes": [],
6999
+ "responseMediaType": "application/json",
7000
+ "successStatuses": [
7001
+ 200
7002
+ ],
7003
+ "idempotencyKey": "none",
7004
+ "replaySafe": false,
7005
+ "evidence": "current-handler-source"
7006
+ },
7007
+ {
7008
+ "producer": "terrabase-csharp",
7009
+ "client": "TerraBaseV1Client",
7010
+ "operation": "createDatabase",
7011
+ "method": "POST",
7012
+ "pathTemplate": "/v1/projects/{project}/databases",
7013
+ "permission": "databases:write",
7014
+ "requestMediaTypes": [
7015
+ "application/json"
7016
+ ],
7017
+ "responseMediaType": "application/json",
7018
+ "successStatuses": [
7019
+ 201
7020
+ ],
7021
+ "idempotencyKey": "none",
7022
+ "replaySafe": false,
7023
+ "evidence": "current-handler-source"
7024
+ },
7025
+ {
7026
+ "producer": "terrabase-csharp",
7027
+ "client": "TerraBaseV1Client",
7028
+ "operation": "listDatabases",
7029
+ "method": "GET",
7030
+ "pathTemplate": "/v1/projects/{project}/databases",
7031
+ "permission": "databases:read",
7032
+ "requestMediaTypes": [],
7033
+ "responseMediaType": "application/json",
7034
+ "successStatuses": [
7035
+ 200
7036
+ ],
7037
+ "idempotencyKey": "none",
7038
+ "replaySafe": true,
7039
+ "evidence": "current-handler-source"
7040
+ },
7041
+ {
7042
+ "producer": "terrabase-csharp",
7043
+ "client": "TerraBaseV1Client",
7044
+ "operation": "getDatabase",
7045
+ "method": "GET",
7046
+ "pathTemplate": "/v1/projects/{project}/databases/{database}",
7047
+ "permission": "databases:read",
7048
+ "requestMediaTypes": [],
7049
+ "responseMediaType": "application/json",
7050
+ "successStatuses": [
7051
+ 200
7052
+ ],
7053
+ "idempotencyKey": "none",
7054
+ "replaySafe": true,
7055
+ "evidence": "current-handler-source"
7056
+ },
7057
+ {
7058
+ "producer": "terrabase-csharp",
7059
+ "client": "TerraBaseV1Client",
7060
+ "operation": "updateDatabase",
7061
+ "method": "PATCH",
7062
+ "pathTemplate": "/v1/projects/{project}/databases/{database}",
7063
+ "permission": "databases:write",
7064
+ "requestMediaTypes": [
7065
+ "application/json"
7066
+ ],
7067
+ "responseMediaType": "application/json",
7068
+ "successStatuses": [
7069
+ 200
7070
+ ],
7071
+ "idempotencyKey": "none",
7072
+ "replaySafe": false,
7073
+ "evidence": "current-handler-source"
7074
+ },
7075
+ {
7076
+ "producer": "terrabase-csharp",
7077
+ "client": "TerraBaseV1Client",
7078
+ "operation": "deleteDatabase",
7079
+ "method": "DELETE",
7080
+ "pathTemplate": "/v1/projects/{project}/databases/{database}",
7081
+ "permission": "databases:write",
7082
+ "requestMediaTypes": [],
7083
+ "responseMediaType": "",
7084
+ "successStatuses": [
7085
+ 204
7086
+ ],
7087
+ "idempotencyKey": "none",
7088
+ "replaySafe": false,
7089
+ "evidence": "current-handler-source"
7090
+ },
7091
+ {
7092
+ "producer": "terrabase-csharp",
7093
+ "client": "TerraBaseV1Client",
7094
+ "operation": "branchDatabase",
7095
+ "method": "POST",
7096
+ "pathTemplate": "/v1/projects/{project}/databases/{database}/branches",
7097
+ "permission": "databases:write",
7098
+ "requestMediaTypes": [
7099
+ "application/json"
7100
+ ],
7101
+ "responseMediaType": "application/json",
7102
+ "successStatuses": [
7103
+ 201
7104
+ ],
7105
+ "idempotencyKey": "none",
7106
+ "replaySafe": false,
7107
+ "evidence": "current-handler-source"
6227
7108
  }
6228
7109
  ],
6229
7110
  "schemas": {
@@ -8744,5 +9625,5 @@
8744
9625
  "CreateDatabaseEndpoint.cs",
8745
9626
  "SetOrganizationPlanEndpoint.cs"
8746
9627
  ],
8747
- "openapiLimitations": "Producer OpenAPI omits some conditional statuses and the 307 shape redirect; pinned source and real integration tests supplement it. Administrative bootstrap routes are source-bound and excluded from the public document."
9628
+ "openapiLimitations": "Producer OpenAPI omits some conditional statuses and the 307 shape redirect; pinned source and real integration tests supplement it. Historical bootstrap routes remain source-bound. Current sources cover 25 SDK routes; shape is retained only for historical compatibility. Current generated OpenAPI and immutable runtime qualification remain required separately."
8748
9629
  }