List Articles
GET/articles/
v2
GET
article-list-articles
Request
Responses
Response headers
- X-Pagination-Limitnumber
The limit used to select the resources for the response
- X-Pagination-Skipnumber
The number of skipped items
- X-Pagination-Pagenumber
The calculate page of the list response. Refer to parameters to learn more.
- X-Pagination-TotalCountnumber
The total amount of items available in the remote ressource. Use this value in combination with the limit to calculate the available pages.
application/json
Object containing the list of Articles
- Schema documentation
- Example
- JSON Schema
- Array[
- *object
- addonsarray of object
- Array[
- *object
- hiddenboolean
- keystring (≥ 1 characters)required
- typestring
- valuestringrequired
- valueMergeTypestring (one of: add, set)
]
- articleIdstring (≥ 3 characters)required
- attributesarray of object
- Array[
- *object
- customerEditableboolean
- keystring (≥ 1 characters)required
- mergeTypestring (one of: add, set)
- readonlyboolean
- requiredboolean
- unitstring
- valuestring
]
balanceAddonKeystring
contractDurationInMonthnumber (≥ 0)
required
descriptionstring
forcedInvoicingPeriodInMonthnumber (≥ 0)
hasIndependentContractPeriodboolean
hideOnInvoiceboolean
machineTypeobject
- cpustringrequired
- memorystringrequired
- namestringrequired
modifierArticlesarray of object
- Array[
- *object
- articleIdstring (≥ 1 characters)required
- infoobject
- articleNamestring
- articleTemplateNamestring
- fromArticleTemplateboolean
- maxArticleCountnumber (≥ 1)required
]
namestring (≥ 3 characters)
required
orderablestring (one of: forbidden, internal, beta_testing, full, deprecated)
required
possibleArticleChangesarray of object
- Array[
- *object
- articleIdstring (≥ 1 characters)required
- infoobject
- articleNamestring
- articleTemplateNamestring
- fromArticleTemplateboolean
]
pricenumber
tagsarray of object
- Array[
- *object
- descriptionstring (≥ 1 characters)
- hexColorstring (≥ 1 characters)
- idstring (≥ 1 characters)required
- namestring (≥ 1 characters)
]
templateobject
required
- additionalArticlesarray of object
- Array[
- *object
- articleIdstring (≥ 1 characters)required
- infoobject
- articleNamestring
- articleTemplateNamestring
- fromArticleTemplateboolean
- maxArticleCountnumber
]
addonsarray of object
- Array[
- *object
- hiddenboolean
- keystring (≥ 1 characters)required
- typestring
- valuestringrequired
- valueMergeTypestring (one of: add, set)
]
attributesarray of object
- Array[
- *object
- customerEditableboolean
- keystring (≥ 1 characters)required
- mergeTypestring (one of: add, set)
- readonlyboolean
- requiredboolean
- unitstring
- valuestring
]
descriptionstring
idstring (≥ 1 characters)
required
isManagedByDomainboolean
required
isRecurringboolean
required
modifierArticlesarray of object
- Array[
- *object
- articleIdstring (≥ 1 characters)required
- infoobject
- articleNamestring
- articleTemplateNamestring
- fromArticleTemplateboolean
- maxArticleCountnumber (≥ 1)required
]
namestring (≥ 3 characters)
required
typestring (one of: miscellaneous, base, additional, modifier, setup_fee)
required
]
[
{
"addons": [
{
"hidden": true,
"key": "string",
"type": "string",
"value": "string",
"valueMergeType": "add"
}
],
"articleId": "PS23-BASIC-0001",
"attributes": [
{
"customerEditable": true,
"key": "cpu",
"mergeType": "add",
"readonly": true,
"required": true,
"unit": "GHz",
"value": "4"
}
],
"balanceAddonKey": "inclusive_domains",
"contractDurationInMonth": 123,
"description": "proSpace without dedicated resources",
"forcedInvoicingPeriodInMonth": 123,
"hasIndependentContractPeriod": true,
"hideOnInvoice": true,
"machineType": {
"cpu": 1,
"memory": 10,
"name": "psplus-shared"
},
"modifierArticles": [
{
"articleId": "string",
"info": {
"articleName": "proSpace lite",
"articleTemplateName": "proSpace",
"fromArticleTemplate": true
},
"maxArticleCount": 123
}
],
"name": "proSpace lite",
"orderable": "forbidden",
"possibleArticleChanges": [
{
"articleId": "string",
"info": {
"articleName": "proSpace lite",
"articleTemplateName": "proSpace",
"fromArticleTemplate": true
}
}
],
"price": 1000,
"tags": [
{
"description": "CPU optimized",
"hexColor": "#ff0000",
"id": "58e39bbe-fcd1-4fde-887c-f49ff85b9df5",
"name": "cpu-optimized"
}
],
"template": {
"additionalArticles": [
{
"articleId": "PS23-BASIC-0001",
"info": {
"articleName": "proSpace lite",
"articleTemplateName": "proSpace",
"fromArticleTemplate": true
},
"maxArticleCount": 10
}
],
"addons": [
{
"hidden": true,
"key": "string",
"type": "string",
"value": "string",
"valueMergeType": "add"
}
],
"attributes": [
{
"customerEditable": true,
"key": "cpu",
"mergeType": "add",
"readonly": true,
"required": true,
"unit": "GHz",
"value": "4"
}
],
"description": "Space-Storage",
"id": "054e27e4-d3ed-4ffc-a472-fbb74a6a2ec1",
"isManagedByDomain": true,
"isRecurring": true,
"modifierArticles": [
{
"articleId": "string",
"info": {
"articleName": "proSpace lite",
"articleTemplateName": "proSpace",
"fromArticleTemplate": true
},
"maxArticleCount": 123
}
],
"name": "Speicher für Space-Server aller Art",
"type": "miscellaneous"
}
}
]
{
"items": {
"properties": {
"addons": {
"items": {
"properties": {
"hidden": {
"type": "boolean"
},
"key": {
"minLength": 1,
"type": "string"
},
"type": {
"type": "string"
},
"value": {
"type": "string"
},
"valueMergeType": {
"enum": [
"add",
"set"
],
"type": "string"
}
},
"required": [
"key",
"value"
],
"type": "object"
},
"type": "array"
},
"articleId": {
"example": "PS23-BASIC-0001",
"minLength": 3,
"type": "string"
},
"attributes": {
"items": {
"properties": {
"customerEditable": {
"type": "boolean"
},
"key": {
"example": "cpu",
"minLength": 1,
"type": "string"
},
"mergeType": {
"enum": [
"add",
"set"
],
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"type": "boolean"
},
"unit": {
"example": "GHz",
"type": "string"
},
"value": {
"example": "4",
"type": "string"
}
},
"required": [
"key"
],
"type": "object"
},
"type": "array"
},
"balanceAddonKey": {
"example": "inclusive_domains",
"type": "string"
},
"contractDurationInMonth": {
"example": 0,
"maximum": 42,
"minimum": 0,
"type": "number"
},
"description": {
"example": "proSpace without dedicated resources",
"type": "string"
},
"forcedInvoicingPeriodInMonth": {
"example": 0,
"minimum": 0,
"type": "number"
},
"hasIndependentContractPeriod": {
"type": "boolean"
},
"hideOnInvoice": {
"type": "boolean"
},
"machineType": {
"properties": {
"cpu": {
"example": 1,
"type": "string"
},
"memory": {
"example": 10,
"type": "string"
},
"name": {
"example": "psplus-shared",
"type": "string"
}
},
"required": [
"name",
"cpu",
"memory"
],
"type": "object"
},
"modifierArticles": {
"items": {
"properties": {
"articleId": {
"minLength": 1,
"type": "string"
},
"info": {
"properties": {
"articleName": {
"example": "proSpace lite",
"type": "string"
},
"articleTemplateName": {
"example": "proSpace",
"type": "string"
},
"fromArticleTemplate": {
"type": "boolean"
}
},
"type": "object"
},
"maxArticleCount": {
"minimum": 1,
"type": "number"
}
},
"required": [
"articleId",
"maxArticleCount"
],
"type": "object"
},
"type": "array"
},
"name": {
"example": "proSpace lite",
"minLength": 3,
"type": "string"
},
"orderable": {
"enum": [
"forbidden",
"internal",
"beta_testing",
"full",
"deprecated"
],
"type": "string"
},
"possibleArticleChanges": {
"items": {
"properties": {
"articleId": {
"minLength": 1,
"type": "string"
},
"info": {
"properties": {
"articleName": {
"example": "proSpace lite",
"type": "string"
},
"articleTemplateName": {
"example": "proSpace",
"type": "string"
},
"fromArticleTemplate": {
"type": "boolean"
}
},
"type": "object"
}
},
"required": [
"articleId"
],
"type": "object"
},
"type": "array"
},
"price": {
"example": 1000,
"type": "number"
},
"tags": {
"items": {
"properties": {
"description": {
"example": "CPU optimized",
"minLength": 1,
"type": "string"
},
"hexColor": {
"example": "#ff0000",
"minLength": 1,
"type": "string"
},
"id": {
"example": "58e39bbe-fcd1-4fde-887c-f49ff85b9df5",
"minLength": 1,
"type": "string"
},
"name": {
"example": "cpu-optimized",
"minLength": 1,
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"type": "array"
},
"template": {
"properties": {
"additionalArticles": {
"items": {
"properties": {
"articleId": {
"example": "PS23-BASIC-0001",
"minLength": 1,
"type": "string"
},
"info": {
"properties": {
"articleName": {
"example": "proSpace lite",
"type": "string"
},
"articleTemplateName": {
"example": "proSpace",
"type": "string"
},
"fromArticleTemplate": {
"type": "boolean"
}
},
"type": "object"
},
"maxArticleCount": {
"example": 10,
"type": "number"
}
},
"required": [
"articleId"
],
"type": "object"
},
"type": "array"
},
"addons": {
"items": {
"properties": {
"hidden": {
"type": "boolean"
},
"key": {
"minLength": 1,
"type": "string"
},
"type": {
"type": "string"
},
"value": {
"type": "string"
},
"valueMergeType": {
"enum": [
"add",
"set"
],
"type": "string"
}
},
"required": [
"key",
"value"
],
"type": "object"
},
"type": "array"
},
"attributes": {
"items": {
"properties": {
"customerEditable": {
"type": "boolean"
},
"key": {
"example": "cpu",
"minLength": 1,
"type": "string"
},
"mergeType": {
"enum": [
"add",
"set"
],
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"type": "boolean"
},
"unit": {
"example": "GHz",
"type": "string"
},
"value": {
"example": "4",
"type": "string"
}
},
"required": [
"key"
],
"type": "object"
},
"type": "array"
},
"description": {
"example": "Space-Storage",
"type": "string"
},
"id": {
"example": "054e27e4-d3ed-4ffc-a472-fbb74a6a2ec1",
"minLength": 1,
"type": "string"
},
"isManagedByDomain": {
"type": "boolean"
},
"isRecurring": {
"type": "boolean"
},
"modifierArticles": {
"items": {
"properties": {
"articleId": {
"minLength": 1,
"type": "string"
},
"info": {
"properties": {
"articleName": {
"example": "proSpace lite",
"type": "string"
},
"articleTemplateName": {
"example": "proSpace",
"type": "string"
},
"fromArticleTemplate": {
"type": "boolean"
}
},
"type": "object"
},
"maxArticleCount": {
"minimum": 1,
"type": "number"
}
},
"required": [
"articleId",
"maxArticleCount"
],
"type": "object"
},
"type": "array"
},
"name": {
"example": "Speicher für Space-Server aller Art",
"minLength": 3,
"type": "string"
},
"type": {
"enum": [
"miscellaneous",
"base",
"additional",
"modifier",
"setup_fee"
],
"type": "string"
}
},
"required": [
"id",
"name",
"isRecurring",
"type",
"isManagedByDomain"
],
"type": "object"
}
},
"required": [
"articleId",
"name",
"contractDurationInMonth",
"orderable",
"template"
],
"type": "object"
},
"type": "array"
}
Usage examples
- cURL
- JavaScript SDK
- PHP SDK
$ curl \
--fail \
--location \
-H "Authorization: Bearer $MITTWALD_API_TOKEN" \
https://api.mittwald.de/v2/articles?customerId=string&tags=string&templateNames=string&articleIds=string&orderable=forbidden&name=string&limit=50&page=1
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.article.listArticles({
"queryParameters": {
"customerId": "string",
"tags": [
"string"
],
"templateNames": [
"string"
],
"articleIds": [
"string"
],
"orderable": [
"forbidden"
],
"name": "string",
"limit": 50,
"page": 1
}
});
assertStatus(response, 200);
use \Mittwald\ApiClient\Generated\V2\Clients\Article\ListArticles\ListArticlesRequest;
$client = MittwaldAPIClient::newWithToken(getenv('MITTWALD_API_TOKEN'));
$request = (new ListArticlesRequest())
->withCustomerId("string")
->withTags(["string"])
->withTemplateNames(["string"])
->withArticleIds(["string"])
->withOrderable(["forbidden"])
->withName("string")
->withLimit(50)
->withPage(1);
$response = $client->article()->listArticles($request);
var_dump($response->getBody();