> ## Documentation Index
> Fetch the complete documentation index at: https://docs.domino.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Snapshot a bundle into an evidence-restricted copy and revoke the source's gated approvals

> Create an evidence-restricted copy of source named `<source.Name><nameSuffix>`, appending a number (e.g. ` 2`) on conflict. Attachments, drafts, results, stage assignees, and approvals are copied; findings and comments are not.
The source's gated approvals are revoked (reset to PendingSubmission) so it can begin a new approval cycle.
If `sourceEnforcePoliciesFor` is set (e.g. `App`), the source (not the snapshot) is synced to that target's current mandatory policies after the snapshot is taken.



## OpenAPI

````yaml /api-specs/6.3/public-api.json post /api/governance/v1/rpc/snapshot-bundle
openapi: 3.0.3
info:
  title: Domino Public API
  description: Reference for Domino's public REST API endpoints.
  version: 6.3.1
  x-catalog-key: nucleus
servers:
  - url: https://mycluster.domino.tech
    description: >-
      Replace 'mycluster.domino.tech' with your Domino cluster hostname. For
      Domino Cloud customers, that is `your-subdomain`.domino.tech (e.g.,
      acme.domino.tech). For self-hosted deployments, it is the hostname you
      reach the Domino UI at.
security: []
tags:
  - name: Projects
  - name: Project templates
  - name: Workspaces
  - name: Jobs
  - name: HPC Jobs
  - name: Environments
  - name: Hardware Tiers
  - name: Datasets
  - name: Data Sources
  - name: AI Gateway
  - name: GenAI
  - name: AI Systems
  - name: Apps
  - name: App versions
  - name: App instances
  - name: Model APIs
  - name: Registered models
  - name: Model deployment
  - name: Extensions
  - name: Cost and billing
  - name: Users and organizations
  - name: Service accounts
  - name: Personal Access Tokens
  - name: Personal Access Tokens (admin)
  - name: Audit Trail
  - name: Custom metrics
  - name: PPM
  - name: Model Monitoring models
  - name: Model Monitoring drift and quality
  - name: Model Monitoring settings
  - name: Model Monitoring authentication
  - name: Governance bundles
  - name: Governance policies
  - name: Governance evidence and results
  - name: Governance operations
  - name: NetApp Volumes
  - name: NetApp Volumes snapshots
  - name: NetApp Volumes filesystems
  - name: NetApp Volumes transfers
  - name: Tags
  - name: Properties
externalDocs:
  description: OpenAPI
  url: https://swagger.io/resources/open-api/
