> ## 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.

# Get the live diff for a completed extension install snapshot

> Compares the install snapshot's manifest against the current live state of each managed entity (e.g. project, app, etc) for the given completed install snapshot. Only complete snapshots may be diffed. Returns 400 if the snapshot is incomplete, scheduled for uninstall, or uses an unsupported manifest schema version.




## OpenAPI

````yaml /api-specs/6.3/public-api.json get /api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff
openapi: 3.0.3
info:
  title: Domino Public API
  description: Reference for Domino's public REST API endpoints.
  version: 6.3.0
  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: AIGateway
    x-displayName: AIGateway
  - name: AppInstances
    x-displayName: AppInstances
  - name: AppVersions
    x-displayName: AppVersions
  - name: Apps
    x-displayName: Apps
  - name: AsyncPredictions
    x-displayName: AsyncPredictions
  - name: AuditTrail
    x-displayName: AuditTrail
  - name: BillingTag
    x-displayName: BillingTag
  - name: BillingTagSettings
    x-displayName: BillingTagSettings
  - name: Cost
    x-displayName: Cost
  - name: CustomMetrics
    x-displayName: CustomMetrics
  - name: DataSource
    x-displayName: DataSource
  - name: DatasetRw
    x-displayName: DatasetRw
  - name: DeploymentTargets
    x-displayName: DeploymentTargets
  - name: Environments
    x-displayName: Environments
  - name: Extensions
    x-displayName: Extensions
  - name: GenAI
    x-displayName: GenAI
  - name: HPC Jobs
    x-displayName: HPC Jobs
  - name: HardwareTier
    x-displayName: HardwareTier
  - name: Jobs
    x-displayName: Jobs
  - name: ModelAPI
    x-displayName: ModelAPI
  - name: ModelAPIVersion
    x-displayName: ModelAPIVersion
  - name: ModelDeployment
    x-displayName: ModelDeployment
  - name: Organizations
    x-displayName: Organizations
  - name: PPM
    x-displayName: PPM
  - name: PersonalAccessToken
    x-displayName: PersonalAccessToken
  - name: ProjectSharedDatasets
    x-displayName: ProjectSharedDatasets
  - name: ProjectTemplates
    x-displayName: ProjectTemplates
  - name: Projects
    x-displayName: Projects
  - name: ProjectsCommits
    x-displayName: ProjectsCommits
  - name: ProjectsFiles
    x-displayName: ProjectsFiles
  - name: RegisteredModels
    x-displayName: RegisteredModels
  - name: ServiceAccounts
    x-displayName: ServiceAccounts
  - name: Users
    x-displayName: Users
  - name: Workspaces
    x-displayName: Workspaces
  - name: nucleus_other
    x-displayName: other
  - name: PersonalAccessTokenAdmin
    x-displayName: PersonalAccessTokenAdmin
  - name: Git Credentials
    x-displayName: Git Credentials
  - name: Activity
    x-displayName: Activity
  - name: Admin
    x-displayName: Admin
  - name: Notifications
    x-displayName: Notifications
  - name: Adminnotifications
    x-displayName: Adminnotifications
  - name: UserManagement
    x-displayName: UserManagement
  - name: WhiteLabel
    x-displayName: WhiteLabel
  - name: Authentication and Authorization
    x-displayName: Authentication and Authorization
  - name: Code
    x-displayName: Code
  - name: ComputeCluster
    x-displayName: ComputeCluster
  - name: Control Center
    x-displayName: Control Center
  - name: controlcenter
    x-displayName: controlcenter
  - name: DataSourceCredential
    x-displayName: DataSourceCredential
  - name: DataMount
    x-displayName: DataMount
  - name: DataPlane
    x-displayName: DataPlane
  - name: dataset
    x-displayName: dataset
  - name: Datasets
    x-displayName: Datasets
  - name: datasetrw.api
    x-displayName: datasetrw.api
  - name: DatasetObjectStore
    x-displayName: DatasetObjectStore
  - name: DevelopV1ProjectTemplates
    x-displayName: DevelopV1ProjectTemplates
  - name: DevelopV1Projects
    x-displayName: DevelopV1Projects
  - name: Execution Events
    x-displayName: Execution Events
  - name: Files
    x-displayName: Files
  - name: Frontend
    x-displayName: Frontend
  - name: Gateway
    x-displayName: Gateway
  - name: Runs
    x-displayName: Runs
  - name: Search
    x-displayName: Search
  - name: Git
    x-displayName: Git
  - name: Metadata
    x-displayName: Metadata
  - name: Gruz
    x-displayName: Gruz
  - name: Guardrails
    x-displayName: Guardrails
  - name: Hardware Tier
    x-displayName: Hardware Tier
  - name: ActionableInsights
    x-displayName: ActionableInsights
  - name: Socket
    x-displayName: Socket
  - name: Job
    x-displayName: Job
  - name: Tags
    x-displayName: Tags
  - name: JobComments
    x-displayName: JobComments
  - name: LogsWithProblemSuggestion
    x-displayName: LogsWithProblemSuggestion
  - name: JobResults
    x-displayName: JobResults
  - name: Layout
    x-displayName: Layout
  - name: Metrics
    x-displayName: Metrics
  - name: MLFlow
    x-displayName: MLFlow
  - name: ModelManager
    x-displayName: ModelManager
  - name: Model Products
    x-displayName: Model Products
  - name: Project Goals
    x-displayName: Project Goals
  - name: ProjectManagement
    x-displayName: ProjectManagement
  - name: Templates
    x-displayName: Templates
  - name: Project
    x-displayName: Project
  - name: Launchers
    x-displayName: Launchers
  - name: Scheduled Jobs
    x-displayName: Scheduled Jobs
  - name: Quota
    x-displayName: Quota
  - name: RemoteFileSystem
    x-displayName: RemoteFileSystem
  - name: Scheduled Runs
    x-displayName: Scheduled Runs
  - name: Workspace
    x-displayName: Workspace
  - name: Logs
    x-displayName: Logs
  - name: WorkspaceComments
    x-displayName: WorkspaceComments
  - name: WorkspaceResults
    x-displayName: WorkspaceResults
  - name: Resource
    description: The Data Plane Resource API
    x-displayName: Resource
  - name: authz
    x-displayName: authz
  - name: volumes
    x-displayName: volumes
  - name: data transfers
    x-displayName: data transfers
  - name: downloads
    x-displayName: downloads
  - name: filesystems
    x-displayName: filesystems
  - name: snapshots
    x-displayName: snapshots
  - name: tasks
    x-displayName: tasks
  - description: Manage taxonomy namespaces.
    name: Tagging - Namespaces
    x-displayName: Tagging - Namespaces
  - description: Manage tags within namespaces.
    name: Tagging - Tags
    x-displayName: Tagging - Tags
  - description: Assign, remove, and list tag assignments on entities.
    name: Tagging - Entity Tags
    x-displayName: Tagging - Entity Tags
  - description: Look up entities by tag.
    name: Tagging - Entities
    x-displayName: Tagging - Entities
  - description: Fetch the full namespace + tag hierarchy.
    name: Tagging - Taxonomy Tree
    x-displayName: Tagging - Taxonomy Tree
  - description: Validate and import taxonomy data from a file.
    name: Tagging - Import
    x-displayName: Tagging - Import
  - description: Export the current taxonomy to a file.
    name: Tagging - Export
    x-displayName: Tagging - Export
  - description: Internal-only endpoints for service-account callers.
    name: Tagging - Internal
    x-displayName: Tagging - Internal
  - description: Manage property definitions and their groups.
    name: Properties - Definitions
    x-displayName: Properties - Definitions
  - description: Read and update an entity's property values.
    name: Properties - Values
    x-displayName: Properties - Values
  - description: Internal-only endpoints for service-account callers (properties).
    name: Properties - Internal
    x-displayName: Properties - Internal
  - name: config
    x-displayName: config
  - name: Workloads
    description: Everything related to deploying and managingDomino Workloads
    x-displayName: Workloads
  - name: Executor
    description: Executor-related commands
    x-displayName: Executor
  - name: HPC
    description: HPC workload management
    x-displayName: HPC
  - name: Endpoints
    x-displayName: Endpoints
  - name: mlflow-proxy_other
    x-displayName: other
  - name: attachments
    x-displayName: attachments
  - name: bundle-stages
    x-displayName: bundle-stages
  - name: bundles
    x-displayName: bundles
  - name: findings
    x-displayName: findings
  - name: drafts
    x-displayName: drafts
  - name: evidence-templates
    x-displayName: evidence-templates
  - name: policies
    x-displayName: policies
  - name: policy-versions
    x-displayName: policy-versions
  - name: policy-enforcers
    x-displayName: policy-enforcers
  - name: results
    x-displayName: results
  - name: rpc
    x-displayName: rpc
  - name: approvals
    x-displayName: approvals
  - description: >-
      Create, query, bulk-update, and evaluate priority-based access control
      rules.
    name: rules
    x-displayName: rules
  - name: domino-connect_other
    x-displayName: other
  - name: events
    x-displayName: events
  - name: curated-central-configs
    x-displayName: curated-central-configs
  - name: nodepools
    x-displayName: nodepools
  - name: ip-allowlist
    x-displayName: ip-allowlist
