@epilot/sdk 2.8.4 → 2.8.5

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 (128) hide show
  1. package/definitions/snapshot-runtime.json +1 -1
  2. package/definitions/snapshot.json +175 -11
  3. package/dist/apis/access-token.cjs +6 -6
  4. package/dist/apis/access-token.js +1 -1
  5. package/dist/apis/address-suggestions.cjs +6 -6
  6. package/dist/apis/address-suggestions.js +1 -1
  7. package/dist/apis/address.cjs +6 -6
  8. package/dist/apis/address.js +1 -1
  9. package/dist/apis/ai-agents.cjs +6 -6
  10. package/dist/apis/ai-agents.js +1 -1
  11. package/dist/apis/app.cjs +6 -6
  12. package/dist/apis/app.js +1 -1
  13. package/dist/apis/audit-logs.cjs +6 -6
  14. package/dist/apis/audit-logs.js +1 -1
  15. package/dist/apis/automation.cjs +6 -6
  16. package/dist/apis/automation.js +1 -1
  17. package/dist/apis/billing.cjs +6 -6
  18. package/dist/apis/billing.js +1 -1
  19. package/dist/apis/blueprint-manifest.cjs +6 -6
  20. package/dist/apis/blueprint-manifest.js +1 -1
  21. package/dist/apis/calendar.cjs +6 -6
  22. package/dist/apis/calendar.js +1 -1
  23. package/dist/apis/configuration-hub.cjs +6 -6
  24. package/dist/apis/configuration-hub.js +1 -1
  25. package/dist/apis/consent.cjs +6 -6
  26. package/dist/apis/consent.js +1 -1
  27. package/dist/apis/customer-portal.cjs +6 -6
  28. package/dist/apis/customer-portal.js +1 -1
  29. package/dist/apis/dashboard.cjs +6 -6
  30. package/dist/apis/dashboard.js +1 -1
  31. package/dist/apis/data-governance.cjs +6 -6
  32. package/dist/apis/data-governance.js +1 -1
  33. package/dist/apis/deduplication.cjs +6 -6
  34. package/dist/apis/deduplication.js +1 -1
  35. package/dist/apis/design.cjs +6 -6
  36. package/dist/apis/design.js +1 -1
  37. package/dist/apis/document.cjs +6 -6
  38. package/dist/apis/document.js +1 -1
  39. package/dist/apis/email-settings.cjs +6 -6
  40. package/dist/apis/email-settings.js +1 -1
  41. package/dist/apis/email-template.cjs +6 -6
  42. package/dist/apis/email-template.js +1 -1
  43. package/dist/apis/entity-mapping.cjs +6 -6
  44. package/dist/apis/entity-mapping.js +1 -1
  45. package/dist/apis/entity.cjs +6 -6
  46. package/dist/apis/entity.js +1 -1
  47. package/dist/apis/environments.cjs +6 -6
  48. package/dist/apis/environments.js +1 -1
  49. package/dist/apis/event-catalog.cjs +6 -6
  50. package/dist/apis/event-catalog.js +1 -1
  51. package/dist/apis/file.cjs +6 -6
  52. package/dist/apis/file.js +1 -1
  53. package/dist/apis/iban.cjs +6 -6
  54. package/dist/apis/iban.js +1 -1
  55. package/dist/apis/integration-toolkit.cjs +6 -6
  56. package/dist/apis/integration-toolkit.js +1 -1
  57. package/dist/apis/journey.cjs +6 -6
  58. package/dist/apis/journey.js +1 -1
  59. package/dist/apis/kanban.cjs +6 -6
  60. package/dist/apis/kanban.js +1 -1
  61. package/dist/apis/message.cjs +6 -6
  62. package/dist/apis/message.js +1 -1
  63. package/dist/apis/metering.cjs +6 -6
  64. package/dist/apis/metering.js +1 -1
  65. package/dist/apis/notes.cjs +6 -6
  66. package/dist/apis/notes.js +1 -1
  67. package/dist/apis/notification.cjs +6 -6
  68. package/dist/apis/notification.js +1 -1
  69. package/dist/apis/organization.cjs +6 -6
  70. package/dist/apis/organization.js +1 -1
  71. package/dist/apis/partner-directory.cjs +6 -6
  72. package/dist/apis/partner-directory.js +1 -1
  73. package/dist/apis/permissions.cjs +6 -6
  74. package/dist/apis/permissions.js +1 -1
  75. package/dist/apis/pricing-tier.cjs +6 -6
  76. package/dist/apis/pricing-tier.js +1 -1
  77. package/dist/apis/pricing.cjs +6 -6
  78. package/dist/apis/pricing.js +1 -1
  79. package/dist/apis/purpose.cjs +6 -6
  80. package/dist/apis/purpose.js +1 -1
  81. package/dist/apis/query.cjs +6 -6
  82. package/dist/apis/query.js +1 -1
  83. package/dist/apis/sandbox.cjs +6 -6
  84. package/dist/apis/sandbox.js +1 -1
  85. package/dist/apis/sharing.cjs +6 -6
  86. package/dist/apis/sharing.js +1 -1
  87. package/dist/apis/snapshot.cjs +8 -8
  88. package/dist/apis/snapshot.d.cts +2 -2
  89. package/dist/apis/snapshot.d.ts +2 -2
  90. package/dist/apis/snapshot.js +2 -2
  91. package/dist/apis/submission.cjs +6 -6
  92. package/dist/apis/submission.js +1 -1
  93. package/dist/apis/target.cjs +6 -6
  94. package/dist/apis/target.js +1 -1
  95. package/dist/apis/targeting.cjs +6 -6
  96. package/dist/apis/targeting.js +1 -1
  97. package/dist/apis/template-variables.cjs +6 -6
  98. package/dist/apis/template-variables.js +1 -1
  99. package/dist/apis/user.cjs +6 -6
  100. package/dist/apis/user.js +1 -1
  101. package/dist/apis/validation-rules.cjs +6 -6
  102. package/dist/apis/validation-rules.js +1 -1
  103. package/dist/apis/webhooks.cjs +6 -6
  104. package/dist/apis/webhooks.js +1 -1
  105. package/dist/apis/workflow-definition.cjs +6 -6
  106. package/dist/apis/workflow-definition.js +1 -1
  107. package/dist/apis/workflow.cjs +6 -6
  108. package/dist/apis/workflow.js +1 -1
  109. package/dist/chunk-4SZCKUY2.js +14 -0
  110. package/dist/{chunk-TP3MI5V5.js → chunk-5FXMXMNX.js} +2 -2
  111. package/dist/chunk-ULKFBO7E.cjs +14 -0
  112. package/dist/{chunk-M432U2EN.cjs → chunk-XRIEGQXL.cjs} +2 -2
  113. package/dist/index.cjs +10 -10
  114. package/dist/index.d.cts +1 -1
  115. package/dist/index.d.ts +1 -1
  116. package/dist/index.js +2 -2
  117. package/dist/snapshot-GDJOEFJQ.js +7 -0
  118. package/dist/snapshot-UKV54UQQ.cjs +7 -0
  119. package/dist/{snapshot-runtime-XUQIDON7.cjs → snapshot-runtime-5TT575JS.cjs} +2 -2
  120. package/dist/{snapshot-runtime-EXWPPYJI.js → snapshot-runtime-KWRGOKF4.js} +1 -1
  121. package/dist/{snapshot.d-BX0xhQlH.d.cts → snapshot.d-C-n4wkIu.d.cts} +185 -20
  122. package/dist/{snapshot.d-BX0xhQlH.d.ts → snapshot.d-C-n4wkIu.d.ts} +185 -20
  123. package/docs/snapshot.md +99 -6
  124. package/package.json +1 -1
  125. package/dist/chunk-DFYZ3LS2.cjs +0 -14
  126. package/dist/chunk-GUYARNLI.js +0 -14
  127. package/dist/snapshot-CTKT2ILE.cjs +0 -7
  128. package/dist/snapshot-XYFMWDVA.js +0 -7
