Zum Hauptinhalt springen

Get a system software version

GET/v2/system-softwares/{systemSoftwareId}/versions/{systemSoftwareVersionId}
API-Version
v2
Request-Methode
GET
Operation-ID
app-get-systemsoftwareversion

Request​

  • systemSoftwareIdstring (uuid)required
  • systemSoftwareVersionIdstring (uuid)required

Responses​

Format
application/json
Beschreibung

The systemSoftwareVersion object.

  • expiryDatestring (date-time)
  • externalVersionstringrequired
  • feeeine von 2 Alternativen

    A strategy for fees of resources.

    • Alternativeobject

      A strategy for fees that occur once.

      • pricenumberrequired

        The one-time price in Euro Cents.

    • Alternativeobject

      A strategy for fees that occur periodically

      • periodsArray von objectrequired
        • Array[
          • *object
            • feeValidFromstring (date-time)
            • feeValidUntilstring (date-time)
            • monthlyPricenumberrequired

              The monthly price in Euro Cents.

          ]
  • idstring (uuid)required
  • internalVersionstringrequired
  • recommendedboolean
  • systemSoftwareDependenciesArray von object
    • Array[

      A SystemSoftwareDependency is a description of a need for a specific SystemSoftware in a semver versionRange.

      • *object

        A SystemSoftwareDependency is a description of a need for a specific SystemSoftware in a semver versionRange.

        • systemSoftwareIdstring (uuid)required
        • versionRangestringrequired
      ]
  • userInputsArray von object
    • Array[

      A UserInput is a description of an information which cannot be determined or estimated by mittwald, but has to be given by the person who is requesting an AppInstallation or SystemSoftware.

      • *object

        A UserInput is a description of an information which cannot be determined or estimated by mittwald, but has to be given by the person who is requesting an AppInstallation or SystemSoftware.

        • additionalValidationSchemaobject

          AdditionalValidationSchema is a stringified custom validation schema, e.g password rules.

          • kind"password-rule"

            AdditionalValidationSchemaKind is an enum, describing the possible types of an additional validation schema.

          • schemastring
        • dataSourcestring

          Optional field to tell the frontend, which data to put into the select.

        • dataTypestring (einer von: text, number, boolean, select)required

          UserInputDataType is an enum, describing the possible data types of a UserInput.

        • defaultValuestring
        • formatstring (einer von: email, password, url, uri)

          UserInputFormat is an enum, describing the possible data formats of a UserInput, the given values can be validated against.

        • lifecycleConstraintstring (einer von: installation, update, reconfigure)required

          The AppInstallationLifecycle can be used to express a specific point in the AppInstallation Lifecycle, e.g. while installing a new AppInstallation.

        • namestringrequired
        • positionMetaobject

          UserInputPositionMeta is a utility information, helping to position the UserInput properly on the frontend.

          • indexinteger
          • sectionstring
          • stepstring
        • requiredbooleanrequired
        • validationSchemastringrequired

          JSON Schema formatted (https://json-schema.org/‍).

      ]
Content-Type: application/json

{
"expiryDate": "1985-10-26T01:21:00.000Z",
"externalVersion": "string",
"fee": {
"price": 123
},
"id": "f0f86186-0a5a-45b2-aa33-502777496347",
"internalVersion": "string",
"recommended": true,
"systemSoftwareDependencies": [
{
"systemSoftwareId": "f0f86186-0a5a-45b2-aa33-502777496347",
"versionRange": "string"
}
],
"userInputs": [
{
"additionalValidationSchema": {
"kind": "password-rule",
"schema": "string"
},
"dataSource": "string",
"dataType": "text",
"defaultValue": "string",
"format": "email",
"lifecycleConstraint": "installation",
"name": "string",
"positionMeta": {
"index": 123,
"section": "string",
"step": "string"
},
"required": true,
"validationSchema": "string"
}
]
}
{
"description": "A SystemSoftwareVersion is an officially supported version of a SystemSoftware, containing the necessary and recommended configuration und dependencies.",
"properties": {
"expiryDate": {
"format": "date-time",
"type": "string"
},
"externalVersion": {
"type": "string"
},
"fee": {
"description": "A strategy for fees of resources.",
"oneOf": [
{
"description": "A strategy for fees that occur once.",
"properties": {
"price": {
"description": "The one-time price in Euro Cents.",
"type": "number"
}
},
"required": [
"price"
],
"type": "object"
},
{
"description": "A strategy for fees that occur periodically",
"properties": {
"periods": {
"items": {
"properties": {
"feeValidFrom": {
"format": "date-time",
"type": "string"
},
"feeValidUntil": {
"format": "date-time",
"type": "string"
},
"monthlyPrice": {
"description": "The monthly price in Euro Cents.",
"type": "number"
}
},
"required": [
"monthlyPrice"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"periods"
],
"type": "object"
}
]
},
"id": {
"format": "uuid",
"type": "string"
},
"internalVersion": {
"type": "string"
},
"recommended": {
"type": "boolean"
},
"systemSoftwareDependencies": {
"items": {
"description": "A SystemSoftwareDependency is a description of a need for a specific SystemSoftware in a semver versionRange.",
"properties": {
"systemSoftwareId": {
"format": "uuid",
"type": "string"
},
"versionRange": {
"type": "string"
}
},
"required": [
"systemSoftwareId",
"versionRange"
],
"type": "object"
},
"type": "array"
},
"userInputs": {
"items": {
"description": "A UserInput is a description of an information which cannot be determined or estimated by mittwald, but has to be given by the person who is requesting an AppInstallation or SystemSoftware.",
"properties": {
"additionalValidationSchema": {
"description": "AdditionalValidationSchema is a stringified custom validation schema, e.g password rules.",
"properties": {
"kind": {
"description": "AdditionalValidationSchemaKind is an enum, describing the possible types of an additional validation schema.",
"enum": [
"password-rule"
],
"type": "string"
},
"schema": {
"type": "string"
}
},
"type": "object"
},
"dataSource": {
"description": "Optional field to tell the frontend, which data to put into the select.",
"type": "string"
},
"dataType": {
"description": "UserInputDataType is an enum, describing the possible data types of a UserInput.",
"enum": [
"text",
"number",
"boolean",
"select"
],
"type": "string"
},
"defaultValue": {
"type": "string"
},
"format": {
"description": "UserInputFormat is an enum, describing the possible data formats of a UserInput, the given values can be validated against.",
"enum": [
"email",
"password",
"url",
"uri"
],
"type": "string"
},
"lifecycleConstraint": {
"description": "The AppInstallationLifecycle can be used to express a specific point in the AppInstallation Lifecycle, e.g. while installing a new AppInstallation.",
"enum": [
"installation",
"update",
"reconfigure"
],
"type": "string"
},
"name": {
"type": "string"
},
"positionMeta": {
"description": "UserInputPositionMeta is a utility information, helping to position the UserInput properly on the frontend.",
"properties": {
"index": {
"type": "integer"
},
"section": {
"type": "string"
},
"step": {
"type": "string"
}
},
"type": "object"
},
"required": {
"type": "boolean"
},
"validationSchema": {
"description": "JSON Schema formatted (https://json-schema.org/).",
"type": "string"
}
},
"required": [
"name",
"dataType",
"validationSchema",
"lifecycleConstraint",
"required"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"id",
"internalVersion",
"externalVersion"
],
"type": "object"
}

Nutzungsbeispiele​

$ curl \
--fail \
--location \
-H "Authorization: Bearer $MITTWALD_API_TOKEN" \
https://api.mittwald.de/v2/system-softwares/f0f86186-0a5a-45b2-aa33-502777496347/versions/f0f86186-0a5a-45b2-aa33-502777496347
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.getSystemsoftwareversion({
"systemSoftwareId": "f0f86186-0a5a-45b2-aa33-502777496347",
"systemSoftwareVersionId": "f0f86186-0a5a-45b2-aa33-502777496347"
});

assertStatus(response, 200);

use \Mittwald\ApiClient\Generated\V2\Clients\App\GetSystemsoftwareversion\GetSystemsoftwareversionRequest;

$client = MittwaldAPIClient::newWithToken(getenv('MITTWALD_API_TOKEN'));

$request = (new GetSystemsoftwareversionRequest(
systemSoftwareId: "f0f86186-0a5a-45b2-aa33-502777496347",
systemSoftwareVersionId: "f0f86186-0a5a-45b2-aa33-502777496347"
));
$response = $client->app()->getSystemsoftwareversion($request);

var_dump($response->getBody();

Auf dieser Seite