Appearance
Variable: AppInstallChangeOutcome
ts
const AppInstallChangeOutcome: z.ZodObject<{
change: z.ZodObject<{
approvalSettings: z.ZodObject<{
fourEyes: z.ZodBoolean;
required: z.ZodBoolean;
}, z.core.$strip>;
comment: z.ZodNullable<z.ZodString>;
config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
decidedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
decidedBy: z.ZodNullable<z.ZodString>;
decision: z.ZodNullable<z.ZodEnum<{
approved: "approved";
rejected: "rejected";
withdrawn: "withdrawn";
}>>;
decisionComment: z.ZodNullable<z.ZodString>;
enabled: z.ZodBoolean;
handlesAdded: z.ZodArray<z.ZodEnum<{
handoff: "handoff";
webhook: "webhook";
}>>;
hosts: z.ZodArray<z.ZodString>;
hostsAdded: z.ZodArray<z.ZodString>;
id: z.ZodGUID;
installId: z.ZodGUID;
installName: z.ZodString;
installUpdatedAt: z.ZodCoercedDate<unknown>;
needsAdded: z.ZodArray<z.ZodEnum<{
documents: "documents";
}>>;
newInstall: z.ZodBoolean;
origin: z.ZodEnum<{
auto_upgrade: "auto_upgrade";
save: "save";
}>;
requestedAt: z.ZodCoercedDate<unknown>;
requestedBy: z.ZodString;
tenantId: z.ZodGUID;
versionId: z.ZodGUID;
}, z.core.$strip>;
install: z.ZodNullable<z.ZodObject<{
aliases: z.ZodArray<z.ZodString>;
appName: z.ZodString;
autoUpgrade: z.ZodEnum<{
compatible: "compatible";
off: "off";
}>;
circuit: z.ZodObject<{
defaults: z.ZodObject<{
failureThreshold: z.ZodNumber;
openSeconds: z.ZodNumber;
}, z.core.$strip>;
failures: z.ZodNumber;
settings: z.ZodObject<{
failureThreshold: z.ZodNullable<z.ZodNumber>;
openSeconds: z.ZodNullable<z.ZodNumber>;
}, z.core.$strip>;
since: z.ZodNullable<z.ZodCoercedDate<unknown>>;
state: z.ZodEnum<{
closed: "closed";
half_open: "half_open";
open: "open";
}>;
}, z.core.$strip>;
config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
createdAt: z.ZodCoercedDate<unknown>;
enabled: z.ZodBoolean;
hosts: z.ZodArray<z.ZodString>;
id: z.ZodGUID;
missingSecrets: z.ZodArray<z.ZodString>;
name: z.ZodString;
pendingChange: z.ZodNullable<z.ZodObject<{
approvalSettings: z.ZodObject<{
fourEyes: z.ZodBoolean;
required: z.ZodBoolean;
}, z.core.$strip>;
comment: z.ZodNullable<z.ZodString>;
config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
decidedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
decidedBy: z.ZodNullable<z.ZodString>;
decision: z.ZodNullable<z.ZodEnum<{
approved: ...;
rejected: ...;
withdrawn: ...;
}>>;
decisionComment: z.ZodNullable<z.ZodString>;
enabled: z.ZodBoolean;
handlesAdded: z.ZodArray<z.ZodEnum<{
handoff: ...;
webhook: ...;
}>>;
hosts: z.ZodArray<z.ZodString>;
hostsAdded: z.ZodArray<z.ZodString>;
id: z.ZodGUID;
installId: z.ZodGUID;
installName: z.ZodString;
installUpdatedAt: z.ZodCoercedDate<unknown>;
needsAdded: z.ZodArray<z.ZodEnum<{
documents: ...;
}>>;
newInstall: z.ZodBoolean;
origin: z.ZodEnum<{
auto_upgrade: "auto_upgrade";
save: "save";
}>;
requestedAt: z.ZodCoercedDate<unknown>;
requestedBy: z.ZodString;
tenantId: z.ZodGUID;
versionId: z.ZodGUID;
}, z.core.$strip>>;
requiredSecrets: z.ZodArray<z.ZodString>;
storedSecrets: z.ZodArray<z.ZodString>;
tenantId: z.ZodGUID;
updateAvailable: z.ZodBoolean;
updatedAt: z.ZodCoercedDate<unknown>;
upgrade: z.ZodNullable<z.ZodObject<{
actions: z.ZodArray<z.ZodObject<{
action: ...;
problem: ...;
usedBy: ...;
}, z.core.$strip>>;
changeId: z.ZodNullable<z.ZodGUID>;
handlesAdded: z.ZodArray<z.ZodEnum<{
handoff: ...;
webhook: ...;
}>>;
hostsAdded: z.ZodArray<z.ZodString>;
issues: z.ZodArray<z.ZodObject<{
message: ...;
path: ...;
}, z.core.$strip>>;
missingSecrets: z.ZodArray<z.ZodString>;
needsAdded: z.ZodArray<z.ZodEnum<{
documents: ...;
}>>;
rollback: z.ZodBoolean;
target: z.ZodObject<{
id: z.ZodGUID;
version: z.ZodString;
}, z.core.$strip>;
waitingFor: z.ZodNullable<z.ZodEnum<{
actions: ...;
approval: ...;
config: ...;
declined: ...;
secrets: ...;
}>>;
}, z.core.$strip>>;
upgradedFromVersionId: z.ZodNullable<z.ZodGUID>;
version: z.ZodObject<{
actions: z.ZodArray<z.ZodObject<{
callbackTimeoutSeconds: z.ZodOptional<...>;
description: z.ZodOptional<...>;
idempotent: z.ZodBoolean;
inputSchema: z.ZodRecord<..., ...>;
mappable: z.ZodOptional<...>;
name: z.ZodString;
outputFromInput: z.ZodOptional<...>;
outputSchema: z.ZodRecord<..., ...>;
retry: z.ZodOptional<...>;
timeoutMs: z.ZodNumber;
}, z.core.$strip>>;
capabilities: z.ZodArray<z.ZodString>;
category: z.ZodOptional<z.ZodString>;
configSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
createdAt: z.ZodCoercedDate<unknown>;
description: z.ZodOptional<z.ZodString>;
docsUrl: z.ZodOptional<z.ZodString>;
documentsFromConfig: z.ZodOptional<z.ZodString>;
handles: z.ZodObject<{
handoff: z.ZodOptional<z.ZodBoolean>;
webhook: z.ZodDefault<z.ZodBoolean>;
webhookExternalId: z.ZodOptional<z.ZodUnion<...>>;
webhookExternalIdFromConfig: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
hosts: z.ZodArray<z.ZodString>;
hostsFromConfig: z.ZodArray<z.ZodString>;
id: z.ZodGUID;
memoryMiB: z.ZodNumber;
name: z.ZodString;
needs: z.ZodArray<z.ZodEnum<{
documents: "documents";
}>>;
platformSource: z.ZodNullable<z.ZodEnum<{
operator: "operator";
release: "release";
}>>;
pricingNote: z.ZodOptional<z.ZodString>;
provenance: z.ZodNullable<z.ZodObject<{
kind: z.ZodEnum<...>;
recordedBy: z.ZodString;
signedAt: z.ZodNullable<...>;
signer: z.ZodNullable<...>;
source: z.ZodObject<..., ...>;
transparencyLogIndex: z.ZodNullable<...>;
trusted: z.ZodBoolean;
trustedSigner: z.ZodNullable<...>;
verifiedAt: z.ZodCoercedDate<...>;
}, z.core.$strip>>;
publishedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
publisher: z.ZodEnum<{
platform: "platform";
tenant: "tenant";
}>;
review: z.ZodNullable<z.ZodObject<{
comment: z.ZodNullable<...>;
decidedAt: z.ZodNullable<...>;
decidedBy: z.ZodNullable<...>;
id: z.ZodGUID;
requestedAt: z.ZodCoercedDate<...>;
requestedBy: z.ZodString;
status: z.ZodEnum<...>;
tenantId: z.ZodGUID;
versionId: z.ZodGUID;
}, z.core.$strip>>;
secrets: z.ZodArray<z.ZodObject<{
description: z.ZodOptional<...>;
name: z.ZodString;
requiredWhen: z.ZodOptional<...>;
}, z.core.$strip>>;
secretsFromConfig: z.ZodOptional<z.ZodString>;
sha256: z.ZodString;
sizeBytes: z.ZodNumber;
status: z.ZodEnum<{
published: "published";
uploaded: "uploaded";
withdrawn: "withdrawn";
}>;
title: z.ZodOptional<z.ZodString>;
vendor: z.ZodOptional<z.ZodString>;
version: z.ZodString;
}, z.core.$strip>;
versionId: z.ZodGUID;
webhookUrl: z.ZodNullable<z.ZodURL>;
}, z.core.$strip>>;
}, z.core.$strip>;POST /app-installs/:install/changes/:id/{approve,reject,withdraw}: the decided change and the install as it is now; null once a rejected or withdrawn new install is removed.