package/docs/snapshot.md CHANGED
@@ -27,6 +27,7 @@ const { data } = await snapshotClient.createSnapshot(...)
27
27
  **Snapshots**
28
28
  - [`createSnapshot`](#createsnapshot)
29
29
  - [`listSnapshots`](#listsnapshots)
30
+ - [`captureOrgSnapshot`](#captureorgsnapshot)
30
31
  - [`getSnapshot`](#getsnapshot)
31
32
  - [`deleteSnapshot`](#deletesnapshot)
32
33
  - [`restoreSnapshot`](#restoresnapshot)
@@ -36,11 +37,13 @@ const { data } = await snapshotClient.createSnapshot(...)
36
37
 
37
38
  **Schemas**
38
39
  - [`Error`](#error)
40
+ - [`EmptyInventoryError`](#emptyinventoryerror)
39
41
  - [`ResourceRef`](#resourceref)
40
42
  - [`SnapshotResourceSummary`](#snapshotresourcesummary)
41
43
  - [`SnapshotResourceList`](#snapshotresourcelist)
42
44
  - [`SnapshotResourceDetail`](#snapshotresourcedetail)
43
45
  - [`CreateSnapshotRequest`](#createsnapshotrequest)
46
+ - [`CreateOrgSnapshotRequest`](#createorgsnapshotrequest)
44
47
  - [`CreateSnapshotResponse`](#createsnapshotresponse)
45
48
  - [`RestoreSnapshotRequest`](#restoresnapshotrequest)
46
49
  - [`RestoreSnapshotResponse`](#restoresnapshotresponse)
@@ -145,7 +148,15 @@ const { data } = await client.listSnapshots({
145
148
  ]
146
149
  }
147
150
  ],
148
- "matched_count": 0
151
+ "matched_count": 0,
152
+ "scope": "selection",
153
+ "expires_at": "1970-01-01T00:00:00.000Z",
154
+ "capture_summary": {
155
+ "total": 0,
156
+ "captured": 0,
157
+ "skipped": 0,
158
+ "failed": 0
159
+ }
149
160
  }
150
161
  ]
151
162
  }
@@ -155,6 +166,30 @@ const { data } = await client.listSnapshots({
155
166
 
156
167
  ---
157
168
 
169
+ ### `captureOrgSnapshot`
170
+
171
+ Snapshot the caller's whole organization now. Fetches a fresh inventory
172
+ of the org's configuration resources from configuration-hub-api, persists
173
+ it as an inventory artifact, and starts a `scope: "org
174
+
175
+ `POST /v1/snapshots:capture-org`
176
+
177
+ ```ts
178
+ const { data } = await client.captureOrgSnapshot(
179
+ null,
180
+ {
181
+ name: 'string',
182
+ retention: {
183
+ value: 1,
184
+ unit: 'days'
185
+ },
186
+ excluded_types: ['string']
187
+ },
188
+ )
189
+ ```
190
+
191
+ ---
192
+
158
193
  ### `getSnapshot`
159
194
 
160
195
  Fetch a snapshot's metadata. Poll this endpoint to track create/restore progress.
@@ -217,7 +252,15 @@ const { data } = await client.getSnapshot({
217
252
  ]
218
253
  }
219
254
  ],
220
- "matched_count": 0
255
+ "matched_count": 0,
256
+ "scope": "selection",
257
+ "expires_at": "1970-01-01T00:00:00.000Z",
258
+ "capture_summary": {
259
+ "total": 0,
260
+ "captured": 0,
261
+ "skipped": 0,
262
+ "failed": 0
263
+ }
221
264
  }
222
265
  ```
223
266
 
@@ -253,7 +296,8 @@ const { data } = await client.restoreSnapshot(
253
296
  id: '123e4567-e89b-12d3-a456-426614174000',
254
297
  },
255
298
  {
256
- mode: 'overwrite'
299
+ preserve_modified: false,
300
+ preserve_co_owned: false
257
301
  },
258
302
  )
259
303
  ```
@@ -375,6 +419,23 @@ type Error = {
375
419
  }
376
420
  ```
377
421
 
422
+ ### `EmptyInventoryError`
423
+
424
+ Returned (422) when the org inventory contains no capturable resources
425
+ after filtering out sensitive, unsupported, and excluded types. The
426
+ `skipped_types` array explains why every type was dropped.
427
+
428
+
429
+ ```ts
430
+ type EmptyInventoryError = {
431
+ message: string
432
+ skipped_types: Array<{
433
+ type: string
434
+ reason: string
435
+ }>
436
+ }
437
+ ```
438
+
378
439
  ### `ResourceRef`
379
440
 
380
441
  ```ts
@@ -436,7 +497,7 @@ type SnapshotResourceDetail = {
436
497
  type CreateSnapshotRequest = {
437
498
  name: string
438
499
  description?: string
439
- trigger?: "manual" | "sync" | "blueprint_install"
500
+ trigger?: "manual" | "sync" | "blueprint_install" | "scheduled"
440
501
  blueprint_instance_id?: string
441
502
  resources: Array<{
442
503
  type: string
@@ -445,6 +506,23 @@ type CreateSnapshotRequest = {
445
506
  }
446
507
  ```
447
508
 
509
+ ### `CreateOrgSnapshotRequest`
510
+
511
+ Request body for `captureOrgSnapshot`. All fields optional — an empty body
512
+ snapshots the whole org with a default name and the 90-day default TTL.
513
+
514
+
515
+ ```ts
516
+ type CreateOrgSnapshotRequest = {
517
+ name?: string
518
+ retention?: {
519
+ value: number
520
+ unit: "days" | "weeks" | "months"
521
+ }
522
+ excluded_types?: string[]
523
+ }
524
+ ```
525
+
448
526
  ### `CreateSnapshotResponse`
449
527
 
450
528
  ```ts
@@ -458,9 +536,16 @@ type CreateSnapshotResponse = {
458
536
 
459
537
  ### `RestoreSnapshotRequest`
460
538
 
539
+ Both flags default to `false`, which restores every captured resource —
540
+ Config Hub's manual-restore semantics. blueprint-manifest-api sets
541
+ both `true` when reverting a blueprint install so user edits and
542
+ cross-blueprint contributions survive. Each flag is independent so a
543
+ caller can preserve edits w
544
+
461
545
  ```ts
462
546
  type RestoreSnapshotRequest = {
463
- mode?: "overwrite" | "preserve_edits"
547
+ preserve_modified?: boolean
548
+ preserve_co_owned?: boolean
464
549
  }
465
550
  ```
466
551
 
@@ -481,7 +566,7 @@ type Snapshot = {
481
566
  org_id: string
482
567
  name: string
483
568
  description?: string
484
- trigger: "manual" | "sync" | "blueprint_install"
569
+ trigger: "manual" | "sync" | "blueprint_install" | "scheduled"
485
570
  blueprint_instance_id?: string
486
571
  resource_counts: Record<string, number>
487
572
  create: {
@@ -517,6 +602,14 @@ type Snapshot = {
517
602
  }>
518
603
  }>
519
604
  matched_count?: number
605
+ scope?: "selection" | "org"
606
+ expires_at?: string // date-time
607
+ capture_summary?: {
608
+ total: number
609
+ captured: number
610
+ skipped: number
611
+ failed: number
612
+ }
520
613
  }
521
614
  ```
522
615
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/sdk",
3
- "version": "2.8.4",
3
+ "version": "2.8.5",
4
4
  "description": "JavaScript/TypeScript SDK for epilot APIs",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -1,14 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
- var _chunkNJK5F5TFcjs = require('./chunk-NJK5F5TF.cjs');
4
-
5
- // src/definitions/snapshot-runtime.json
6
- var require_snapshot_runtime = _chunkNJK5F5TFcjs.__commonJS.call(void 0, {
7
- "src/definitions/snapshot-runtime.json"(exports, module) {
8
- module.exports = { s: "https://snapshot.sls.epilot.io", o: [["createSnapshot", "post", "/v1/snapshots", null, 1], ["listSnapshots", "get", "/v1/snapshots", [["cursor", "q"], ["size", "q"], ["resource", "q"]]], ["getSnapshot", "get", "/v1/snapshots/{id}"], ["deleteSnapshot", "delete", "/v1/snapshots/{id}"], ["restoreSnapshot", "post", "/v1/snapshots/{id}:restore", null, 1], ["listSnapshotResources", "get", "/v1/snapshots/{id}/resources"], ["getSnapshotResource", "get", "/v1/snapshots/{id}/resources/{lineage_id}"], ["listDependencies", "post", "/v1/snapshots:list-dependencies", null, 1]], v: "3.0.3", pp: { "/v1/snapshots/{id}": [["id", "p", true]], "/v1/snapshots/{id}:restore": [["id", "p", true]], "/v1/snapshots/{id}/resources": [["id", "p", true]], "/v1/snapshots/{id}/resources/{lineage_id}": [["id", "p", true], ["lineage_id", "p", true]] } };
9
- }
10
- });
11
-
12
-
13
-
14
- exports.require_snapshot_runtime = require_snapshot_runtime;
@@ -1,14 +0,0 @@
1
- import {
2
- __commonJS
3
- } from "./chunk-YPSWSI3M.js";
4
-
5
- // src/definitions/snapshot-runtime.json
6
- var require_snapshot_runtime = __commonJS({
7
- "src/definitions/snapshot-runtime.json"(exports, module) {
8
- module.exports = { s: "https://snapshot.sls.epilot.io", o: [["createSnapshot", "post", "/v1/snapshots", null, 1], ["listSnapshots", "get", "/v1/snapshots", [["cursor", "q"], ["size", "q"], ["resource", "q"]]], ["getSnapshot", "get", "/v1/snapshots/{id}"], ["deleteSnapshot", "delete", "/v1/snapshots/{id}"], ["restoreSnapshot", "post", "/v1/snapshots/{id}:restore", null, 1], ["listSnapshotResources", "get", "/v1/snapshots/{id}/resources"], ["getSnapshotResource", "get", "/v1/snapshots/{id}/resources/{lineage_id}"], ["listDependencies", "post", "/v1/snapshots:list-dependencies", null, 1]], v: "3.0.3", pp: { "/v1/snapshots/{id}": [["id", "p", true]], "/v1/snapshots/{id}:restore": [["id", "p", true]], "/v1/snapshots/{id}/resources": [["id", "p", true]], "/v1/snapshots/{id}/resources/{lineage_id}": [["id", "p", true], ["lineage_id", "p", true]] } };
9
- }
10
- });
11
-
12
- export {
13
- require_snapshot_runtime
14
- };
@@ -1,7 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
2
-
3
- // src/docs/snapshot.json
4
- var snapshot_default = '# Snapshot API\n\n- **Base URL:** `https://snapshot.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/snapshot](https://docs.epilot.io/api/snapshot)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.snapshot.createSnapshot(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/snapshot\'\n\nconst snapshotClient = getClient()\nauthorize(snapshotClient, () => \'<token>\')\nconst { data } = await snapshotClient.createSnapshot(...)\n```\n\n## Operations\n\n**Snapshots**\n- [`createSnapshot`](#createsnapshot)\n- [`listSnapshots`](#listsnapshots)\n- [`getSnapshot`](#getsnapshot)\n- [`deleteSnapshot`](#deletesnapshot)\n- [`restoreSnapshot`](#restoresnapshot)\n- [`listSnapshotResources`](#listsnapshotresources)\n- [`getSnapshotResource`](#getsnapshotresource)\n- [`listDependencies`](#listdependencies)\n\n**Schemas**\n- [`Error`](#error)\n- [`ResourceRef`](#resourceref)\n- [`SnapshotResourceSummary`](#snapshotresourcesummary)\n- [`SnapshotResourceList`](#snapshotresourcelist)\n- [`SnapshotResourceDetail`](#snapshotresourcedetail)\n- [`CreateSnapshotRequest`](#createsnapshotrequest)\n- [`CreateSnapshotResponse`](#createsnapshotresponse)\n- [`RestoreSnapshotRequest`](#restoresnapshotrequest)\n- [`RestoreSnapshotResponse`](#restoresnapshotresponse)\n- [`Snapshot`](#snapshot)\n- [`Operation`](#operation)\n- [`SkippedResource`](#skippedresource)\n- [`CallerIdentity`](#calleridentity)\n\n### `createSnapshot`\n\nCreate a new snapshot of the given resources. Async \u2014 returns immediately\nwith a snapshot ID; client polls `getSnapshot` until `create.status`\nmoves from `in_progress` to `completed` or `failed`.\n\n`POST /v1/snapshots`\n\n```ts\nconst { data } = await client.createSnapshot(\n null,\n {\n name: \'string\',\n description: \'string\',\n trigger: \'manual\',\n blueprint_instance_id: \'string\',\n resources: [\n {\n type: \'string\',\n id: \'string\'\n }\n ]\n },\n)\n```\n\n---\n\n### `listSnapshots`\n\nList snapshots for the caller\'s organization, newest first.\n\n`GET /v1/snapshots`\n\n```ts\nconst { data } = await client.listSnapshots({\n cursor: \'example\',\n size: 1,\n resource: [\'...\'],\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "page_size": 0,\n "cursor": "string",\n "results": [\n {\n "id": "string",\n "org_id": "string",\n "name": "string",\n "description": "string",\n "trigger": "manual",\n "blueprint_instance_id": "string",\n "resource_counts": {},\n "create": {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n },\n "restores": [\n {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n }\n ],\n "matched_count": 0\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getSnapshot`\n\nFetch a snapshot\'s metadata. Poll this endpoint to track create/restore progress.\n\n`GET /v1/snapshots/{id}`\n\n```ts\nconst { data } = await client.getSnapshot({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "string",\n "org_id": "string",\n "name": "string",\n "description": "string",\n "trigger": "manual",\n "blueprint_instance_id": "string",\n "resource_counts": {},\n "create": {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n },\n "restores": [\n {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n }\n ],\n "matched_count": 0\n}\n```\n\n</details>\n\n---\n\n### `deleteSnapshot`\n\nDelete a snapshot\'s metadata and S3 manifest.\n\n`DELETE /v1/snapshots/{id}`\n\n```ts\nconst { data } = await client.deleteSnapshot({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `restoreSnapshot`\n\nRestore a snapshot to the org. Async \u2014 returns immediately; client polls\n`getSnapshot` until the latest entry in `restores` moves from\n`in_progress` to one of `completed | partial | failed`.\n\n`POST /v1/snapshots/{id}:restore`\n\n```ts\nconst { data } = await client.restoreSnapshot(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n mode: \'overwrite\'\n },\n)\n```\n\n---\n\n### `listSnapshotResources`\n\nList the resources captured in this snapshot. Returns lightweight\nidentity fields per resource \u2014 payloads are fetched via the\nsingle-resource endpoint when needed.\n\n`GET /v1/snapshots/{id}/resources`\n\n```ts\nconst { data } = await client.listSnapshotResources({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "resources": [\n {\n "lineage_id": "string",\n "target_id": "string",\n "type": "string",\n "name": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getSnapshotResource`\n\nFetch one captured resource with its full payload. For UI views\nthat diff the captured state against the current destination.\n\n`GET /v1/snapshots/{id}/resources/{lineage_id}`\n\n```ts\nconst { data } = await client.getSnapshotResource({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n lineage_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "lineage_id": "string",\n "target_id": "string",\n "type": "string",\n "name": "string",\n "captured": {}\n}\n```\n\n</details>\n\n---\n\n### `listDependencies`\n\nWalk the dependency tree for a set of resources and return the full\ntransitive closure, topologically sorted.\n\n`POST /v1/snapshots:list-dependencies`\n\n```ts\nconst { data } = await client.listDependencies(\n null,\n {\n resources: [\n {\n type: \'string\',\n id: \'string\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "dependencies": [\n {\n "type": "string",\n "id": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `Error`\n\n```ts\ntype Error = {\n status: number\n error: string\n}\n```\n\n### `ResourceRef`\n\n```ts\ntype ResourceRef = {\n type: string\n id: string\n}\n```\n\n### `SnapshotResourceSummary`\n\nLightweight identity for a captured resource. Returned by\n`listSnapshotResources`; the full payload is fetched separately via\n`getSnapshotResource` when needed.\n\n\n```ts\ntype SnapshotResourceSummary = {\n lineage_id: string\n target_id: string\n type: string\n name?: string\n}\n```\n\n### `SnapshotResourceList`\n\n```ts\ntype SnapshotResourceList = {\n resources: Array<{\n lineage_id: string\n target_id: string\n type: string\n name?: string\n }>\n}\n```\n\n### `SnapshotResourceDetail`\n\nA single captured resource with its full payload. The identity fields\nmatch `SnapshotResourceSummary`; the `captured` payload is the\npre-install state at snapshot time.\n\n\n```ts\ntype SnapshotResourceDetail = {\n lineage_id: string\n target_id: string\n type: string\n name?: string\n captured: Record<string, unknown>\n}\n```\n\n### `CreateSnapshotRequest`\n\n```ts\ntype CreateSnapshotRequest = {\n name: string\n description?: string\n trigger?: "manual" | "sync" | "blueprint_install"\n blueprint_instance_id?: string\n resources: Array<{\n type: string\n id: string\n }>\n}\n```\n\n### `CreateSnapshotResponse`\n\n```ts\ntype CreateSnapshotResponse = {\n id: string\n name: string\n status: "creating"\n created_at: string // date-time\n}\n```\n\n### `RestoreSnapshotRequest`\n\n```ts\ntype RestoreSnapshotRequest = {\n mode?: "overwrite" | "preserve_edits"\n}\n```\n\n### `RestoreSnapshotResponse`\n\n```ts\ntype RestoreSnapshotResponse = {\n id: string\n status: "restoring"\n}\n```\n\n### `Snapshot`\n\n```ts\ntype Snapshot = {\n id: string\n org_id: string\n name: string\n description?: string\n trigger: "manual" | "sync" | "blueprint_install"\n blueprint_instance_id?: string\n resource_counts: Record<string, number>\n create: {\n type: "create" | "restore"\n started_at: string // date-time\n completed_at?: string // date-time\n status: "in_progress" | "completed" | "partial" | "failed"\n error?: string\n triggered_by: {\n name: { ... }\n user_id?: { ... }\n token_id?: { ... }\n }\n skipped?: Array<{\n lineage_id: { ... }\n reason: { ... }\n }>\n }\n restores: Array<{\n type: "create" | "restore"\n started_at: string // date-time\n completed_at?: string // date-time\n status: "in_progress" | "completed" | "partial" | "failed"\n error?: string\n triggered_by: {\n name: { ... }\n user_id?: { ... }\n token_id?: { ... }\n }\n skipped?: Array<{\n lineage_id: { ... }\n reason: { ... }\n }>\n }>\n matched_count?: number\n}\n```\n\n### `Operation`\n\n```ts\ntype Operation = {\n type: "create" | "restore"\n started_at: string // date-time\n completed_at?: string // date-time\n status: "in_progress" | "completed" | "partial" | "failed"\n error?: string\n triggered_by: {\n name: string\n user_id?: string\n token_id?: string\n }\n skipped?: Array<{\n lineage_id: string\n reason: "modified" | "co_owned"\n }>\n}\n```\n\n### `SkippedResource`\n\n```ts\ntype SkippedResource = {\n lineage_id: string\n reason: "modified" | "co_owned"\n}\n```\n\n### `CallerIdentity`\n\n```ts\ntype CallerIdentity = {\n name: string\n user_id?: string\n token_id?: string\n}\n```\n';
5
-
6
-
7
- exports.default = snapshot_default;
@@ -1,7 +0,0 @@
1
- import "./chunk-YPSWSI3M.js";
2
-
3
- // src/docs/snapshot.json
4
- var snapshot_default = '# Snapshot API\n\n- **Base URL:** `https://snapshot.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/snapshot](https://docs.epilot.io/api/snapshot)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.snapshot.createSnapshot(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/snapshot\'\n\nconst snapshotClient = getClient()\nauthorize(snapshotClient, () => \'<token>\')\nconst { data } = await snapshotClient.createSnapshot(...)\n```\n\n## Operations\n\n**Snapshots**\n- [`createSnapshot`](#createsnapshot)\n- [`listSnapshots`](#listsnapshots)\n- [`getSnapshot`](#getsnapshot)\n- [`deleteSnapshot`](#deletesnapshot)\n- [`restoreSnapshot`](#restoresnapshot)\n- [`listSnapshotResources`](#listsnapshotresources)\n- [`getSnapshotResource`](#getsnapshotresource)\n- [`listDependencies`](#listdependencies)\n\n**Schemas**\n- [`Error`](#error)\n- [`ResourceRef`](#resourceref)\n- [`SnapshotResourceSummary`](#snapshotresourcesummary)\n- [`SnapshotResourceList`](#snapshotresourcelist)\n- [`SnapshotResourceDetail`](#snapshotresourcedetail)\n- [`CreateSnapshotRequest`](#createsnapshotrequest)\n- [`CreateSnapshotResponse`](#createsnapshotresponse)\n- [`RestoreSnapshotRequest`](#restoresnapshotrequest)\n- [`RestoreSnapshotResponse`](#restoresnapshotresponse)\n- [`Snapshot`](#snapshot)\n- [`Operation`](#operation)\n- [`SkippedResource`](#skippedresource)\n- [`CallerIdentity`](#calleridentity)\n\n### `createSnapshot`\n\nCreate a new snapshot of the given resources. Async \u2014 returns immediately\nwith a snapshot ID; client polls `getSnapshot` until `create.status`\nmoves from `in_progress` to `completed` or `failed`.\n\n`POST /v1/snapshots`\n\n```ts\nconst { data } = await client.createSnapshot(\n null,\n {\n name: \'string\',\n description: \'string\',\n trigger: \'manual\',\n blueprint_instance_id: \'string\',\n resources: [\n {\n type: \'string\',\n id: \'string\'\n }\n ]\n },\n)\n```\n\n---\n\n### `listSnapshots`\n\nList snapshots for the caller\'s organization, newest first.\n\n`GET /v1/snapshots`\n\n```ts\nconst { data } = await client.listSnapshots({\n cursor: \'example\',\n size: 1,\n resource: [\'...\'],\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "page_size": 0,\n "cursor": "string",\n "results": [\n {\n "id": "string",\n "org_id": "string",\n "name": "string",\n "description": "string",\n "trigger": "manual",\n "blueprint_instance_id": "string",\n "resource_counts": {},\n "create": {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n },\n "restores": [\n {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n }\n ],\n "matched_count": 0\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getSnapshot`\n\nFetch a snapshot\'s metadata. Poll this endpoint to track create/restore progress.\n\n`GET /v1/snapshots/{id}`\n\n```ts\nconst { data } = await client.getSnapshot({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "string",\n "org_id": "string",\n "name": "string",\n "description": "string",\n "trigger": "manual",\n "blueprint_instance_id": "string",\n "resource_counts": {},\n "create": {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n },\n "restores": [\n {\n "type": "create",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "status": "in_progress",\n "error": "string",\n "triggered_by": {\n "name": "string",\n "user_id": "string",\n "token_id": "string"\n },\n "skipped": [\n {\n "lineage_id": "string",\n "reason": "modified"\n }\n ]\n }\n ],\n "matched_count": 0\n}\n```\n\n</details>\n\n---\n\n### `deleteSnapshot`\n\nDelete a snapshot\'s metadata and S3 manifest.\n\n`DELETE /v1/snapshots/{id}`\n\n```ts\nconst { data } = await client.deleteSnapshot({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `restoreSnapshot`\n\nRestore a snapshot to the org. Async \u2014 returns immediately; client polls\n`getSnapshot` until the latest entry in `restores` moves from\n`in_progress` to one of `completed | partial | failed`.\n\n`POST /v1/snapshots/{id}:restore`\n\n```ts\nconst { data } = await client.restoreSnapshot(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n mode: \'overwrite\'\n },\n)\n```\n\n---\n\n### `listSnapshotResources`\n\nList the resources captured in this snapshot. Returns lightweight\nidentity fields per resource \u2014 payloads are fetched via the\nsingle-resource endpoint when needed.\n\n`GET /v1/snapshots/{id}/resources`\n\n```ts\nconst { data } = await client.listSnapshotResources({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "resources": [\n {\n "lineage_id": "string",\n "target_id": "string",\n "type": "string",\n "name": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getSnapshotResource`\n\nFetch one captured resource with its full payload. For UI views\nthat diff the captured state against the current destination.\n\n`GET /v1/snapshots/{id}/resources/{lineage_id}`\n\n```ts\nconst { data } = await client.getSnapshotResource({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n lineage_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "lineage_id": "string",\n "target_id": "string",\n "type": "string",\n "name": "string",\n "captured": {}\n}\n```\n\n</details>\n\n---\n\n### `listDependencies`\n\nWalk the dependency tree for a set of resources and return the full\ntransitive closure, topologically sorted.\n\n`POST /v1/snapshots:list-dependencies`\n\n```ts\nconst { data } = await client.listDependencies(\n null,\n {\n resources: [\n {\n type: \'string\',\n id: \'string\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "dependencies": [\n {\n "type": "string",\n "id": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `Error`\n\n```ts\ntype Error = {\n status: number\n error: string\n}\n```\n\n### `ResourceRef`\n\n```ts\ntype ResourceRef = {\n type: string\n id: string\n}\n```\n\n### `SnapshotResourceSummary`\n\nLightweight identity for a captured resource. Returned by\n`listSnapshotResources`; the full payload is fetched separately via\n`getSnapshotResource` when needed.\n\n\n```ts\ntype SnapshotResourceSummary = {\n lineage_id: string\n target_id: string\n type: string\n name?: string\n}\n```\n\n### `SnapshotResourceList`\n\n```ts\ntype SnapshotResourceList = {\n resources: Array<{\n lineage_id: string\n target_id: string\n type: string\n name?: string\n }>\n}\n```\n\n### `SnapshotResourceDetail`\n\nA single captured resource with its full payload. The identity fields\nmatch `SnapshotResourceSummary`; the `captured` payload is the\npre-install state at snapshot time.\n\n\n```ts\ntype SnapshotResourceDetail = {\n lineage_id: string\n target_id: string\n type: string\n name?: string\n captured: Record<string, unknown>\n}\n```\n\n### `CreateSnapshotRequest`\n\n```ts\ntype CreateSnapshotRequest = {\n name: string\n description?: string\n trigger?: "manual" | "sync" | "blueprint_install"\n blueprint_instance_id?: string\n resources: Array<{\n type: string\n id: string\n }>\n}\n```\n\n### `CreateSnapshotResponse`\n\n```ts\ntype CreateSnapshotResponse = {\n id: string\n name: string\n status: "creating"\n created_at: string // date-time\n}\n```\n\n### `RestoreSnapshotRequest`\n\n```ts\ntype RestoreSnapshotRequest = {\n mode?: "overwrite" | "preserve_edits"\n}\n```\n\n### `RestoreSnapshotResponse`\n\n```ts\ntype RestoreSnapshotResponse = {\n id: string\n status: "restoring"\n}\n```\n\n### `Snapshot`\n\n```ts\ntype Snapshot = {\n id: string\n org_id: string\n name: string\n description?: string\n trigger: "manual" | "sync" | "blueprint_install"\n blueprint_instance_id?: string\n resource_counts: Record<string, number>\n create: {\n type: "create" | "restore"\n started_at: string // date-time\n completed_at?: string // date-time\n status: "in_progress" | "completed" | "partial" | "failed"\n error?: string\n triggered_by: {\n name: { ... }\n user_id?: { ... }\n token_id?: { ... }\n }\n skipped?: Array<{\n lineage_id: { ... }\n reason: { ... }\n }>\n }\n restores: Array<{\n type: "create" | "restore"\n started_at: string // date-time\n completed_at?: string // date-time\n status: "in_progress" | "completed" | "partial" | "failed"\n error?: string\n triggered_by: {\n name: { ... }\n user_id?: { ... }\n token_id?: { ... }\n }\n skipped?: Array<{\n lineage_id: { ... }\n reason: { ... }\n }>\n }>\n matched_count?: number\n}\n```\n\n### `Operation`\n\n```ts\ntype Operation = {\n type: "create" | "restore"\n started_at: string // date-time\n completed_at?: string // date-time\n status: "in_progress" | "completed" | "partial" | "failed"\n error?: string\n triggered_by: {\n name: string\n user_id?: string\n token_id?: string\n }\n skipped?: Array<{\n lineage_id: string\n reason: "modified" | "co_owned"\n }>\n}\n```\n\n### `SkippedResource`\n\n```ts\ntype SkippedResource = {\n lineage_id: string\n reason: "modified" | "co_owned"\n}\n```\n\n### `CallerIdentity`\n\n```ts\ntype CallerIdentity = {\n name: string\n user_id?: string\n token_id?: string\n}\n```\n';
5
- export {
6
- snapshot_default as default
7
- };