paths:
  /api/governance/v1/rpc/snapshot-bundle:
    post:
      tags:
        - Governance operations
      summary: >-
        Snapshot a bundle into an evidence-restricted copy and revoke the
        source's gated approvals
      description: >-
        Create an evidence-restricted copy of source named
        `<source.Name><nameSuffix>`, appending a number (e.g. ` 2`) on conflict.
        Attachments, drafts, results, stage assignees, and approvals are copied;
        findings and comments are not.

        The source's gated approvals are revoked (reset to PendingSubmission) so
        it can begin a new approval cycle.

        If `sourceEnforcePoliciesFor` is set (e.g. `App`), the source (not the
        snapshot) is synced to that target's current mandatory policies after
        the snapshot is taken.
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/rai-guardrails-service_server.SnapshotBundleRequest
        description: Request for snapshotting a bundle
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rai-guardrails-service_guardrails.Bundle'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rai-guardrails-service_server.HTTPError'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rai-guardrails-service_server.HTTPError'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rai-guardrails-service_server.HTTPError'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rai-guardrails-service_server.HTTPError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rai-guardrails-service_server.HTTPError'
components:
  schemas:
    rai-guardrails-service_server.SnapshotBundleRequest:
      type: object
      required:
        - sourceBundleId
      properties:
        nameSuffix:
          type: string
        sourceBundleId:
          type: string
        sourceEnforcePoliciesFor:
          description: >-
            If set, re-syncs the source bundle (not the snapshot) to that
            target's enforced policies after snapshotting.
          allOf:
            - $ref: >-
                #/components/schemas/rai-guardrails-service_guardrails.PolicyEnforcerTarget
    rai-guardrails-service_guardrails.Bundle:
      type: object
      required:
        - id
        - state
      properties:
        attachments:
          type: array
          items:
            $ref: '#/components/schemas/rai-guardrails-service_guardrails.Attachment'
        classificationValue:
          description: The classification value of the primary policy
          type: string
        commentsCount:
          type: integer
        createdAt:
          type: string
        createdBy:
          type: object
        currentStageInfo:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.CurrentStageInfo
        enforcedPolicyIds:
          description: Policy IDs mandated by a PolicyEnforcer; these cannot be deactivated
          type: array
          items:
            type: string
        evidenceRestricted:
          type: boolean
        gates:
          type: array
          items:
            $ref: '#/components/schemas/rai-guardrails-service_guardrails.Gate'
        hasRevalidationSchedule:
          description: Whether the bundle has an active revalidation schedule
          type: boolean
        id:
          type: string
        name:
          type: string
        policies:
          type: array
          items:
            $ref: >-
              #/components/schemas/rai-guardrails-service_guardrails.BundlePolicy
        policyId:
          description: The ID of the primary policy
          type: string
        policyName:
          type: string
        policyVersion:
          description: The version of the primary policy
          type: string
        policyVersionId:
          description: The version ID of the primary policy
          type: string
        projectId:
          type: string
        projectName:
          type: string
        projectOwner:
          type: string
        stage:
          description: The stage of the primary policy
          type: string
        stageApprovals:
          type: array
          items:
            $ref: >-
              #/components/schemas/rai-guardrails-service_guardrails.StageApproval
        stageAssignee:
          description: The assignee to the stage of the primary policy
          allOf:
            - $ref: >-
                #/components/schemas/rai-guardrails-service_guardrails.BundleStageAssignee
        stages:
          type: array
          items:
            $ref: '#/components/schemas/rai-guardrails-service_guardrails.BundleStage'
        state:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.BundleState'
    rai-guardrails-service_server.HTTPError:
      type: object
      properties:
        code:
          description: >-
            Code is a stable machine-readable error identifier; absent on most
            errors.
          allOf:
            - $ref: '#/components/schemas/rai-guardrails-service_guardrails.ErrorCode'
        message:
          type: string
    rai-guardrails-service_guardrails.PolicyEnforcerTarget:
      type: string
      enum:
        - App
      x-enum-varnames:
        - PolicyEnforcerTargetApp
    rai-guardrails-service_guardrails.Attachment:
      type: object
      properties:
        approvalTimelineMap:
          type: object
          additionalProperties:
            $ref: >-
              #/components/schemas/rai-guardrails-service_guardrails.ApprovalTimelineInfo
        createdAt:
          type: string
        createdBy:
          type: object
        id:
          type: string
        identifier:
          type: object
        source:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.AttachmentSource
        type:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.AttachmentType
    rai-guardrails-service_guardrails.CurrentStageInfo:
      type: object
      properties:
        openFindingsCount:
          type: integer
        pendingApprovalsCount:
          type: integer
        status:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.StageStatus'
    rai-guardrails-service_guardrails.Gate:
      type: object
      properties:
        approvals:
          type: array
          items:
            $ref: >-
              #/components/schemas/rai-guardrails-service_guardrails.GateApprovalSummary
        bundleId:
          type: string
        id:
          type: string
        isOpen:
          type: boolean
        name:
          type: string
        policyGateId:
          type: string
        policyId:
          type: string
        policyVersionId:
          type: string
        reason:
          type: string
        resources:
          type: array
          items:
            $ref: >-
              #/components/schemas/rai-guardrails-service_guardrails.RuleDefinition
    rai-guardrails-service_guardrails.BundlePolicy:
      type: object
      properties:
        allowProjectApprovers:
          type: boolean
        bundleId:
          type: string
        classificationValue:
          type: string
        compliantToCurrentStage:
          type: boolean
        createdAt:
          type: string
        deactivatedAt:
          type: string
        enforceSequentialOrder:
          type: boolean
        hasRevalidationSchedule:
          type: boolean
        isLatestVersion:
          type: boolean
        isPolicyArchived:
          type: boolean
        policyId:
          type: string
        policyName:
          type: string
        policyVersion:
          type: string
        policyVersionId:
          type: string
        stage:
          type: string
        stageAssignee:
          description: The assignee to the stage of this bundle policy
          allOf:
            - $ref: >-
                #/components/schemas/rai-guardrails-service_guardrails.BundleStageAssignee
        upgradeRequired:
          type: boolean
    rai-guardrails-service_guardrails.StageApproval:
      type: object
      properties:
        approvers:
          type: array
          items:
            $ref: '#/components/schemas/rai-guardrails-service_guardrails.Approver'
        evidence:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.Evidence'
        id:
          type: string
        name:
          type: string
        policyEntityId:
          type: string
        revalidationConfig:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.RevalidationConfig
    rai-guardrails-service_guardrails.BundleStageAssignee:
      type: object
      required:
        - id
        - name
      properties:
        id:
          type: string
        name:
          type: string
    rai-guardrails-service_guardrails.BundleStage:
      type: object
      properties:
        assignedAt:
          type: string
        assignee:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.BundleStageAssignee
        bundleId:
          type: string
        stage:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.Stage'
        stageId:
          type: string
    rai-guardrails-service_guardrails.BundleState:
      type: string
      enum:
        - Active
        - Archived
        - Complete
      x-enum-varnames:
        - ActiveState
        - ArchivedState
        - CompleteState
    rai-guardrails-service_guardrails.ErrorCode:
      type: string
      enum:
        - BUNDLE_REQUIRES_POLICY
      x-enum-varnames:
        - CodeBundleRequiresPolicy
    rai-guardrails-service_guardrails.ApprovalTimelineInfo:
      type: object
      properties:
        approvalStatus:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.ApprovalStatus
        timelineStatus:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.ApprovalTimelineStatus
        updatedAt:
          type: string
    rai-guardrails-service_guardrails.AttachmentSource:
      type: string
      enum:
        - AUTO
        - MANUAL
      x-enum-varnames:
        - AttachmentSourceAuto
        - AttachmentSourceManual
    rai-guardrails-service_guardrails.AttachmentType:
      type: string
      enum:
        - ModelVersion
        - Report
        - DatasetSnapshotFile
        - Endpoint
        - NetAppVolumeSnapshotFile
        - FlowArtifact
        - FlowArtifactFile
      x-enum-varnames:
        - ModelVersion
        - Report
        - DatasetSnapshotFile
        - Endpoint
        - NetAppVolumeSnapshotFile
        - FlowArtifact
        - FlowArtifactFile
    rai-guardrails-service_guardrails.StageStatus:
      type: string
      enum:
        - NotStarted
        - InProgress
        - Done
      x-enum-varnames:
        - NotStartedStageStatus
        - InProgressStageStatus
        - DoneStageStatus
    rai-guardrails-service_guardrails.GateApprovalSummary:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        stageApprovalId:
          type: string
        status:
          $ref: >-
            #/components/schemas/rai-guardrails-service_guardrails.ApprovalStatus
    rai-guardrails-service_guardrails.RuleDefinition:
      type: object
      required:
        - action
      properties:
        action:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.RuleAction'
        failOpen:
          type: boolean
        parameters:
          type: object
    rai-guardrails-service_guardrails.Approver:
      type: object
      required:
        - editable
        - id
        - name
        - showByDefault
      properties:
        editable:
          type: boolean
        fromOrganizationUserId:
          type: string
        id:
          type: string
        isOrganizationUser:
          type: boolean
        name:
          type: string
        showByDefault:
          type: boolean
    rai-guardrails-service_guardrails.Evidence:
      type: object
      properties:
        artifacts:
          type: array
          items:
            $ref: >-
              #/components/schemas/rai-guardrails-service_guardrails.EvidenceArtifact
        createdAt:
          type: string
        description:
          type: string
        externalId:
          type: string
        id:
          type: string
        name:
          type: string
        policyId:
          type: string
        policyVersionId:
          type: string
        scope:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.EvidenceScope'
        visible:
          description: >-
            allows true, false or nil values (if nil, FE can decide to show
            everything)
          type: boolean
    rai-guardrails-service_guardrails.RevalidationConfig:
      type: object
      required:
        - openWindowDaysBefore
        - recurring
        - type
      properties:
        openWindowDaysBefore:
          type: integer
          minimum: 1
        recurring:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.Recurring'
        type:
          enum:
            - absolute
            - relative
          allOf:
            - $ref: >-
                #/components/schemas/rai-guardrails-service_guardrails.RevalidationType
    rai-guardrails-service_guardrails.Stage:
      type: object
      properties:
        approvals:
          type: array
          items:
            $ref: >-
              #/components/schemas/rai-guardrails-service_guardrails.StageApproval
        evidenceSet:
          type: array
          items:
            $ref: '#/components/schemas/rai-guardrails-service_guardrails.Evidence'
        id:
          type: string
        name:
          type: string
        notifyOnTransition:
          type: boolean
        policyEntityId:
          type: string
        policyVersionId:
          type: string
    rai-guardrails-service_guardrails.ApprovalStatus:
      type: string
      enum:
        - PendingSubmission
        - PendingReview
        - Approved
        - ConditionallyApproved
        - PendingExpiration
        - Expired
      x-enum-varnames:
        - PendingSubmission
        - PendingReview
        - Approved
        - ConditionallyApproved
        - PendingExpiration
        - Expired
    rai-guardrails-service_guardrails.ApprovalTimelineStatus:
      type: string
      enum:
        - Valid
        - Invalid
      x-enum-varnames:
        - Valid
        - Invalid
    rai-guardrails-service_guardrails.RuleAction:
      type: string
      enum:
        - Deploy
        - CreateApp
        - CreateEndpoint
      x-enum-varnames:
        - Deploy
        - CreateApp
        - CreateEndpoint
    rai-guardrails-service_guardrails.EvidenceArtifact:
      type: object
      properties:
        artifactType:
          $ref: '#/components/schemas/rai-guardrails-service_guardrails.ArtifactType'
        details:
          type: object
        id:
          type: string
        policyEntityId:
          type: string
        required:
          type: boolean
        visibilityRule:
          type: string
        visible:
          type: boolean
    rai-guardrails-service_guardrails.EvidenceScope:
      type: string
      enum:
        - Global
        - Local
      x-enum-varnames:
        - Global
        - Local
    rai-guardrails-service_guardrails.Recurring:
      type: object
      required:
        - every
        - unit
      properties:
        every:
          type: integer
          minimum: 1
        startDate:
          type: string
        unit:
          enum:
            - month
            - year
          allOf:
            - $ref: >-
                #/components/schemas/rai-guardrails-service_guardrails.RevalidationUnit
    rai-guardrails-service_guardrails.RevalidationType:
      type: string
      enum:
        - absolute
        - relative
      x-enum-varnames:
        - RevalidationTypeAbsolute
        - RevalidationTypeRelative
    rai-guardrails-service_guardrails.ArtifactType:
      type: string
      enum:
        - input
        - guidance
        - policyScriptedCheck
        - metadata
      x-enum-varnames:
        - Input
        - Guidance
        - AutomatedJob
        - Metadata
    rai-guardrails-service_guardrails.RevalidationUnit:
      type: string
      enum:
        - month
        - year
      x-enum-varnames:
        - RevalidationUnitMonth
        - RevalidationUnitYear

````

## Related topics

- [Clone a bundle into a new, standalone bundle](/6.3/api-reference/governance-operations/clone-a-bundle-into-a-new-standalone-bundle.md)
- [Copy the transferable results from one bundle to another](/6.3/api-reference/governance-operations/copy-the-transferable-results-from-one-bundle-to-another.md)
- [List bundles](/6.3/api-reference/governance-bundles/list-bundles.md)
- [Update bundle by ID](/6.3/api-reference/governance-bundles/update-bundle-by-id.md)
