List Extensions of own contributor
GET/contributors/ {contributorId}/ extensions/
Request
- contributorIdstringrequired
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.
A list of extensions of the contributor.
- Schema documentation
- Example
- JSON Schema
- Array[
- *object
- assetsarray of objectrequired
- Array[
The following assets are the media that are associated with the extension and will be shown in extension details page.
- *object
The following assets are the media that are associated with the extension and will be shown in extension details page.
- assetTypestring (one of: image, video)required
- fileNamestringrequired
- idstring (uuid)required
The asset ID and reference ID to its file. Retrieve the file with this id on `/v2/files/{id}
- indexinteger (≥ 0)required
]
- backendComponentsobject
- extensionAddedToContextobject
- urlstring (≥ 1 characters)required
- extensionInstanceRemovedFromContextobject
- urlstring (≥ 1 characters)required
- extensionInstanceSecretRotatedobject
- urlstring (≥ 1 characters)required
- extensionInstanceUpdatedobject
- urlstring (≥ 1 characters)required
- blockedboolean
- contextstring (one of: project, customer)
- contributorIdstringrequired
- deprecationobject
The Extension is deprecated by the contributor and will expire at the given date.
- deprecatedAtstring (date-time)required
- notestring
- successorIdstring (uuid)
The ID of the successor extension.
- descriptionstring
- detailedDescriptionsobject
A detailed description of the capabilities of the extension.
- deobjectrequired
Language specific descriptions in various formats.
- markdownstring (≥ 1 characters)required
- plainstring (≥ 1 characters)
- enobject
Language specific descriptions in various formats.
- markdownstring (≥ 1 characters)required
- plainstring (≥ 1 characters)
- disabledboolean
- externalFrontendsarray of object
- Array[
- *object
- namestringrequired
- urlstringrequired
]
- Array[
- *object
- namestringrequired
- urlstringrequired
- *
This is the FileId of the Logo. Retrieve the file with this id on /v2/files/{logoRefId}
.
- contextstring (one of: project, customer)
- scopesarray of string
- Array[
- *string
]
- extensionAddedToContextobjectrequired
- urlstring (≥ 1 characters)required
- extensionInstanceRemovedFromContextobjectrequired
- urlstring (≥ 1 characters)required
- extensionInstanceSecretRotatedobjectrequired
- urlstring (≥ 1 characters)required
- extensionInstanceUpdatedobjectrequired
- urlstring (≥ 1 characters)required
- Array[
- *string
deprecated
- amountOfInstancesinteger (≥ 0)required
A few words to promote your Extension.
- destring (≤ 40 characters)required
- enstring (≤ 40 characters)
- emailstring
- phonestring
- Array[
- *string
- extensionAddedToContextobjectrequired
- urlstring (≥ 1 characters)required
- extensionInstanceRemovedFromContextobjectrequired
- urlstring (≥ 1 characters)required
- extensionInstanceSecretRotatedobjectrequired
- urlstring (≥ 1 characters)required
- extensionInstanceUpdatedobjectrequired
- urlstring (≥ 1 characters)required
[
{
"assets": [
{
"assetType": "image",
"fileName": "myFile.png",
"id": "f0f86186-0a5a-45b2-aa33-502777496347",
"index": 123
}
],
"backendComponents": {
"extensionAddedToContext": {
"url": "string"
},
"extensionInstanceRemovedFromContext": {
"url": "string"
},
"extensionInstanceSecretRotated": {
"url": "string"
},
"extensionInstanceUpdated": {
"url": "string"
}
},
"blocked": true,
"context": "project",
"contributorId": "string",
"deprecation": {
"deprecatedAt": "2025-02-21T12:28:28.908Z",
"note": "This extension is no longer actively maintained. Please Use the successor extension instead.",
"successorId": "f0f86186-0a5a-45b2-aa33-502777496347"
},
"description": "string",
"detailedDescriptions": {
"de": {
"markdown": "string",
"plain": "string"
},
"en": {
"markdown": "string",
"plain": "string"
}
},
"disabled": true,
"externalFrontends": [
{
"name": "string",
"url": "string"
}
],
"frontendComponents": [
{
"name": "string",
"url": "string"
}
],
"frontendFragments": {
"string": null
},
"functional": true,
"id": "f0f86186-0a5a-45b2-aa33-502777496347",
"logoRefId": "f0f86186-0a5a-45b2-aa33-502777496347",
"name": "string",
"published": true,
"requestedChanges": {
"context": "project",
"scopes": [
"string"
],
"webhookUrls": {
"extensionAddedToContext": {
"url": "string"
},
"extensionInstanceRemovedFromContext": {
"url": "string"
},
"extensionInstanceSecretRotated": {
"url": "string"
},
"extensionInstanceUpdated": {
"url": "string"
}
}
},
"scopes": [
"string"
],
"state": "enabled",
"statistics": {
"amountOfInstances": 42
},
"subTitle": {
"de": "Ping deine App an",
"en": "Ping your app"
},
"support": {
"email": "a.lovelace@example.com",
"phone": "string"
},
"tags": [
"string"
],
"verificationRequested": true,
"verified": true,
"webhookUrls": {
"extensionAddedToContext": {
"url": "string"
},
"extensionInstanceRemovedFromContext": {
"url": "string"
},
"extensionInstanceSecretRotated": {
"url": "string"
},
"extensionInstanceUpdated": {
"url": "string"
}
}
}
]
{
"items": {
"properties": {
"assets": {
"items": {
"description": "The following assets are the media that are associated with the extension and will be shown in extension details page.",
"properties": {
"assetType": {
"enum": [
"image",
"video"
],
"example": "image",
"type": "string"
},
"fileName": {
"example": "myFile.png",
"type": "string"
},
"id": {
"description": "The asset ID and reference ID to its file. Retrieve the file with this id on `/v2/files/{id}",
"format": "uuid",
"type": "string"
},
"index": {
"example": 0,
"maximum": 3,
"minimum": 0,
"type": "integer"
}
},
"required": [
"id",
"fileName",
"index",
"assetType"
],
"type": "object"
},
"type": "array"
},
"backendComponents": {
"deprecated": true,
"properties": {
"extensionAddedToContext": {
"deprecated": true,
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceRemovedFromContext": {
"deprecated": true,
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceSecretRotated": {
"deprecated": true,
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceUpdated": {
"deprecated": true,
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
}
},
"type": "object"
},
"blocked": {
"deprecated": true,
"type": "boolean"
},
"context": {
"enum": [
"project",
"customer"
],
"type": "string"
},
"contributorId": {
"type": "string"
},
"deprecation": {
"description": "The Extension is deprecated by the contributor and will expire at the given date.",
"properties": {
"deprecatedAt": {
"format": "date-time",
"type": "string"
},
"note": {
"example": "This extension is no longer actively maintained. Please Use the successor extension instead.",
"type": "string"
},
"successorId": {
"description": "The ID of the successor extension.",
"format": "uuid",
"type": "string"
}
},
"required": [
"deprecatedAt"
],
"type": "object"
},
"description": {
"type": "string"
},
"detailedDescriptions": {
"description": "A detailed description of the capabilities of the extension.",
"properties": {
"de": {
"description": "Language specific descriptions in various formats.",
"properties": {
"markdown": {
"minLength": 1,
"type": "string"
},
"plain": {
"minLength": 1,
"type": "string"
}
},
"required": [
"markdown"
],
"type": "object"
},
"en": {
"description": "Language specific descriptions in various formats.",
"properties": {
"markdown": {
"minLength": 1,
"type": "string"
},
"plain": {
"minLength": 1,
"type": "string"
}
},
"required": [
"markdown"
],
"type": "object"
}
},
"required": [
"de"
],
"type": "object"
},
"disabled": {
"type": "boolean"
},
"externalFrontends": {
"items": {
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"name",
"url"
],
"type": "object"
},
"type": "array"
},
"frontendComponents": {
"deprecated": true,
"items": {
"properties": {
"name": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"name",
"url"
],
"type": "object"
},
"type": "array"
},
"frontendFragments": {
"additionalProperties": {
"allOf": [
{
"properties": {
"additionalProperties": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
{
"oneOf": [
{
"properties": {
"url": {
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
}
]
}
]
},
"type": "object"
},
"functional": {
"type": "boolean"
},
"id": {
"format": "uuid",
"type": "string"
},
"logoRefId": {
"description": "This is the FileId of the Logo. Retrieve the file with this id on `/v2/files/{logoRefId}`.",
"format": "uuid",
"type": "string"
},
"name": {
"type": "string"
},
"published": {
"type": "boolean"
},
"requestedChanges": {
"additionalProperties": false,
"properties": {
"context": {
"enum": [
"project",
"customer"
],
"type": "string"
},
"scopes": {
"items": {
"type": "string"
},
"type": "array"
},
"webhookUrls": {
"properties": {
"extensionAddedToContext": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceRemovedFromContext": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceSecretRotated": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceUpdated": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
}
},
"required": [
"extensionAddedToContext",
"extensionInstanceUpdated",
"extensionInstanceSecretRotated",
"extensionInstanceRemovedFromContext"
],
"type": "object"
}
},
"type": "object"
},
"scopes": {
"items": {
"type": "string"
},
"type": "array"
},
"state": {
"description": "deprecated",
"enum": [
"enabled",
"blocked",
"disabled"
],
"type": "string"
},
"statistics": {
"properties": {
"amountOfInstances": {
"example": 42,
"minimum": 0,
"type": "integer"
}
},
"required": [
"amountOfInstances"
],
"type": "object"
},
"subTitle": {
"description": "A few words to promote your Extension.",
"properties": {
"de": {
"example": "Ping deine App an",
"maxLength": 40,
"type": "string"
},
"en": {
"example": "Ping your app",
"maxLength": 40,
"type": "string"
}
},
"required": [
"de"
],
"type": "object"
},
"support": {
"properties": {
"email": {
"example": "a.lovelace@example.com",
"type": "string"
},
"phone": {
"type": "string"
}
},
"type": "object"
},
"tags": {
"items": {
"type": "string"
},
"minItems": 0,
"type": "array"
},
"verificationRequested": {
"type": "boolean"
},
"verified": {
"type": "boolean"
},
"webhookUrls": {
"properties": {
"extensionAddedToContext": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceRemovedFromContext": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceSecretRotated": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"extensionInstanceUpdated": {
"properties": {
"url": {
"minLength": 1,
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
}
},
"required": [
"extensionAddedToContext",
"extensionInstanceUpdated",
"extensionInstanceSecretRotated",
"extensionInstanceRemovedFromContext"
],
"type": "object"
}
},
"required": [
"id",
"contributorId",
"name",
"statistics",
"assets",
"published",
"verified",
"verificationRequested",
"functional"
],
"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/contributors/string/extensions?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.marketplace.extensionListOwnExtensions({
"contributorId": "string",
"queryParameters": {
"limit": 50,
"page": 1
}
});
assertStatus(response, 200);
use \Mittwald\ApiClient\Generated\V2\Clients\Marketplace\ExtensionListOwnExtensions\ExtensionListOwnExtensionsRequest;
$client = MittwaldAPIClient::newWithToken(getenv('MITTWALD_API_TOKEN'));
$request = (new ExtensionListOwnExtensionsRequest(
contributorId: "string"
))
->withLimit(50)
->withPage(1);
$response = $client->marketplace()->extensionListOwnExtensions($request);
var_dump($response->getBody();