externalDocs:
  description: OpenAPI
  url: https://swagger.io/resources/open-api/
paths:
  /api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff:
    get:
      tags:
        - Extensions
      summary: Get the live diff for a completed extension install snapshot
      description: >
        Compares the install snapshot's manifest against the current live state
        of each managed entity (e.g. project, app, etc) for the given completed
        install snapshot. Only complete snapshots may be diffed. Returns 400 if
        the snapshot is incomplete, scheduled for uninstall, or uses an
        unsupported manifest schema version.
      operationId: getExtensionInstallSnapshotLiveDiff
      parameters:
        - description: The id of the OfficialExtensionInstall record.
          in: path
          name: installId
          required: true
          schema:
            type: string
        - description: The id of the ExtensionInstallSnapshot record.
          in: path
          name: snapshotId
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/nucleus_ExtensionInstallSnapshotDiff'
          description: Success
        '400':
          $ref: '#/components/responses/nucleus_400'
        '401':
          $ref: '#/components/responses/nucleus_401'
        '403':
          $ref: '#/components/responses/nucleus_403'
        '404':
          $ref: '#/components/responses/nucleus_404'
        '500':
          $ref: '#/components/responses/nucleus_500'
      security:
        - nucleus_DominoApiKey: []
        - nucleus_BearerAuthentication: []
