- API-Referenz
- App
- Get an app installation
Get an app installation
Request
- appInstallationIdstringrequired
Responses
The AppInstallation.
- appExternalVersionstringrequired
- appIdstring (uuid)required
- appNamestringrequired
- appVersionobjectrequired
VersionStatus describes the current and desired version of something like the AppVersion of an AppInstallation. If diverging, an internal process is going to assert, the current value will be aligned.
- currentstring
- desiredstringrequired
- lastChangeBystring
- lastChangedAtstring (date-time)
- previousstring
- autoUpdatesActivatedboolean
Whether automatic updates are activated.
- createdAtstring (date-time)required
- customDocumentRootstring
- deletionRequestedboolean
- descriptionstringrequired
- disabledbooleanrequired
- hostnamestring
- idstring (uuid)required
- installationPathstringrequired
- lastAutoUpdateFailedAtstring (date-time)
When the last automatic update failed. Automatic updates are deactivated after a failure. The value is kept when automatic updates are activated again, so it does not indicate the current state on its own; combine it with
autoUpdatesActivated(e.g. only warn while that is false). - lastErrorstring
The last error that occurred during an update. Resets on success.
- linkedDatabasesArray von objectrequired
- Array[
LinkedDatabase is a reference to a concrete Database and DatabaseUsers.
- *object
LinkedDatabase is a reference to a concrete Database and DatabaseUsers.
- databaseIdstring (uuid)required
- databaseUserIdsobject
- *string
- kindstring (einer von: mysql, redis)required
- purposestring (einer von: primary, cache, custom)required
]
- lockedByobject
- *string (einer von: unspecified, copy)
LockPurpose describes why a given AppInstallation is locked from deletion.
- phasestring (einer von: pending, installing, upgrading, ready, disabled, reconfiguring)required
Phase describes the current phase/state of an AppInstallation in its lifecycle.
- portsArray von object
- Array[
- *object
- namestring
- portinteger
]
- projectDescriptionstringrequired
- projectIdstring (uuid)required
- screenshotIdstring (uuid)
- screenshotRefstring
- shortIdstringrequired
- sourceAppInstallationIdstring
The source AppInstallation ID for a staging AppInstallation.
- stagingboolean
- systemSoftwareArray von objectrequired
- Array[
InstalledSystemSoftware describes the currently configured and installed SystemSoftwareVersion of a SystemSoftware besides the desired SystemSoftwareUpdatePolicy inside an AppInstallation.
- *object
InstalledSystemSoftware describes the currently configured and installed SystemSoftwareVersion of a SystemSoftware besides the desired SystemSoftwareUpdatePolicy inside an AppInstallation.
- externalVersionstringrequired
- namestringrequired
- systemSoftwareIdstring (uuid)required
- systemSoftwareVersionobjectrequired
VersionStatus describes the current and desired version of something like the AppVersion of an AppInstallation. If diverging, an internal process is going to assert, the current value will be aligned.
- currentstring
- desiredstringrequired
- lastChangeBystring
- lastChangedAtstring (date-time)
- previousstring
- updateAvailablebooleanrequired
- updatePolicystring (einer von: none, inheritedFromApp, patchLevel, all)required
SystemSoftwareUpdatePolicy describes which updates should be applied automatically by our systems.
]
- updateAvailablebooleanrequired
- updatePolicystring (einer von: none, patchLevel, all)required
AppUpdatePolicy describes which updates should be applied automatically by our systems.
- userInputsArray von objectrequired
- Array[
A SavedUserInput is an entered value for a desired UserInput of an AppVersion or SystemSoftwareVersion.
- *object
A SavedUserInput is an entered value for a desired UserInput of an AppVersion or SystemSoftwareVersion.
- namestringrequired
- valuestringrequired
]
Content-Type: application/json
{
"appExternalVersion": "string",
"appId": "f0f86186-0a5a-45b2-aa33-502777496347",
"appName": "string",
"appVersion": {
"current": "string",
"desired": "string",
"lastChangeBy": "string",
"lastChangedAt": "1985-10-26T01:21:00.000Z",
"previous": "string"
},
"autoUpdatesActivated": true,
"createdAt": "2024-09-20T22:57:32.000Z",
"customDocumentRoot": "string",
"deletionRequested": true,
"description": "string",
"disabled": true,
"hostname": "string",
"id": "f0f86186-0a5a-45b2-aa33-502777496347",
"installationPath": "string",
"lastAutoUpdateFailedAt": "1985-10-26T01:21:00.000Z",
"lastError": "string",
"linkedDatabases": [
{
"databaseId": "f0f86186-0a5a-45b2-aa33-502777496347",
"databaseUserIds": {
"string": "string"
},
"kind": "mysql",
"purpose": "primary"
}
],
"lockedBy": {
"string": "unspecified"
},
"phase": "ready",
"ports": [
{
"name": "string",
"port": 123
}
],
"projectDescription": "string",
"projectId": "f0f86186-0a5a-45b2-aa33-502777496347",
"screenshotId": "f0f86186-0a5a-45b2-aa33-502777496347",
"screenshotRef": "string",
"shortId": "a-XXXXXX",
"sourceAppInstallationId": "string",
"staging": true,
"systemSoftware": [
{
"externalVersion": "string",
"name": "string",
"systemSoftwareId": "f0f86186-0a5a-45b2-aa33-502777496347",
"systemSoftwareVersion": {
"current": "string",
"desired": "string",
"lastChangeBy": "string",
"lastChangedAt": "1985-10-26T01:21:00.000Z",
"previous": "string"
},
"updateAvailable": true,
"updatePolicy": "none"
}
],
"updateAvailable": true,
"updatePolicy": "none",
"userInputs": [
{
"name": "string",
"value": "string"
}
]
}
{
"description": "An AppInstallation is a concrete manifestation of an App in a specific AppVersion.",
"properties": {
"appExternalVersion": {
"type": "string"
},
"appId": {
"format": "uuid",
"type": "string"
},
"appName": {
"type": "string"
},
"appVersion": {
"description": "VersionStatus describes the current and desired version of something like the AppVersion of an AppInstallation. If diverging, an internal process is going to assert, the current value will be aligned.",
"properties": {
"current": {
"type": "string"
},
"desired": {
"type": "string"
},
"lastChangeBy": {
"type": "string"
},
"lastChangedAt": {
"format": "date-time",
"type": "string"
},
"previous": {
"type": "string"
}
},
"required": [
"desired"
],
"type": "object"
},
"autoUpdatesActivated": {
"description": "Whether automatic updates are activated.",
"type": "boolean"
},
"createdAt": {
"example": "2024-09-20T22:57:32.000Z",
"format": "date-time",
"type": "string"
},
"customDocumentRoot": {
"type": "string"
},
"deletionRequested": {
"default": false,
"type": "boolean"
},
"description": {
"type": "string"
},
"disabled": {
"default": false,
"type": "boolean"
},
"hostname": {
"type": "string"
},
"id": {
"format": "uuid",
"type": "string"
},
"installationPath": {
"type": "string"
},
"lastAutoUpdateFailedAt": {
"description": "When the last automatic update failed. Automatic updates are deactivated after a failure. The value is kept when automatic updates are activated again, so it does not indicate the current state on its own; combine it with `autoUpdatesActivated` (e.g. only warn while that is false).",
"format": "date-time",
"type": "string"
},
"lastError": {
"description": "The last error that occurred during an update. Resets on success.",
"type": "string"
},
"linkedDatabases": {
"items": {
"description": "LinkedDatabase is a reference to a concrete Database and DatabaseUsers.",
"properties": {
"databaseId": {
"format": "uuid",
"type": "string"
},
"databaseUserIds": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"kind": {
"enum": [
"mysql",
"redis"
],
"type": "string"
},
"purpose": {
"enum": [
"primary",
"cache",
"custom"
],
"type": "string"
}
},
"required": [
"databaseId",
"purpose",
"kind"
],
"type": "object"
},
"type": "array"
},
"lockedBy": {
"additionalProperties": {
"description": "LockPurpose describes why a given AppInstallation is locked from deletion.",
"enum": [
"unspecified",
"copy"
],
"type": "string"
},
"type": "object"
},
"phase": {
"description": "Phase describes the current phase/state of an AppInstallation in its lifecycle.",
"enum": [
"pending",
"installing",
"upgrading",
"ready",
"disabled",
"reconfiguring"
],
"example": "ready",
"type": "string"
},
"ports": {
"items": {
"properties": {
"name": {
"type": "string"
},
"port": {
"type": "integer"
}
},
"type": "object"
},
"type": "array"
},
"projectDescription": {
"type": "string"
},
"projectId": {
"format": "uuid",
"type": "string"
},
"screenshotId": {
"format": "uuid",
"type": "string"
},
"screenshotRef": {
"type": "string"
},
"shortId": {
"example": "a-XXXXXX",
"type": "string"
},
"sourceAppInstallationId": {
"description": "The source AppInstallation ID for a staging AppInstallation.",
"type": "string"
},
"staging": {
"type": "boolean"
},
"systemSoftware": {
"items": {
"description": "InstalledSystemSoftware describes the currently configured and installed SystemSoftwareVersion of a SystemSoftware besides the desired SystemSoftwareUpdatePolicy inside an AppInstallation.",
"properties": {
"externalVersion": {
"type": "string"
},
"name": {
"type": "string"
},
"systemSoftwareId": {
"format": "uuid",
"type": "string"
},
"systemSoftwareVersion": {
"description": "VersionStatus describes the current and desired version of something like the AppVersion of an AppInstallation. If diverging, an internal process is going to assert, the current value will be aligned.",
"properties": {
"current": {
"type": "string"
},
"desired": {
"type": "string"
},
"lastChangeBy": {
"type": "string"
},
"lastChangedAt": {
"format": "date-time",
"type": "string"
},
"previous": {
"type": "string"
}
},
"required": [
"desired"
],
"type": "object"
},
"updateAvailable": {
"default": false,
"type": "boolean"
},
"updatePolicy": {
"description": "SystemSoftwareUpdatePolicy describes which updates should be applied automatically by our systems.",
"enum": [
"none",
"inheritedFromApp",
"patchLevel",
"all"
],
"type": "string"
}
},
"required": [
"systemSoftwareId",
"updatePolicy",
"systemSoftwareVersion",
"name",
"externalVersion",
"updateAvailable"
],
"type": "object"
},
"type": "array"
},
"updateAvailable": {
"default": false,
"type": "boolean"
},
"updatePolicy": {
"description": "AppUpdatePolicy describes which updates should be applied automatically by our systems.",
"enum": [
"none",
"patchLevel",
"all"
],
"type": "string"
},
"userInputs": {
"items": {
"description": "A SavedUserInput is an entered value for a desired UserInput of an AppVersion or SystemSoftwareVersion.",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"id",
"appId",
"shortId",
"appVersion",
"description",
"installationPath",
"disabled",
"createdAt",
"projectId",
"systemSoftware",
"userInputs",
"updatePolicy",
"linkedDatabases",
"phase",
"appName",
"updateAvailable",
"appExternalVersion",
"projectDescription"
],
"type": "object"
}
The requested resource was not found
- messagestringrequired
- typestringrequired
Content-Type: application/json
{
"message": "Something went wrong",
"type": "InternalServerError"
}
{
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"message": {
"type": "string",
"example": "Something went wrong"
},
"type": {
"type": "string",
"example": "InternalServerError"
}
}
}
Your request ran into a rate limit. You have to wait until rate limit expires
- messagestring
- typestring
Content-Type: application/json
{
"message": "too many requests",
"type": "RateLimitError"
}
{
"type": "object",
"properties": {
"message": {
"type": "string",
"example": "too many requests"
},
"type": {
"type": "string",
"example": "RateLimitError"
}
}
}
An unexpected Error that occurred while handling the request
- messagestringrequired
- typestringrequired
Content-Type: application/json
{
"message": "Something went wrong",
"type": "InternalServerError"
}
{
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"message": {
"type": "string",
"example": "Something went wrong"
},
"type": {
"type": "string",
"example": "InternalServerError"
}
}
}
Nutzungsbeispiele
$ curl \
--fail \
--location \
-H "Authorization: Bearer $MITTWALD_API_TOKEN" \
https://api.mittwald.de/v2/app-installations/string
import { MittwaldAPIV2Client } from "@mittwald/api-client";
import { assertStatus } from "@mittwald/api-client-commons";
const client = MittwaldAPIClient.newWithToken(process.env.MITTWALD_API_TOKEN);
const response = await client.app.getAppinstallation({
"appInstallationId": "string"
});
assertStatus(response, 200);
use \Mittwald\ApiClient\Generated\V2\Clients\App\GetAppinstallation\GetAppinstallationRequest;
$client = MittwaldAPIClient::newWithToken(getenv('MITTWALD_API_TOKEN'));
$request = (new GetAppinstallationRequest(
appInstallationId: "string"
));
$response = $client->app()->getAppinstallation($request);
var_dump($response->getBody();