Get the live diff for a completed extension install snapshot
curl --request GET \
--url https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff \
--header 'X-Domino-Api-Key: <api-key>'import requests
url = "https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff"
headers = {"X-Domino-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Domino-Api-Key': '<api-key>'}};
fetch('https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Domino-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff")
.header("X-Domino-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"extensionInstallId": "<string>",
"managedEntityDiffs": {
"app": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
},
"environment": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
},
"extension": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
},
"project": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
}
},
"releaseTag": "<string>",
"remoteRepo": "<string>",
"snapshotId": "<string>",
"upgradedFromSnapshotId": "<string>"
}{
"error": "<string>"
}{
"code": "UNAUTHORIZED",
"message": "Authentication is required to access this resource."
}{
"code": "FORBIDDEN",
"message": "You do not have permission to perform this action."
}{
"error": "<string>"
}{
"error": "<string>"
}Extensions
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.
GET
/
api
/
extensions
/
beta
/
official-installs
/
{installId}
/
snapshots
/
{snapshotId}
/
liveDiff
Get the live diff for a completed extension install snapshot
curl --request GET \
--url https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff \
--header 'X-Domino-Api-Key: <api-key>'import requests
url = "https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff"
headers = {"X-Domino-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Domino-Api-Key': '<api-key>'}};
fetch('https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Domino-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff")
.header("X-Domino-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/extensions/beta/official-installs/{installId}/snapshots/{snapshotId}/liveDiff")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"extensionInstallId": "<string>",
"managedEntityDiffs": {
"app": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
},
"environment": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
},
"extension": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
},
"project": {
"fieldDiffs": [
{
"field": "<string>",
"diffUnavailable": true,
"isDerived": true,
"liveValue": "<string>",
"manifestValue": "<string>"
}
],
"matchesManifest": true,
"matchesManifestIgnoringDefaultedFields": true,
"rawComparison": {
"installedEntityJson": "<string>",
"liveEntityJson": "<string>"
},
"notFound": true
}
},
"releaseTag": "<string>",
"remoteRepo": "<string>",
"snapshotId": "<string>",
"upgradedFromSnapshotId": "<string>"
}{
"error": "<string>"
}{
"code": "UNAUTHORIZED",
"message": "Authentication is required to access this resource."
}{
"code": "FORBIDDEN",
"message": "You do not have permission to perform this action."
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
nucleus_DominoApiKeynucleus_BearerAuthentication
Path Parameters
The id of the OfficialExtensionInstall record.
The id of the ExtensionInstallSnapshot record.
Response
Success
The id of the parent install record.
Show child attributes
Show child attributes
The Git release tag of the installed version.
The remote repository URL for the extension.
The id of the snapshot that was diffed.
The id of the previously completed snapshot this was an upgrade from. Null for fresh installs.
Related topics
Cancel a Domino Official Extension install or upgradeGet a Domino Official Extension install by idList Domino Official Extension install optionsInitiate a Domino Official Extension install or upgradeWas this page helpful?
⌘I