Skip to main content

Get the Contract Strategy of an Extension Instance

GET/v2/extension-instances/{extensionInstanceId}/contract
API version
v2
Request method
GET
Operation ID
extension-get-extension-instance-contract

Request​

  • extensionInstanceIdstring (uuid)required
    Example:"fbc49def-2e87-4874-8e30-a0dabe59e008"

Responses​

Format
application/json
Description
  • Alternativeobject

    A strategy for Contracts that will be paid periodically.

    • contractPeriodEndDatestring (date-time)
    • currentPriceinteger

      monthly price in Euro Cent

    • interactionDeadlinestring (date-time)
    • interactionRequiredbooleanrequired
    • pendingVariantChangeobject
      • effectiveDatestring (date-time)required
      • targetVariantKeystringrequired
    • statusstring (one of: notStarted, pending, active, terminationPending)required
    • terminationTargetDatestring (date-time)
    • variantDescriptionstring
    • variantKeystring
    • variantNamestring
Alternative #1
Content-Type: application/json

{
"contractPeriodEndDate": "1985-10-26T01:21:00.000Z",
"currentPrice": 999,
"interactionDeadline": "1985-10-26T01:21:00.000Z",
"interactionRequired": true,
"pendingVariantChange": {
"effectiveDate": "1985-10-26T01:21:00.000Z",
"targetVariantKey": "string"
},
"status": "notStarted",
"terminationTargetDate": "1985-10-26T01:21:00.000Z",
"variantDescription": "string",
"variantKey": "string",
"variantName": "string"
}
{
"description": "The Extension Instance Contract.",
"oneOf": [
{
"description": "A strategy for Contracts that will be paid periodically.",
"properties": {
"contractPeriodEndDate": {
"format": "date-time",
"type": "string"
},
"currentPrice": {
"description": "monthly price in Euro Cent",
"example": 999,
"type": "integer"
},
"interactionDeadline": {
"format": "date-time",
"type": "string"
},
"interactionRequired": {
"type": "boolean"
},
"pendingVariantChange": {
"properties": {
"effectiveDate": {
"format": "date-time",
"type": "string"
},
"targetVariantKey": {
"type": "string"
}
},
"required": [
"targetVariantKey",
"effectiveDate"
],
"type": "object"
},
"status": {
"enum": [
"notStarted",
"pending",
"active",
"terminationPending"
],
"type": "string"
},
"terminationTargetDate": {
"format": "date-time",
"type": "string"
},
"variantDescription": {
"type": "string"
},
"variantKey": {
"type": "string"
},
"variantName": {
"type": "string"
}
},
"required": [
"status",
"interactionRequired"
],
"type": "object"
}
]
}

Usage examples​

$ curl \
--fail \
--location \
-H "Authorization: Bearer $MITTWALD_API_TOKEN" \
https://api.mittwald.de/v2/extension-instances/f0f86186-0a5a-45b2-aa33-502777496347/contract
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.marketplace.extensionGetExtensionInstanceContract({
"extensionInstanceId": "f0f86186-0a5a-45b2-aa33-502777496347"
});

assertStatus(response, 200);

use \Mittwald\ApiClient\Generated\V2\Clients\Marketplace\ExtensionGetExtensionInstanceContract\ExtensionGetExtensionInstanceContractRequest;

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

$request = (new ExtensionGetExtensionInstanceContractRequest(
extensionInstanceId: "f0f86186-0a5a-45b2-aa33-502777496347"
));
$response = $client->marketplace()->extensionGetExtensionInstanceContract($request);

var_dump($response->getBody();

On this page