components:
  schemas:
    nucleus_ExtensionInstallSnapshotDiff:
      properties:
        extensionInstallId:
          description: The id of the parent install record.
          type: string
        managedEntityDiffs:
          $ref: '#/components/schemas/nucleus_ManagedEntityDiffs'
        releaseTag:
          description: The Git release tag of the installed version.
          type: string
        remoteRepo:
          description: The remote repository URL for the extension.
          type: string
        snapshotId:
          description: The id of the snapshot that was diffed.
          type: string
        upgradedFromSnapshotId:
          description: >-
            The id of the previously completed snapshot this was an upgrade
            from. Null for fresh installs.
          nullable: true
          type: string
      required:
        - snapshotId
        - extensionInstallId
        - remoteRepo
        - releaseTag
        - managedEntityDiffs
      type: object
    nucleus_ManagedEntityDiffs:
      properties:
        app:
          allOf:
            - $ref: '#/components/schemas/nucleus_ManagedEntityDiff'
          nullable: true
        environment:
          allOf:
            - $ref: '#/components/schemas/nucleus_ManagedEntityDiff'
          description: >-
            Null for installs using a built-in environment (e.g. DSE/DCE); only
            present for custom environments.
          nullable: true
        extension:
          allOf:
            - $ref: '#/components/schemas/nucleus_ManagedEntityDiff'
          nullable: true
        project:
          allOf:
            - $ref: '#/components/schemas/nucleus_ManagedEntityDiff'
          nullable: true
      type: object
    nucleus_ErrorV1:
      properties:
        code:
          description: Machine-readable error code.
          example: NOT_FOUND
          type: string
        message:
          description: Human-readable description of the error.
          example: The requested HPC Job could not be found.
          type: string
      required:
        - message
      type: object
    nucleus_ManagedEntityDiff:
      properties:
        fieldDiffs:
          description: >-
            Fields whose live value differs from the manifest, or that could not
            be compared.
          items:
            $ref: '#/components/schemas/nucleus_ManifestFieldDiff'
          type: array
        matchesManifest:
          description: >
            True only if every field could be compared and matched exactly
            against the manifest. False if any field differs, any field could
            not be compared, the manifest left any field unspecified
            (defaulted), or the entity could not be located.
          type: boolean
        matchesManifestIgnoringDefaultedFields:
          description: >
            True only if every manifest-specified field matched and no field was
            unable to be compared. Differences on fields the manifest left
            unspecified are ignored. False if the entity could not be located.
          type: boolean
        notFound:
          description: >-
            True if an entity ID is recorded in the snapshot but the entity
            could not be located.
          nullable: true
          type: boolean
        rawComparison:
          allOf:
            - $ref: '#/components/schemas/nucleus_RawEntityComparison'
          description: >
            Comparison of the raw entity JSON captured at install time against
            the current live JSON. Format changes, migrations, changes to
            inconsequential values, and field renames may produce noise.
      required:
        - matchesManifest
        - matchesManifestIgnoringDefaultedFields
        - fieldDiffs
        - rawComparison
      type: object
    nucleus_ManifestFieldDiff:
      properties:
        diffUnavailable:
          description: >
            True if this field could not be compared (e.g. GitHub unreachable
            for Dockerfile contents). Both manifestValue and liveValue will be
            null when true.
          nullable: true
          type: boolean
        field:
          description: >-
            Dot-path field name relative to the manifest, e.g.
            "project.description" or "app.autoscalingSpec.minReplicas".
          type: string
        isDerived:
          description: >
            True if this field is not directly present in the manifest but is
            derived from manifest fields (e.g. dockerfileContents derived from
            dockerfilePath).
          nullable: true
          type: boolean
        liveValue:
          description: >-
            The current value of the field on the live entity. Null if the diff
            was unavailable.
          nullable: true
          type: string
        manifestValue:
          description: >
            The value specified in the manifest. Null if the manifest did not
            explicitly set this field (installer-defaulted) or if the diff was
            unavailable.
          nullable: true
          type: string
      required:
        - field
      type: object
    nucleus_RawEntityComparison:
      properties:
        installedEntityJson:
          description: >-
            Raw JSON of the entity captured when the installer completed the
            relevant step. Null if not recorded.
          nullable: true
          type: string
        liveEntityJson:
          description: >-
            Raw JSON of the entity as fetched at diff time. Null if the entity
            could not be located.
          nullable: true
          type: string
      type: object
  responses:
    nucleus_400:
      content:
        application/json:
          schema:
            properties:
              error:
                type: string
            type: object
      description: Bad Request
    nucleus_401:
      content:
        application/json:
          example:
            code: UNAUTHORIZED
            message: Authentication is required to access this resource.
          schema:
            $ref: '#/components/schemas/nucleus_ErrorV1'
      description: Unauthorized - authentication is required or has failed.
    nucleus_403:
      content:
        application/json:
          example:
            code: FORBIDDEN
            message: You do not have permission to perform this action.
          schema:
            $ref: '#/components/schemas/nucleus_ErrorV1'
      description: Forbidden - the caller lacks permission to perform this action.
    nucleus_404:
      content:
        application/json:
          schema:
            properties:
              error:
                type: string
            type: object
      description: Not Found
    nucleus_500:
      content:
        application/json:
          schema:
            properties:
              error:
                type: string
            type: object
      description: Internal Server Error
  securitySchemes:
    nucleus_DominoApiKey:
      type: apiKey
      name: X-Domino-Api-Key
      in: header
    nucleus_BearerAuthentication:
      type: apiKey
      name: Authorization
      in: header

````

## Related topics

- [Cancel a Domino Official Extension install or upgrade](/6.3/api-reference/extensions/cancel-a-domino-official-extension-install-or-upgrade.md)
- [Get a Domino Official Extension install by id](/6.3/api-reference/extensions/get-a-domino-official-extension-install-by-id.md)
- [List Domino Official Extension install options](/6.3/api-reference/extensions/list-domino-official-extension-install-options.md)
- [Initiate a Domino Official Extension install or upgrade](/6.3/api-reference/extensions/initiate-a-domino-official-extension-install-or-upgrade.md)
