@epilot/sdk 2.8.7 → 2.8.9
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/definitions/access-token-runtime.json +1 -1
- package/definitions/access-token.json +155 -1
- package/definitions/app.json +101 -8
- package/definitions/automation.json +120 -0
- package/definitions/blueprint-manifest-runtime.json +1 -1
- package/definitions/blueprint-manifest.json +1651 -357
- package/definitions/configuration-hub-runtime.json +1 -1
- package/definitions/configuration-hub.json +623 -0
- package/definitions/customer-portal-runtime.json +1 -1
- package/definitions/customer-portal.json +383 -78
- package/definitions/design-runtime.json +1 -1
- package/definitions/design.json +52 -12
- package/definitions/event-catalog-runtime.json +1 -1
- package/definitions/event-catalog.json +168 -12
- package/definitions/file-runtime.json +1 -1
- package/definitions/file.json +152 -4
- package/definitions/integration-toolkit-runtime.json +1 -1
- package/definitions/integration-toolkit.json +782 -13
- package/definitions/journey-runtime.json +1 -1
- package/definitions/journey.json +38 -1
- package/definitions/notes-runtime.json +1 -1
- package/definitions/notes.json +123 -1
- package/definitions/pricing.json +224 -406
- package/definitions/snapshot-runtime.json +1 -0
- package/definitions/snapshot.json +973 -0
- package/definitions/targeting-runtime.json +1 -1
- package/definitions/targeting.json +258 -7
- package/definitions/user-runtime.json +1 -1
- package/definitions/user.json +441 -0
- package/definitions/webhooks.json +31 -0
- package/dist/{ai-agents.d-OkXfr2bz.d.cts → ai-agents.d-CC5IjXrs.d.cts} +0 -2
- package/dist/{ai-agents.d-OkXfr2bz.d.ts → ai-agents.d-CC5IjXrs.d.ts} +0 -2
- package/dist/apis/access-token.cjs +6 -6
- package/dist/apis/access-token.js +1 -1
- package/dist/apis/address-suggestions.cjs +6 -6
- package/dist/apis/address-suggestions.js +1 -1
- package/dist/apis/address.cjs +6 -6
- package/dist/apis/address.js +1 -1
- package/dist/apis/ai-agents.cjs +6 -6
- package/dist/apis/ai-agents.d.cts +2 -2
- package/dist/apis/ai-agents.d.ts +2 -2
- package/dist/apis/ai-agents.js +1 -1
- package/dist/apis/app.cjs +6 -6
- package/dist/apis/app.js +1 -1
- package/dist/apis/audit-logs.cjs +6 -6
- package/dist/apis/audit-logs.js +1 -1
- package/dist/apis/automation.cjs +6 -6
- package/dist/apis/automation.js +1 -1
- package/dist/apis/billing.cjs +6 -6
- package/dist/apis/billing.js +1 -1
- package/dist/apis/blueprint-manifest.cjs +6 -6
- package/dist/apis/blueprint-manifest.js +1 -1
- package/dist/apis/calendar.cjs +6 -6
- package/dist/apis/calendar.js +1 -1
- package/dist/apis/configuration-hub.cjs +6 -6
- package/dist/apis/configuration-hub.js +1 -1
- package/dist/apis/consent.cjs +6 -6
- package/dist/apis/consent.js +1 -1
- package/dist/apis/customer-portal.cjs +6 -6
- package/dist/apis/customer-portal.js +1 -1
- package/dist/apis/dashboard.cjs +6 -6
- package/dist/apis/dashboard.js +1 -1
- package/dist/apis/data-governance.cjs +6 -6
- package/dist/apis/data-governance.js +1 -1
- package/dist/apis/deduplication.cjs +6 -6
- package/dist/apis/deduplication.js +1 -1
- package/dist/apis/design.cjs +6 -6
- package/dist/apis/design.js +1 -1
- package/dist/apis/document.cjs +6 -6
- package/dist/apis/document.js +1 -1
- package/dist/apis/email-settings.cjs +6 -6
- package/dist/apis/email-settings.js +1 -1
- package/dist/apis/email-template.cjs +6 -6
- package/dist/apis/email-template.js +1 -1
- package/dist/apis/entity-mapping.cjs +6 -6
- package/dist/apis/entity-mapping.js +1 -1
- package/dist/apis/entity.cjs +6 -6
- package/dist/apis/entity.js +1 -1
- package/dist/apis/environments.cjs +6 -6
- package/dist/apis/environments.js +1 -1
- package/dist/apis/event-catalog.cjs +6 -6
- package/dist/apis/event-catalog.js +1 -1
- package/dist/apis/file.cjs +6 -6
- package/dist/apis/file.js +1 -1
- package/dist/apis/iban.cjs +6 -6
- package/dist/apis/iban.js +1 -1
- package/dist/apis/integration-toolkit.cjs +6 -6
- package/dist/apis/integration-toolkit.js +1 -1
- package/dist/apis/journey.cjs +6 -6
- package/dist/apis/journey.d.cts +2 -2
- package/dist/apis/journey.d.ts +2 -2
- package/dist/apis/journey.js +1 -1
- package/dist/apis/kanban.cjs +6 -6
- package/dist/apis/kanban.js +1 -1
- package/dist/apis/message.cjs +6 -6
- package/dist/apis/message.js +1 -1
- package/dist/apis/metering.cjs +6 -6
- package/dist/apis/metering.js +1 -1
- package/dist/apis/notes.cjs +6 -6
- package/dist/apis/notes.js +1 -1
- package/dist/apis/notification.cjs +6 -6
- package/dist/apis/notification.js +1 -1
- package/dist/apis/organization.cjs +6 -6
- package/dist/apis/organization.js +1 -1
- package/dist/apis/partner-directory.cjs +6 -6
- package/dist/apis/partner-directory.js +1 -1
- package/dist/apis/permissions.cjs +6 -6
- package/dist/apis/permissions.js +1 -1
- package/dist/apis/pricing-tier.cjs +6 -6
- package/dist/apis/pricing-tier.js +1 -1
- package/dist/apis/pricing.cjs +6 -6
- package/dist/apis/pricing.js +1 -1
- package/dist/apis/purpose.cjs +6 -6
- package/dist/apis/purpose.js +1 -1
- package/dist/apis/query.cjs +6 -6
- package/dist/apis/query.js +1 -1
- package/dist/apis/sandbox.cjs +6 -6
- package/dist/apis/sandbox.js +1 -1
- package/dist/apis/sharing.cjs +6 -6
- package/dist/apis/sharing.js +1 -1
- package/dist/apis/snapshot.cjs +8 -8
- package/dist/apis/snapshot.d.cts +2 -2
- package/dist/apis/snapshot.d.ts +2 -2
- package/dist/apis/snapshot.js +2 -2
- package/dist/apis/submission.cjs +6 -6
- package/dist/apis/submission.js +1 -1
- package/dist/apis/target.cjs +6 -6
- package/dist/apis/target.js +1 -1
- package/dist/apis/targeting.cjs +6 -6
- package/dist/apis/targeting.js +1 -1
- package/dist/apis/template-variables.cjs +6 -6
- package/dist/apis/template-variables.js +1 -1
- package/dist/apis/user.cjs +6 -6
- package/dist/apis/user.js +1 -1
- package/dist/apis/validation-rules.cjs +6 -6
- package/dist/apis/validation-rules.js +1 -1
- package/dist/apis/webhooks.cjs +6 -6
- package/dist/apis/webhooks.js +1 -1
- package/dist/apis/workflow-definition.cjs +6 -6
- package/dist/apis/workflow-definition.js +1 -1
- package/dist/apis/workflow.cjs +6 -6
- package/dist/apis/workflow.js +1 -1
- package/dist/{chunk-7LIGFCRI.cjs → chunk-4GI6KGKZ.cjs} +3 -3
- package/dist/chunk-54QNWEPZ.js +14 -0
- package/dist/{chunk-CMANJ4LY.js → chunk-VMKT7UQS.js} +3 -3
- package/dist/chunk-YXJ4PBFQ.cjs +14 -0
- package/dist/index.cjs +10 -10
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +2 -2
- package/dist/journey-LHVSSVTG.cjs +7 -0
- package/dist/journey-NXL264XW.js +7 -0
- package/dist/{journey.d-BenIUWaO.d.cts → journey.d-B1sOeMHw.d.cts} +16 -3
- package/dist/{journey.d-BenIUWaO.d.ts → journey.d-B1sOeMHw.d.ts} +16 -3
- package/dist/snapshot-6CCO4NYL.js +7 -0
- package/dist/snapshot-GWB56VPP.cjs +7 -0
- package/dist/{snapshot-runtime-5TT575JS.cjs → snapshot-runtime-6DV42FVY.cjs} +2 -2
- package/dist/{snapshot-runtime-KWRGOKF4.js → snapshot-runtime-IW57MINC.js} +1 -1
- package/dist/{snapshot.d-C-n4wkIu.d.cts → snapshot.d-D5z6-hzE.d.cts} +30 -22
- package/dist/{snapshot.d-C-n4wkIu.d.ts → snapshot.d-D5z6-hzE.d.ts} +30 -22
- package/docs/journey.md +28 -8
- package/docs/snapshot.md +8 -6
- package/package.json +1 -1
- package/dist/chunk-4SZCKUY2.js +0 -14
- package/dist/chunk-ULKFBO7E.cjs +0 -14
- package/dist/journey-4DIIPRU4.js +0 -7
- package/dist/journey-ATC3Y5AW.cjs +0 -7
- package/dist/snapshot-GDJOEFJQ.js +0 -7
- package/dist/snapshot-UKV54UQQ.cjs +0 -7
|
@@ -270,6 +270,10 @@ declare namespace Components {
|
|
|
270
270
|
* If true, journey is displayed in read-only mode
|
|
271
271
|
*/
|
|
272
272
|
protected?: boolean;
|
|
273
|
+
/**
|
|
274
|
+
* Whitelist of paths that remain editable when the journey is protected. Supports wildcard patterns (e.g. steps/*/blocks/**).
|
|
275
|
+
*/
|
|
276
|
+
protectedEditable?: string[];
|
|
273
277
|
settings?: {
|
|
274
278
|
embedOptions?: {
|
|
275
279
|
mode?: "full-screen" | "inline";
|
|
@@ -522,6 +526,10 @@ declare namespace Components {
|
|
|
522
526
|
* If true, journey is displayed in read-only mode
|
|
523
527
|
*/
|
|
524
528
|
protected?: boolean;
|
|
529
|
+
/**
|
|
530
|
+
* Whitelist of paths that remain editable when the journey is protected. Supports wildcard patterns (e.g. steps/*/blocks/**).
|
|
531
|
+
*/
|
|
532
|
+
protectedEditable?: string[];
|
|
525
533
|
settings?: {
|
|
526
534
|
embedOptions?: {
|
|
527
535
|
mode?: "full-screen" | "inline";
|
|
@@ -757,6 +765,10 @@ declare namespace Components {
|
|
|
757
765
|
* If true, journey is displayed in read-only mode
|
|
758
766
|
*/
|
|
759
767
|
protected?: boolean;
|
|
768
|
+
/**
|
|
769
|
+
* Whitelist of paths that remain editable when the journey is protected. Supports wildcard patterns (e.g. steps/*/blocks/**).
|
|
770
|
+
*/
|
|
771
|
+
protectedEditable?: string[];
|
|
760
772
|
settings?: {
|
|
761
773
|
embedOptions?: {
|
|
762
774
|
mode?: "full-screen" | "inline";
|
|
@@ -814,6 +826,7 @@ declare namespace Components {
|
|
|
814
826
|
* If true, the journey shows an icon to toggle dark mode
|
|
815
827
|
*/
|
|
816
828
|
enableDarkMode?: boolean;
|
|
829
|
+
isActive?: boolean;
|
|
817
830
|
};
|
|
818
831
|
validationRules?: /**
|
|
819
832
|
* References to validation rules organized by blocks and fields.
|
|
@@ -1675,13 +1688,13 @@ interface OperationMethods {
|
|
|
1675
1688
|
): OperationResponse<Paths.PatchUpdateJourneyV2.Responses.$200>
|
|
1676
1689
|
/**
|
|
1677
1690
|
* getJourneyV2 - getJourneyV2
|
|
1678
|
-
*
|
|
1691
|
+
*
|
|
1679
1692
|
* Get journey by id
|
|
1680
1693
|
*/
|
|
1681
1694
|
'getJourneyV2'(
|
|
1682
1695
|
parameters?: Parameters<Paths.GetJourneyV2.QueryParameters & Paths.GetJourneyV2.PathParameters> | null,
|
|
1683
1696
|
data?: any,
|
|
1684
|
-
config?: AxiosRequestConfig
|
|
1697
|
+
config?: AxiosRequestConfig
|
|
1685
1698
|
): OperationResponse<Paths.GetJourneyV2.Responses.$200>
|
|
1686
1699
|
/**
|
|
1687
1700
|
* removeJourneyV2 - removeJourneyV2
|
|
@@ -1868,7 +1881,7 @@ interface PathsDictionary {
|
|
|
1868
1881
|
* Get journey by id
|
|
1869
1882
|
*/
|
|
1870
1883
|
'get'(
|
|
1871
|
-
parameters?: Parameters<Paths.GetJourneyV2.PathParameters> | null,
|
|
1884
|
+
parameters?: Parameters<Paths.GetJourneyV2.QueryParameters & Paths.GetJourneyV2.PathParameters> | null,
|
|
1872
1885
|
data?: any,
|
|
1873
1886
|
config?: AxiosRequestConfig
|
|
1874
1887
|
): OperationResponse<Paths.GetJourneyV2.Responses.$200>
|
|
@@ -0,0 +1,7 @@
|
|
|
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- [`captureOrgSnapshot`](#captureorgsnapshot)\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- [`EmptyInventoryError`](#emptyinventoryerror)\n- [`ResourceRef`](#resourceref)\n- [`SnapshotResourceSummary`](#snapshotresourcesummary)\n- [`SnapshotResourceList`](#snapshotresourcelist)\n- [`SnapshotResourceDetail`](#snapshotresourcedetail)\n- [`CreateSnapshotRequest`](#createsnapshotrequest)\n- [`CreateOrgSnapshotRequest`](#createorgsnapshotrequest)\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 trigger: \'example\',\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 "scope": "selection",\n "expires_at": "1970-01-01T00:00:00.000Z",\n "capture_summary": {\n "total": 0,\n "captured": 0,\n "skipped": 0,\n "failed": 0\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `captureOrgSnapshot`\n\nSnapshot the caller\'s whole organization now. Fetches a fresh inventory\nof the org\'s configuration resources from configuration-hub-api, persists\nit as an inventory artifact, and starts a `scope: "org\n\n`POST /v1/snapshots:capture-org`\n\n```ts\nconst { data } = await client.captureOrgSnapshot(\n null,\n {\n name: \'string\',\n retention: {\n value: 1,\n unit: \'days\'\n },\n excluded_types: [\'string\']\n },\n)\n```\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 "scope": "selection",\n "expires_at": "1970-01-01T00:00:00.000Z",\n "capture_summary": {\n "total": 0,\n "captured": 0,\n "skipped": 0,\n "failed": 0\n }\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 preserve_modified: false,\n preserve_co_owned: false,\n exclude_target_ids: [\'string\']\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### `EmptyInventoryError`\n\nReturned (422) when the org inventory contains no capturable resources\nafter filtering out sensitive, unsupported, and excluded types. The\n`skipped_types` array explains why every type was dropped.\n\n\n```ts\ntype EmptyInventoryError = {\n message: string\n skipped_types: Array<{\n type: string\n reason: string\n }>\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" | "scheduled"\n blueprint_instance_id?: string\n resources: Array<{\n type: string\n id: string\n }>\n}\n```\n\n### `CreateOrgSnapshotRequest`\n\nRequest body for `captureOrgSnapshot`. All fields optional \u2014 an empty body\nsnapshots the whole org with a default name and the 90-day default TTL.\n\n\n```ts\ntype CreateOrgSnapshotRequest = {\n name?: string\n retention?: {\n value: number\n unit: "days" | "weeks" | "months"\n }\n excluded_types?: string[]\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\nSkipped resources surface under `Operation.skipped`. All filters default\nto the open setting (apply everything), which keeps Config Hub\'s manual-\nrestore semantics unchanged.\n\n\n```ts\ntype RestoreSnapshotRequest = {\n preserve_modified?: boolean\n preserve_co_owned?: boolean\n exclude_target_ids?: string[]\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" | "scheduled"\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 scope?: "selection" | "org"\n expires_at?: string // date-time\n capture_summary?: {\n total: number\n captured: number\n skipped: number\n failed: number\n }\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
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
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- [`captureOrgSnapshot`](#captureorgsnapshot)\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- [`EmptyInventoryError`](#emptyinventoryerror)\n- [`ResourceRef`](#resourceref)\n- [`SnapshotResourceSummary`](#snapshotresourcesummary)\n- [`SnapshotResourceList`](#snapshotresourcelist)\n- [`SnapshotResourceDetail`](#snapshotresourcedetail)\n- [`CreateSnapshotRequest`](#createsnapshotrequest)\n- [`CreateOrgSnapshotRequest`](#createorgsnapshotrequest)\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 trigger: \'example\',\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 "scope": "selection",\n "expires_at": "1970-01-01T00:00:00.000Z",\n "capture_summary": {\n "total": 0,\n "captured": 0,\n "skipped": 0,\n "failed": 0\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `captureOrgSnapshot`\n\nSnapshot the caller\'s whole organization now. Fetches a fresh inventory\nof the org\'s configuration resources from configuration-hub-api, persists\nit as an inventory artifact, and starts a `scope: "org\n\n`POST /v1/snapshots:capture-org`\n\n```ts\nconst { data } = await client.captureOrgSnapshot(\n null,\n {\n name: \'string\',\n retention: {\n value: 1,\n unit: \'days\'\n },\n excluded_types: [\'string\']\n },\n)\n```\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 "scope": "selection",\n "expires_at": "1970-01-01T00:00:00.000Z",\n "capture_summary": {\n "total": 0,\n "captured": 0,\n "skipped": 0,\n "failed": 0\n }\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 preserve_modified: false,\n preserve_co_owned: false,\n exclude_target_ids: [\'string\']\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### `EmptyInventoryError`\n\nReturned (422) when the org inventory contains no capturable resources\nafter filtering out sensitive, unsupported, and excluded types. The\n`skipped_types` array explains why every type was dropped.\n\n\n```ts\ntype EmptyInventoryError = {\n message: string\n skipped_types: Array<{\n type: string\n reason: string\n }>\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" | "scheduled"\n blueprint_instance_id?: string\n resources: Array<{\n type: string\n id: string\n }>\n}\n```\n\n### `CreateOrgSnapshotRequest`\n\nRequest body for `captureOrgSnapshot`. All fields optional \u2014 an empty body\nsnapshots the whole org with a default name and the 90-day default TTL.\n\n\n```ts\ntype CreateOrgSnapshotRequest = {\n name?: string\n retention?: {\n value: number\n unit: "days" | "weeks" | "months"\n }\n excluded_types?: string[]\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\nSkipped resources surface under `Operation.skipped`. All filters default\nto the open setting (apply everything), which keeps Config Hub\'s manual-\nrestore semantics unchanged.\n\n\n```ts\ntype RestoreSnapshotRequest = {\n preserve_modified?: boolean\n preserve_co_owned?: boolean\n exclude_target_ids?: string[]\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" | "scheduled"\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 scope?: "selection" | "org"\n expires_at?: string // date-time\n capture_summary?: {\n total: number\n captured: number\n skipped: number\n failed: number\n }\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,5 +1,5 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkYXJ4PBFQcjs = require('./chunk-YXJ4PBFQ.cjs');
|
|
4
4
|
require('./chunk-NJK5F5TF.cjs');
|
|
5
|
-
exports. default =
|
|
5
|
+
exports. default = _chunkYXJ4PBFQcjs.require_snapshot_runtime.call(void 0, );
|
|
@@ -133,29 +133,40 @@ declare namespace Components {
|
|
|
133
133
|
id: string;
|
|
134
134
|
}
|
|
135
135
|
/**
|
|
136
|
-
*
|
|
137
|
-
* Config Hub's manual-
|
|
138
|
-
*
|
|
139
|
-
* cross-blueprint contributions survive. Each flag is independent so a
|
|
140
|
-
* caller can preserve edits without preserving co-ownership (or vice
|
|
141
|
-
* versa). Skipped resources surface under `Operation.skipped`.
|
|
136
|
+
* Skipped resources surface under `Operation.skipped`. All filters default
|
|
137
|
+
* to the open setting (apply everything), which keeps Config Hub's manual-
|
|
138
|
+
* restore semantics unchanged.
|
|
142
139
|
*
|
|
143
140
|
*/
|
|
144
141
|
export interface RestoreSnapshotRequest {
|
|
145
142
|
/**
|
|
146
|
-
* When `true`, skip captured resources whose live
|
|
147
|
-
*
|
|
148
|
-
*
|
|
143
|
+
* When `true`, skip captured resources whose live payload's content
|
|
144
|
+
* fingerprint diverges from the capture-time fingerprint stored on
|
|
145
|
+
* the manifest entry. Self-contained: snapshot-api fetches and hashes
|
|
146
|
+
* the live payload itself; no cross-service lookup. Surfaces under
|
|
147
|
+
* `Operation.skipped` with `reason: 'modified'`. Legacy snapshots
|
|
148
|
+
* captured before fingerprints were stored fail open (applied).
|
|
149
149
|
*
|
|
150
150
|
*/
|
|
151
151
|
preserve_modified?: boolean;
|
|
152
152
|
/**
|
|
153
|
-
*
|
|
154
|
-
*
|
|
155
|
-
*
|
|
153
|
+
* Deprecated. Accepted for back-compat but treated as a no-op.
|
|
154
|
+
* Co-ownership is now expressed via `exclude_target_ids` — the caller
|
|
155
|
+
* (typically blueprint-manifest-api) computes which targets to skip
|
|
156
|
+
* from its own data and passes the list. snapshot-api no longer
|
|
157
|
+
* reaches into BMA's lineage table.
|
|
156
158
|
*
|
|
157
159
|
*/
|
|
158
160
|
preserve_co_owned?: boolean;
|
|
161
|
+
/**
|
|
162
|
+
* Target ids the caller has decided not to restore. snapshot-api
|
|
163
|
+
* applies the manifest minus these ids and reports them under
|
|
164
|
+
* `Operation.skipped` with `reason: 'co_owned'` (the only current
|
|
165
|
+
* producer of exclude lists is BMA's revert flow, which uses this to
|
|
166
|
+
* honor multi-blueprint ownership).
|
|
167
|
+
*
|
|
168
|
+
*/
|
|
169
|
+
exclude_target_ids?: string[];
|
|
159
170
|
}
|
|
160
171
|
export interface RestoreSnapshotResponse {
|
|
161
172
|
id: string;
|
|
@@ -280,10 +291,8 @@ declare namespace Components {
|
|
|
280
291
|
*/
|
|
281
292
|
export interface SnapshotResourceSummary {
|
|
282
293
|
/**
|
|
283
|
-
*
|
|
284
|
-
*
|
|
285
|
-
* snapshots. Same as `target_id` for snapshots whose capture
|
|
286
|
-
* doesn't distinguish source vs destination identifiers.
|
|
294
|
+
* Deprecated alias of `target_id`. Always equals `target_id` (the
|
|
295
|
+
* implementation never distinguished them). Use `target_id`.
|
|
287
296
|
*
|
|
288
297
|
*/
|
|
289
298
|
lineage_id: string;
|
|
@@ -376,11 +385,13 @@ declare namespace Paths {
|
|
|
376
385
|
export type Cursor = string;
|
|
377
386
|
export type Resource = string /* ^[^:]+:.+$ */[];
|
|
378
387
|
export type Size = number;
|
|
388
|
+
export type Trigger = "manual" | "sync" | "blueprint_install" | "scheduled";
|
|
379
389
|
}
|
|
380
390
|
export interface QueryParameters {
|
|
381
391
|
cursor?: Parameters.Cursor;
|
|
382
392
|
size?: Parameters.Size;
|
|
383
393
|
resource?: Parameters.Resource;
|
|
394
|
+
trigger?: Parameters.Trigger;
|
|
384
395
|
}
|
|
385
396
|
namespace Responses {
|
|
386
397
|
export interface $200 {
|
|
@@ -399,12 +410,9 @@ declare namespace Paths {
|
|
|
399
410
|
}
|
|
400
411
|
namespace RestoreSnapshot {
|
|
401
412
|
export type RequestBody = /**
|
|
402
|
-
*
|
|
403
|
-
* Config Hub's manual-
|
|
404
|
-
*
|
|
405
|
-
* cross-blueprint contributions survive. Each flag is independent so a
|
|
406
|
-
* caller can preserve edits without preserving co-ownership (or vice
|
|
407
|
-
* versa). Skipped resources surface under `Operation.skipped`.
|
|
413
|
+
* Skipped resources surface under `Operation.skipped`. All filters default
|
|
414
|
+
* to the open setting (apply everything), which keeps Config Hub's manual-
|
|
415
|
+
* restore semantics unchanged.
|
|
408
416
|
*
|
|
409
417
|
*/
|
|
410
418
|
Components.Schemas.RestoreSnapshotRequest;
|
|
@@ -133,29 +133,40 @@ declare namespace Components {
|
|
|
133
133
|
id: string;
|
|
134
134
|
}
|
|
135
135
|
/**
|
|
136
|
-
*
|
|
137
|
-
* Config Hub's manual-
|
|
138
|
-
*
|
|
139
|
-
* cross-blueprint contributions survive. Each flag is independent so a
|
|
140
|
-
* caller can preserve edits without preserving co-ownership (or vice
|
|
141
|
-
* versa). Skipped resources surface under `Operation.skipped`.
|
|
136
|
+
* Skipped resources surface under `Operation.skipped`. All filters default
|
|
137
|
+
* to the open setting (apply everything), which keeps Config Hub's manual-
|
|
138
|
+
* restore semantics unchanged.
|
|
142
139
|
*
|
|
143
140
|
*/
|
|
144
141
|
export interface RestoreSnapshotRequest {
|
|
145
142
|
/**
|
|
146
|
-
* When `true`, skip captured resources whose live
|
|
147
|
-
*
|
|
148
|
-
*
|
|
143
|
+
* When `true`, skip captured resources whose live payload's content
|
|
144
|
+
* fingerprint diverges from the capture-time fingerprint stored on
|
|
145
|
+
* the manifest entry. Self-contained: snapshot-api fetches and hashes
|
|
146
|
+
* the live payload itself; no cross-service lookup. Surfaces under
|
|
147
|
+
* `Operation.skipped` with `reason: 'modified'`. Legacy snapshots
|
|
148
|
+
* captured before fingerprints were stored fail open (applied).
|
|
149
149
|
*
|
|
150
150
|
*/
|
|
151
151
|
preserve_modified?: boolean;
|
|
152
152
|
/**
|
|
153
|
-
*
|
|
154
|
-
*
|
|
155
|
-
*
|
|
153
|
+
* Deprecated. Accepted for back-compat but treated as a no-op.
|
|
154
|
+
* Co-ownership is now expressed via `exclude_target_ids` — the caller
|
|
155
|
+
* (typically blueprint-manifest-api) computes which targets to skip
|
|
156
|
+
* from its own data and passes the list. snapshot-api no longer
|
|
157
|
+
* reaches into BMA's lineage table.
|
|
156
158
|
*
|
|
157
159
|
*/
|
|
158
160
|
preserve_co_owned?: boolean;
|
|
161
|
+
/**
|
|
162
|
+
* Target ids the caller has decided not to restore. snapshot-api
|
|
163
|
+
* applies the manifest minus these ids and reports them under
|
|
164
|
+
* `Operation.skipped` with `reason: 'co_owned'` (the only current
|
|
165
|
+
* producer of exclude lists is BMA's revert flow, which uses this to
|
|
166
|
+
* honor multi-blueprint ownership).
|
|
167
|
+
*
|
|
168
|
+
*/
|
|
169
|
+
exclude_target_ids?: string[];
|
|
159
170
|
}
|
|
160
171
|
export interface RestoreSnapshotResponse {
|
|
161
172
|
id: string;
|
|
@@ -280,10 +291,8 @@ declare namespace Components {
|
|
|
280
291
|
*/
|
|
281
292
|
export interface SnapshotResourceSummary {
|
|
282
293
|
/**
|
|
283
|
-
*
|
|
284
|
-
*
|
|
285
|
-
* snapshots. Same as `target_id` for snapshots whose capture
|
|
286
|
-
* doesn't distinguish source vs destination identifiers.
|
|
294
|
+
* Deprecated alias of `target_id`. Always equals `target_id` (the
|
|
295
|
+
* implementation never distinguished them). Use `target_id`.
|
|
287
296
|
*
|
|
288
297
|
*/
|
|
289
298
|
lineage_id: string;
|
|
@@ -376,11 +385,13 @@ declare namespace Paths {
|
|
|
376
385
|
export type Cursor = string;
|
|
377
386
|
export type Resource = string /* ^[^:]+:.+$ */[];
|
|
378
387
|
export type Size = number;
|
|
388
|
+
export type Trigger = "manual" | "sync" | "blueprint_install" | "scheduled";
|
|
379
389
|
}
|
|
380
390
|
export interface QueryParameters {
|
|
381
391
|
cursor?: Parameters.Cursor;
|
|
382
392
|
size?: Parameters.Size;
|
|
383
393
|
resource?: Parameters.Resource;
|
|
394
|
+
trigger?: Parameters.Trigger;
|
|
384
395
|
}
|
|
385
396
|
namespace Responses {
|
|
386
397
|
export interface $200 {
|
|
@@ -399,12 +410,9 @@ declare namespace Paths {
|
|
|
399
410
|
}
|
|
400
411
|
namespace RestoreSnapshot {
|
|
401
412
|
export type RequestBody = /**
|
|
402
|
-
*
|
|
403
|
-
* Config Hub's manual-
|
|
404
|
-
*
|
|
405
|
-
* cross-blueprint contributions survive. Each flag is independent so a
|
|
406
|
-
* caller can preserve edits without preserving co-ownership (or vice
|
|
407
|
-
* versa). Skipped resources surface under `Operation.skipped`.
|
|
413
|
+
* Skipped resources surface under `Operation.skipped`. All filters default
|
|
414
|
+
* to the open setting (apply everything), which keeps Config Hub's manual-
|
|
415
|
+
* restore semantics unchanged.
|
|
408
416
|
*
|
|
409
417
|
*/
|
|
410
418
|
Components.Schemas.RestoreSnapshotRequest;
|
package/docs/journey.md
CHANGED
|
@@ -163,6 +163,7 @@ const { data } = await client.getJourney({
|
|
|
163
163
|
],
|
|
164
164
|
"journey_type": "Sales template (Premium)",
|
|
165
165
|
"protected": true,
|
|
166
|
+
"protectedEditable": ["string"],
|
|
166
167
|
"settings": {
|
|
167
168
|
"embedOptions": {
|
|
168
169
|
"mode": "full-screen",
|
|
@@ -356,6 +357,7 @@ const { data } = await client.createJourney(
|
|
|
356
357
|
],
|
|
357
358
|
journey_type: 'Sales template (Premium)',
|
|
358
359
|
protected: true,
|
|
360
|
+
protectedEditable: ['string'],
|
|
359
361
|
settings: {
|
|
360
362
|
embedOptions: {
|
|
361
363
|
mode: 'full-screen',
|
|
@@ -469,6 +471,7 @@ const { data } = await client.createJourney(
|
|
|
469
471
|
],
|
|
470
472
|
"journey_type": "Sales template (Premium)",
|
|
471
473
|
"protected": true,
|
|
474
|
+
"protectedEditable": ["string"],
|
|
472
475
|
"settings": {
|
|
473
476
|
"embedOptions": {
|
|
474
477
|
"mode": "full-screen",
|
|
@@ -596,6 +599,7 @@ const { data } = await client.updateJourney(
|
|
|
596
599
|
],
|
|
597
600
|
journey_type: 'Sales template (Premium)',
|
|
598
601
|
protected: true,
|
|
602
|
+
protectedEditable: ['string'],
|
|
599
603
|
settings: {
|
|
600
604
|
embedOptions: {
|
|
601
605
|
mode: 'full-screen',
|
|
@@ -700,6 +704,7 @@ const { data } = await client.patchUpdateJourney(
|
|
|
700
704
|
],
|
|
701
705
|
"journey_type": "Sales template (Premium)",
|
|
702
706
|
"protected": true,
|
|
707
|
+
"protectedEditable": ["string"],
|
|
703
708
|
"settings": {
|
|
704
709
|
"embedOptions": {},
|
|
705
710
|
"safeModeAutomation": true,
|
|
@@ -940,6 +945,7 @@ const { data } = await client.createJourneyV2(
|
|
|
940
945
|
],
|
|
941
946
|
journey_type: 'Sales template (Premium)',
|
|
942
947
|
protected: true,
|
|
948
|
+
protectedEditable: ['string'],
|
|
943
949
|
settings: {
|
|
944
950
|
embedOptions: {
|
|
945
951
|
mode: 'full-screen',
|
|
@@ -972,7 +978,8 @@ const { data } = await client.createJourneyV2(
|
|
|
972
978
|
useNewDesign: true,
|
|
973
979
|
thirdPartyCookies: true,
|
|
974
980
|
accessMode: 'PUBLIC',
|
|
975
|
-
enableDarkMode: true
|
|
981
|
+
enableDarkMode: true,
|
|
982
|
+
isActive: true
|
|
976
983
|
},
|
|
977
984
|
validationRules: {
|
|
978
985
|
block1: 'rule123',
|
|
@@ -1042,6 +1049,7 @@ const { data } = await client.createJourneyV2(
|
|
|
1042
1049
|
],
|
|
1043
1050
|
"journey_type": "Sales template (Premium)",
|
|
1044
1051
|
"protected": true,
|
|
1052
|
+
"protectedEditable": ["string"],
|
|
1045
1053
|
"settings": {
|
|
1046
1054
|
"embedOptions": {
|
|
1047
1055
|
"mode": "full-screen",
|
|
@@ -1074,7 +1082,8 @@ const { data } = await client.createJourneyV2(
|
|
|
1074
1082
|
"useNewDesign": true,
|
|
1075
1083
|
"thirdPartyCookies": true,
|
|
1076
1084
|
"accessMode": "PUBLIC",
|
|
1077
|
-
"enableDarkMode": true
|
|
1085
|
+
"enableDarkMode": true,
|
|
1086
|
+
"isActive": true
|
|
1078
1087
|
},
|
|
1079
1088
|
"validationRules": {
|
|
1080
1089
|
"block1": "rule123",
|
|
@@ -1152,6 +1161,7 @@ const { data } = await client.updateJourneyV2(
|
|
|
1152
1161
|
],
|
|
1153
1162
|
journey_type: 'Sales template (Premium)',
|
|
1154
1163
|
protected: true,
|
|
1164
|
+
protectedEditable: ['string'],
|
|
1155
1165
|
settings: {
|
|
1156
1166
|
embedOptions: {
|
|
1157
1167
|
mode: 'full-screen',
|
|
@@ -1184,7 +1194,8 @@ const { data } = await client.updateJourneyV2(
|
|
|
1184
1194
|
useNewDesign: true,
|
|
1185
1195
|
thirdPartyCookies: true,
|
|
1186
1196
|
accessMode: 'PUBLIC',
|
|
1187
|
-
enableDarkMode: true
|
|
1197
|
+
enableDarkMode: true,
|
|
1198
|
+
isActive: true
|
|
1188
1199
|
},
|
|
1189
1200
|
validationRules: {
|
|
1190
1201
|
block1: 'rule123',
|
|
@@ -1254,6 +1265,7 @@ const { data } = await client.updateJourneyV2(
|
|
|
1254
1265
|
],
|
|
1255
1266
|
"journey_type": "Sales template (Premium)",
|
|
1256
1267
|
"protected": true,
|
|
1268
|
+
"protectedEditable": ["string"],
|
|
1257
1269
|
"settings": {
|
|
1258
1270
|
"embedOptions": {
|
|
1259
1271
|
"mode": "full-screen",
|
|
@@ -1286,7 +1298,8 @@ const { data } = await client.updateJourneyV2(
|
|
|
1286
1298
|
"useNewDesign": true,
|
|
1287
1299
|
"thirdPartyCookies": true,
|
|
1288
1300
|
"accessMode": "PUBLIC",
|
|
1289
|
-
"enableDarkMode": true
|
|
1301
|
+
"enableDarkMode": true,
|
|
1302
|
+
"isActive": true
|
|
1290
1303
|
},
|
|
1291
1304
|
"validationRules": {
|
|
1292
1305
|
"block1": "rule123",
|
|
@@ -1375,6 +1388,7 @@ const { data } = await client.patchUpdateJourneyV2(
|
|
|
1375
1388
|
],
|
|
1376
1389
|
"journey_type": "Sales template (Premium)",
|
|
1377
1390
|
"protected": true,
|
|
1391
|
+
"protectedEditable": ["string"],
|
|
1378
1392
|
"settings": {
|
|
1379
1393
|
"embedOptions": {
|
|
1380
1394
|
"mode": "full-screen",
|
|
@@ -1407,7 +1421,8 @@ const { data } = await client.patchUpdateJourneyV2(
|
|
|
1407
1421
|
"useNewDesign": true,
|
|
1408
1422
|
"thirdPartyCookies": true,
|
|
1409
1423
|
"accessMode": "PUBLIC",
|
|
1410
|
-
"enableDarkMode": true
|
|
1424
|
+
"enableDarkMode": true,
|
|
1425
|
+
"isActive": true
|
|
1411
1426
|
},
|
|
1412
1427
|
"validationRules": {
|
|
1413
1428
|
"block1": "rule123",
|
|
@@ -1493,6 +1508,7 @@ const { data } = await client.getJourneyV2({
|
|
|
1493
1508
|
],
|
|
1494
1509
|
"journey_type": "Sales template (Premium)",
|
|
1495
1510
|
"protected": true,
|
|
1511
|
+
"protectedEditable": ["string"],
|
|
1496
1512
|
"settings": {
|
|
1497
1513
|
"embedOptions": {
|
|
1498
1514
|
"mode": "full-screen",
|
|
@@ -1525,7 +1541,8 @@ const { data } = await client.getJourneyV2({
|
|
|
1525
1541
|
"useNewDesign": true,
|
|
1526
1542
|
"thirdPartyCookies": true,
|
|
1527
1543
|
"accessMode": "PUBLIC",
|
|
1528
|
-
"enableDarkMode": true
|
|
1544
|
+
"enableDarkMode": true,
|
|
1545
|
+
"isActive": true
|
|
1529
1546
|
},
|
|
1530
1547
|
"validationRules": {
|
|
1531
1548
|
"block1": "rule123",
|
|
@@ -1675,6 +1692,7 @@ type JourneyResponse = {
|
|
|
1675
1692
|
}>
|
|
1676
1693
|
journey_type?: string
|
|
1677
1694
|
protected?: boolean
|
|
1695
|
+
protectedEditable?: string[]
|
|
1678
1696
|
settings?: {
|
|
1679
1697
|
embedOptions?: { ... }
|
|
1680
1698
|
safeModeAutomation?: { ... }
|
|
@@ -1814,6 +1832,7 @@ type JourneyCreationRequest = {
|
|
|
1814
1832
|
}>
|
|
1815
1833
|
journey_type?: string
|
|
1816
1834
|
protected?: boolean
|
|
1835
|
+
protectedEditable?: string[]
|
|
1817
1836
|
settings?: {
|
|
1818
1837
|
embedOptions?: {
|
|
1819
1838
|
mode?: { ... }
|
|
@@ -1855,7 +1874,6 @@ type JourneyCreationRequest = {
|
|
|
1855
1874
|
}
|
|
1856
1875
|
thirdPartyCookies?: boolean
|
|
1857
1876
|
}
|
|
1858
|
-
validationRules?: Record<string, string | Record<string, string>>
|
|
1859
1877
|
// ...
|
|
1860
1878
|
}
|
|
1861
1879
|
```
|
|
@@ -1920,6 +1938,7 @@ type JourneyCreationRequestV2 = {
|
|
|
1920
1938
|
}>
|
|
1921
1939
|
journey_type?: string
|
|
1922
1940
|
protected?: boolean
|
|
1941
|
+
protectedEditable?: string[]
|
|
1923
1942
|
settings?: {
|
|
1924
1943
|
embedOptions?: {
|
|
1925
1944
|
mode?: { ... }
|
|
@@ -1950,6 +1969,7 @@ type JourneyCreationRequestV2 = {
|
|
|
1950
1969
|
thirdPartyCookies?: boolean
|
|
1951
1970
|
accessMode?: "PUBLIC" | "PRIVATE"
|
|
1952
1971
|
enableDarkMode?: boolean
|
|
1972
|
+
isActive?: boolean
|
|
1953
1973
|
}
|
|
1954
1974
|
validationRules?: Record<string, string | Record<string, string>>
|
|
1955
1975
|
_manifest?: string // uuid[]
|
|
@@ -2054,6 +2074,7 @@ type Journey = {
|
|
|
2054
2074
|
}>
|
|
2055
2075
|
journey_type?: string
|
|
2056
2076
|
protected?: boolean
|
|
2077
|
+
protectedEditable?: string[]
|
|
2057
2078
|
settings?: {
|
|
2058
2079
|
embedOptions?: {
|
|
2059
2080
|
mode?: { ... }
|
|
@@ -2095,7 +2116,6 @@ type Journey = {
|
|
|
2095
2116
|
}
|
|
2096
2117
|
thirdPartyCookies?: boolean
|
|
2097
2118
|
}
|
|
2098
|
-
validationRules?: Record<string, string | Record<string, string>>
|
|
2099
2119
|
// ...
|
|
2100
2120
|
}
|
|
2101
2121
|
```
|
package/docs/snapshot.md
CHANGED
|
@@ -91,6 +91,7 @@ const { data } = await client.listSnapshots({
|
|
|
91
91
|
cursor: 'example',
|
|
92
92
|
size: 1,
|
|
93
93
|
resource: ['...'],
|
|
94
|
+
trigger: 'example',
|
|
94
95
|
})
|
|
95
96
|
```
|
|
96
97
|
|
|
@@ -297,7 +298,8 @@ const { data } = await client.restoreSnapshot(
|
|
|
297
298
|
},
|
|
298
299
|
{
|
|
299
300
|
preserve_modified: false,
|
|
300
|
-
preserve_co_owned: false
|
|
301
|
+
preserve_co_owned: false,
|
|
302
|
+
exclude_target_ids: ['string']
|
|
301
303
|
},
|
|
302
304
|
)
|
|
303
305
|
```
|
|
@@ -536,16 +538,16 @@ type CreateSnapshotResponse = {
|
|
|
536
538
|
|
|
537
539
|
### `RestoreSnapshotRequest`
|
|
538
540
|
|
|
539
|
-
|
|
540
|
-
Config Hub's manual-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
caller can preserve edits w
|
|
541
|
+
Skipped resources surface under `Operation.skipped`. All filters default
|
|
542
|
+
to the open setting (apply everything), which keeps Config Hub's manual-
|
|
543
|
+
restore semantics unchanged.
|
|
544
|
+
|
|
544
545
|
|
|
545
546
|
```ts
|
|
546
547
|
type RestoreSnapshotRequest = {
|
|
547
548
|
preserve_modified?: boolean
|
|
548
549
|
preserve_co_owned?: boolean
|
|
550
|
+
exclude_target_ids?: string[]
|
|
549
551
|
}
|
|
550
552
|
```
|
|
551
553
|
|
package/package.json
CHANGED
package/dist/chunk-4SZCKUY2.js
DELETED
|
@@ -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"]]], ["captureOrgSnapshot", "post", "/v1/snapshots:capture-org", null, 1], ["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
|
-
};
|
package/dist/chunk-ULKFBO7E.cjs
DELETED
|
@@ -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"]]], ["captureOrgSnapshot", "post", "/v1/snapshots:capture-org", null, 1], ["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;
|