Get the ContractItem with the given ID
GET/contracts/ {contractId}/ items/ {contractItemId}/
v2
GET
contract-get-detail-of-contract-item
Request
- contractIdstring (uuid)required
The uuid of the Contract where the desired ContractItem belongs to.
Example:"97cecfa0-2c3c-4272-a510-c775fcaade01"
- contractItemIdstring (uuid)required
The uuid of the ContractItem to be returned.
Example:"19b3e88e-c656-4440-8b89-efbf881b9c6f"
Responses
application/json
- Schema documentation
- Example
- JSON Schema
- activationDatestring (date-time)
- aggregateReferenceobject
- aggregatestringrequired
- domainstringrequired
- idstringrequired
- articlesarray of objectrequired
- Array[
- *object
- amountinteger (≥ 1)required
- articleTemplateIdstringrequired
- descriptionstring
- idstringrequired
- namestringrequired
- unitPriceobjectrequired
- currency"EUR"required
- valueintegerrequired
The value of the price in the smallest currency unit (e.g. cents)
]
contractPeriodnumber (≥ 0)
required
descriptionstring
required
freeTrialDaysnumber
groupByProjectIdstring (uuid)
invoiceStopstring (date-time)
If this attribute is set, the contract item will currently only be invoiced until this date.
invoicingPeriodnumber
isActivatedboolean
required
isBaseItemboolean
required
isInFreeTrialboolean
isInclusiveboolean
itemIdstring (uuid)
required
nextPossibleDowngradeDatestring (date-time)
If this attribute is not set, termination is not allowed.
nextPossibleTerminationDatestring (date-time)
If this attribute is not set, a tariff change is not allowed.
nextPossibleUpgradeDatestring (date-time)
If this attribute is not set, a tariff change is not allowed.
orderDatestring (date-time)
orderIdstring (uuid)
replacedByItemstring (uuid)
tariffChangeobject
- newArticlesarray of objectrequired
- Array[
- *object
- amountinteger (≥ 1)required
- articleTemplateIdstringrequired
- descriptionstring
- idstringrequired
- namestringrequired
- unitPriceobjectrequired
- currency"EUR"required
- valueintegerrequired
The value of the price in the smallest currency unit (e.g. cents)
]
scheduledAtDatestring (date-time)
required
scheduledByUserIdstring
targetDatestring (date-time)
required
terminationobject
- reasonstring
- scheduledAtDatestring (date-time)required
- scheduledByUserIdstring
- targetDatestring (date-time)required
totalPriceobject
required
- currency"EUR"required
- valueintegerrequired
The value of the price in the smallest currency unit (e.g. cents)
{
"activationDate": "2024-12-03T00:30:28.186Z",
"aggregateReference": {
"aggregate": "project",
"domain": "project",
"id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56"
},
"articles": [
{
"amount": 1,
"articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"description": "Musterbeschreibung",
"id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"name": "Musterartikel",
"unitPrice": {
"currency": "EUR",
"value": 100
}
}
],
"contractPeriod": 1,
"description": "Space-Server: \"Mein Space-Server\"",
"freeTrialDays": 10,
"groupByProjectId": "f0f86186-0a5a-45b2-aa33-502777496347",
"invoiceStop": "2024-12-03T00:30:28.186Z",
"invoicingPeriod": 1,
"isActivated": true,
"isBaseItem": true,
"isInFreeTrial": true,
"isInclusive": true,
"itemId": "f0f86186-0a5a-45b2-aa33-502777496347",
"nextPossibleDowngradeDate": "2024-12-03T00:30:28.186Z",
"nextPossibleTerminationDate": "2024-12-03T00:30:28.186Z",
"nextPossibleUpgradeDate": "2024-12-03T00:30:28.186Z",
"orderDate": "2024-12-03T00:30:28.186Z",
"orderId": "f0f86186-0a5a-45b2-aa33-502777496347",
"replacedByItem": "f0f86186-0a5a-45b2-aa33-502777496347",
"tariffChange": {
"newArticles": [
{
"amount": 1,
"articleTemplateId": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"description": "Musterbeschreibung",
"id": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"name": "Musterartikel",
"unitPrice": {
"currency": "EUR",
"value": 100
}
}
],
"scheduledAtDate": "2024-12-03T00:30:28.186Z",
"scheduledByUserId": "string",
"targetDate": "2024-12-03T00:30:28.186Z"
},
"termination": {
"reason": "Not needed anymore",
"scheduledAtDate": "2024-12-03T00:30:28.186Z",
"scheduledByUserId": "string",
"targetDate": "2024-12-03T00:30:28.186Z"
},
"totalPrice": {
"currency": "EUR",
"value": 100
}
}
{
"properties": {
"activationDate": {
"format": "date-time",
"type": "string"
},
"aggregateReference": {
"properties": {
"aggregate": {
"example": "project",
"type": "string"
},
"domain": {
"example": "project",
"type": "string"
},
"id": {
"example": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"type": "string"
}
},
"required": [
"id",
"domain",
"aggregate"
],
"type": "object"
},
"articles": {
"items": {
"properties": {
"amount": {
"example": 1,
"minimum": 1,
"type": "integer"
},
"articleTemplateId": {
"example": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"type": "string"
},
"description": {
"example": "Musterbeschreibung",
"type": "string"
},
"id": {
"example": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"type": "string"
},
"name": {
"example": "Musterartikel",
"type": "string"
},
"unitPrice": {
"properties": {
"currency": {
"enum": [
"EUR"
],
"type": "string"
},
"value": {
"description": "The value of the price in the smallest currency unit (e.g. cents)",
"example": 100,
"type": "integer"
}
},
"required": [
"value",
"currency"
],
"type": "object"
}
},
"required": [
"id",
"name",
"articleTemplateId",
"amount",
"unitPrice"
],
"type": "object"
},
"type": "array"
},
"contractPeriod": {
"example": 1,
"minimum": 0,
"type": "number"
},
"description": {
"example": "Space-Server: \"Mein Space-Server\"",
"type": "string"
},
"freeTrialDays": {
"example": 10,
"type": "number"
},
"groupByProjectId": {
"format": "uuid",
"type": "string"
},
"invoiceStop": {
"description": "If this attribute is set, the contract item will currently only be invoiced until this date.",
"format": "date-time",
"type": "string"
},
"invoicingPeriod": {
"example": 1,
"type": "number"
},
"isActivated": {
"type": "boolean"
},
"isBaseItem": {
"type": "boolean"
},
"isInFreeTrial": {
"type": "boolean"
},
"isInclusive": {
"type": "boolean"
},
"itemId": {
"format": "uuid",
"type": "string"
},
"nextPossibleDowngradeDate": {
"description": "If this attribute is not set, termination is not allowed.",
"format": "date-time",
"type": "string"
},
"nextPossibleTerminationDate": {
"description": "If this attribute is not set, a tariff change is not allowed.",
"format": "date-time",
"type": "string"
},
"nextPossibleUpgradeDate": {
"description": "If this attribute is not set, a tariff change is not allowed.",
"format": "date-time",
"type": "string"
},
"orderDate": {
"format": "date-time",
"type": "string"
},
"orderId": {
"format": "uuid",
"type": "string"
},
"replacedByItem": {
"format": "uuid",
"type": "string"
},
"tariffChange": {
"properties": {
"newArticles": {
"items": {
"properties": {
"amount": {
"example": 1,
"minimum": 1,
"type": "integer"
},
"articleTemplateId": {
"example": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"type": "string"
},
"description": {
"example": "Musterbeschreibung",
"type": "string"
},
"id": {
"example": "a1b8f0e9-904f-4716-a1c0-81ccf5342a56",
"type": "string"
},
"name": {
"example": "Musterartikel",
"type": "string"
},
"unitPrice": {
"properties": {
"currency": {
"enum": [
"EUR"
],
"type": "string"
},
"value": {
"description": "The value of the price in the smallest currency unit (e.g. cents)",
"example": 100,
"type": "integer"
}
},
"required": [
"value",
"currency"
],
"type": "object"
}
},
"required": [
"id",
"name",
"articleTemplateId",
"amount",
"unitPrice"
],
"type": "object"
},
"type": "array"
},
"scheduledAtDate": {
"format": "date-time",
"type": "string"
},
"scheduledByUserId": {
"type": "string"
},
"targetDate": {
"format": "date-time",
"type": "string"
}
},
"required": [
"scheduledAtDate",
"targetDate",
"newArticles"
],
"type": "object"
},
"termination": {
"properties": {
"reason": {
"example": "Not needed anymore",
"type": "string"
},
"scheduledAtDate": {
"format": "date-time",
"type": "string"
},
"scheduledByUserId": {
"type": "string"
},
"targetDate": {
"format": "date-time",
"type": "string"
}
},
"required": [
"scheduledAtDate",
"targetDate"
],
"type": "object"
},
"totalPrice": {
"properties": {
"currency": {
"enum": [
"EUR"
],
"type": "string"
},
"value": {
"description": "The value of the price in the smallest currency unit (e.g. cents)",
"example": 100,
"type": "integer"
}
},
"required": [
"value",
"currency"
],
"type": "object"
}
},
"required": [
"itemId",
"isActivated",
"contractPeriod",
"articles",
"totalPrice",
"description",
"isBaseItem"
],
"type": "object"
}
Usage examples
- cURL
- JavaScript SDK
- PHP SDK
$ curl \
--fail \
--location \
-H "Authorization: Bearer $MITTWALD_API_TOKEN" \
https://api.mittwald.de/v2/contracts/f0f86186-0a5a-45b2-aa33-502777496347/items/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.contract.getDetailOfContractItem({
"contractId": "f0f86186-0a5a-45b2-aa33-502777496347",
"contractItemId": "f0f86186-0a5a-45b2-aa33-502777496347"
});
assertStatus(response, 200);
use \Mittwald\ApiClient\Generated\V2\Clients\Contract\GetDetailOfContractItem\GetDetailOfContractItemRequest;
$client = MittwaldAPIClient::newWithToken(getenv('MITTWALD_API_TOKEN'));
$request = (new GetDetailOfContractItemRequest(
contractId: "f0f86186-0a5a-45b2-aa33-502777496347",
contractItemId: "f0f86186-0a5a-45b2-aa33-502777496347"
));
$response = $client->contract()->getDetailOfContractItem($request);
var_dump($response->getBody();