Endpoint
Gibt die vollständige Produktdefinition für das angegebene Symbol (SKU) zurück: Namen in verschiedenen Sprachen, Kataloghierarchie, technische Parameter, Konfigurationsattribute, Preise, Ökosteuer, Zubehör und Kommentare. Der Endpoint ist öffentlich – es ist kein Authorization-Header und kein Token erforderlich.
Request
-
Accept stringPossible values: application/json
Erwarteter Antworttyp.
Default value: application/json
Response
{
"Sku": "MIT1RP",
"IndexSAP": "000500000581900000",
"Name": [
{ "LangSymbol": "EN", "Value": "Mito executive desk" },
{ "LangSymbol": "PL", "Value": "Biurko gabinetowe Mito" }
],
"Hierarchy": {
"Child": {
"Hierarchy_Id": "07",
"Hierarchy_Symbol": "h1",
"Description": [
{ "LangSymbol": "EN", "Value": "MDD" },
{ "LangSymbol": "PL", "Value": "MDD" }
],
"Child": {
"Hierarchy_Id": "03",
"Hierarchy_Symbol": "h2",
"Description": [
{ "LangSymbol": "EN", "Value": "EXECUTIVE FURNITURE" },
{ "LangSymbol": "PL", "Value": "GABINETY" }
],
"Child": {
"Hierarchy_Id": "78",
"Hierarchy_Symbol": "h3",
"Description": [
{ "LangSymbol": "EN", "Value": "MITO" },
{ "LangSymbol": "PL", "Value": "MITO" }
],
"Child": {
"Hierarchy_Id": "99",
"Hierarchy_Symbol": "h4",
"Description": [
{ "LangSymbol": "EN", "Value": "MANAGERIAL DESK" },
{ "LangSymbol": "PL", "Value": "BIURKO MENEDŻERSKIE" }
],
"Child": {
"Hierarchy_Id": "86",
"Hierarchy_Symbol": "h5",
"Description": [
{ "LangSymbol": "EN", "Value": "MANAGERIAL DESK WITH STORAGE" },
{ "LangSymbol": "PL", "Value": "BIURKO Z SZAFKĄ MANAGERSKĄ" }
],
"Child": null
}
}
}
}
}
},
"Parameters": {
"Width": 2080,
"Lenght": 2190,
"Height": 760,
"Weight": 359.75,
"Volume_of_packages": 1.295436,
"Number_of_packages": 13,
"AdditionalDimensions": [
{
"Width": 2080,
"Lenght": 2190,
"Height": 1300,
"Dimension_Type": "ZW",
"Dimension_Desc": "Zakres wysokości"
}
]
},
"Attributes": [
{
"AttributeId": "1",
"Symbol": "B1",
"Name": [
{ "LangSymbol": "PL", "Value": "Kolor blatu" },
{ "LangSymbol": "EN", "Value": "Colour of the tabletop" }
],
"Values_groups": [
{
"GroupID": 0,
"Description": "Standard colours",
"Name": [
{ "LangSymbol": "PL", "Value": "" }
],
"Available_values": [
{
"Value": "0172",
"Name": [
{ "LangSymbol": "PL", "Value": "Dąb bursztynowy" },
{ "LangSymbol": "EN", "Value": "Amber oak" }
],
"AdditionalInfo": [
{ "LangSymbol": "PL", "Value": "" },
{ "LangSymbol": "EN", "Value": "" }
],
"Gradation": [],
"Surcharge": [],
"SpecialSurcharge": 0,
"MDDOnly": 0,
"OriginalGroupDescription": "MFC / HPL",
"OriginalGroupId": 500004,
"DaysToComplete": 0
}
]
}
],
"CouplingWithAttribute": "",
"AvailableForStandardConfiguration": 1
}
],
"Price": [
{
"Price": 16500,
"Currency": "PLN",
"Currency_symbol": "zł",
"PriceList_symbol": "Z1",
"IsCommon": 1
}
],
"Ecotax": 0.0,
"Comments": null,
"LinxComments": [
{
"LangSymbol": "EN",
"Value": "right-side managerial storage; leg + cabinet extension - white or black HPL high gloss"
},
{
"LangSymbol": "PL",
"Value": "szafka managerska po prawej stronie; noga + dostawka do szafki - biały lub czarny HPL połysk"
}
],
"AccessoriesGroups": [
{
"GroupID": 100016,
"Description": "Podkładki do biurek",
"Accessories": [
{
"Symbol": "S100",
"Quantity": 0,
"Definitions": [
{
"DefinitionNo": 1,
"DefinitionParams": [],
"DefinitionAttributeValues": []
}
]
}
],
"Name": [
{ "LangSymbol": "EN", "Value": "Pads for desks" },
{ "LangSymbol": "PL", "Value": "Podkładki do biurek" }
]
}
],
"PriceGroup": "10",
"IgnoreSurcharges": 0,
"Gradation": 0,
"ExecutionLog": [
{ "desc": "sku", "execution_time": 0 },
{ "desc": "parameters", "execution_time": 0 },
{ "desc": "attributes", "execution_time": 0 },
{ "desc": "price", "execution_time": 0 },
{ "desc": "accessories", "execution_time": 0 },
{ "desc": "comments", "execution_time": 0 },
{ "desc": "additional_dimensions", "execution_time": 0 },
{ "desc": "total_execution_time", "execution_time": 0 }
],
"ExecutionFinishTime": "2025-12-01 11:10:22"
}
-
Sku string Required
Produktsymbol (SKU).
-
IndexSAP string Required
SAP-Index im Textformat (mit führenden Nullen).
-
Name array<object>
Produktnamen in verschiedenen Sprachen.
-
Name[].LangSymbol string RequiredPossible values: PL EN DE ES FR IT
Sprachcode (zweistellig, z. B. PL, EN, DE).
-
Name[].Value string Required
Produktname in der jeweiligen Sprache.
-
Hierarchy object
Hierarchiebaum des Katalogs, in dem sich das Produkt befindet (rekursiv Child -> Child -> ...).
-
Hierarchy.Child object
Untergeordneter Knoten der Hierarchie (rekursiv dasselbe Schema: Child, Hierarchy_Id, Hierarchy_Symbol, Description).
-
Hierarchy.Child.Hierarchy_Id string
ID des Knotens in der Hierarchie (als Text zurückgegeben, z. B. „07”).
-
Hierarchy.Child.Hierarchy_Symbol string
Symbol des Knotens in der Hierarchie (z. B. h1, h2 usw.).
-
Hierarchy.Child.Description array<object>
Beschreibung des Knotens in verschiedenen Sprachen.
-
Parameters object
Grundlegende technische Parameter des Produkts.
-
Parameters.Width number
Breite in mm (oder cm – entsprechend dem Quellsystem).
-
Parameters.Lenght number
Länge in mm (das Feld in der API heißt „Lenght”).
-
Parameters.Height number
Höhe in mm.
-
Parameters.Weight number
Gewicht in kg.
-
Parameters.Volume_of_packages number
Volumen der Pakete (z. B. m³).
-
Parameters.Number_of_packages integer
Anzahl der Pakete.
-
Parameters.AdditionalDimensions array<object>
Zusätzliche Abmessungen (z. B. Höhenbereich).
-
Parameters.AdditionalDimensions[].Width number
Zusätzliche Breite.
-
Parameters.AdditionalDimensions[].Lenght number
Zusätzliche Länge.
-
Parameters.AdditionalDimensions[].Height number
Zusätzliche Höhe.
-
Parameters.AdditionalDimensions[].Dimension_Type string
Art der zusätzlichen Abmessung (z. B. „ZW”).
-
Parameters.AdditionalDimensions[].Dimension_Desc string
Beschreibung der zusätzlichen Abmessung.
-
Attributes array<object>
Liste der Konfigurationsattribute des Produkts (z. B. Farbe der Tischplatte, Art der Beine).
-
Attributes[].AttributeId string
Attribut-ID (als Text zurückgegeben, z. B. „1”).
-
Attributes[].Symbol string
Attribut-Symbol (z. B. B1, C1 usw.).
-
Attributes[].Name array<object>
Bezeichnungen des Attributs in verschiedenen Sprachen.
-
Attributes[].Values_groups array<object>
Wertgruppen (verfügbare Optionen für das Attribut).
-
Attributes[].Values_groups[].GroupID integer
Identifikator der Wertgruppe.
-
Attributes[].Values_groups[].Description string
Beschreibung der Wertgruppe (z. B. „Standardfarben”).
-
Attributes[].Values_groups[].Name array<object>
Bezeichnungen der Wertgruppen in verschiedenen Sprachen.
-
Attributes[].Values_groups[].Available_values array<object>
Liste der konkret auswählbaren Werte (z. B. Farben, Stoffe).
-
Attributes[].Values_groups[].Available_values[].Value string
4-stelliger Wertcode im Textformat (z. B. „0172“).
-
Attributes[].Values_groups[].Available_values[].Name array<object>
Bezeichnungen des jeweiligen Werts in verschiedenen Sprachen.
-
Attributes[].Values_groups[].Available_values[].AdditionalInfo array<object>
Zusätzliche Informationen (z. B. technische Beschreibung) in verschiedenen Sprachen.
-
Attributes[].Values_groups[].Available_values[].Gradation array
Angabe zur Abstufung/Reihenfolge; in der Praxis oft eine leere Tabelle [].
-
Attributes[].Values_groups[].Available_values[].Surcharge array<object>
Liste der Zuschläge für den jeweiligen Wert (Struktur wie „Price: Price, Currency, Currency_symbol, PriceList_symbol, IsCommon”).
-
Attributes[].Values_groups[].Available_values[].SpecialSurcharge number
Spezieller Aufpreis (numerischer Wert).
Default value: 0 -
Attributes[].Values_groups[].Available_values[].MDDOnly integerPossible values: 0 1
Flag: Wert nur für MDD-Kunden verfügbar (0 – nein, 1 – ja).
Default value: 0 -
Attributes[].Values_groups[].Available_values[].OriginalGroupDescription string|null
Ursprüngliche Beschreibung der Gruppe im Quellsystem.
-
Attributes[].Values_groups[].Available_values[].OriginalGroupId integer|null
Ursprüngliche Kennung der Gruppe im Quellsystem.
-
Attributes[].Values_groups[].Available_values[].DaysToComplete integer|null
Zusätzliche Tage, die für die Umsetzung dieser Konfiguration benötigt werden.
-
Attributes[].CouplingWithAttribute string|null
Verbindung mit einem anderen Attribut (ID als Zeichenfolge oder leer, wenn nicht vorhanden).
-
Attributes[].AvailableForStandardConfiguration integerPossible values: 0 1
Ist das Attribut in Standardkonfigurationen verfügbar? (0 – nein, 1 – ja).
Default value: 0 -
Price array<object>
Liste der Produktpreise in verschiedenen Preislisten und Währungen.
-
Price[].Price number
Numerischer Preis.
-
Price[].Currency string
Währungscode im Format ISO 4217 (z. B. EUR, PLN).
-
Price[].Currency_symbol string
Währungssymbol (z. B. €, zł).
-
Price[].PriceList_symbol string
Symbol der Preisliste.
-
Price[].IsCommon integerPossible values: 0 1
Ist der Preis einheitlich? (0 – nein, 1 – ja).
Default value: 0 -
Ecotax number
Wert der Ökosteuer (z. B. Prozentsatz oder Betrag, gemäß dem System).
-
Comments string|null
Textkommentare (falls verfügbar).
-
LinxComments array<object>
Linx-Kommentare in verschiedenen Sprachen.
-
LinxComments[].LangSymbol string
Sprachcode des Kommentars.
-
LinxComments[].Value string
Inhalt des Kommentars in der jeweiligen Sprache.
-
AccessoriesGroups array<object>
Mit dem Produkt verbundene Zubehörgruppen.
-
AccessoriesGroups[].GroupID integer
Identifikator der Zubehörgruppe.
-
AccessoriesGroups[].Description string
Beschreibung der Zubehörgruppe.
-
AccessoriesGroups[].Accessories array<object>
Liste der Zubehörteile in der Gruppe.
-
AccessoriesGroups[].Accessories[].Symbol string
Symbol des Zubehörteils.
-
AccessoriesGroups[].Accessories[].Quantity integer
Standardmenge des Zubehörteils.
Default value: 0 -
AccessoriesGroups[].Accessories[].Definitions array<object>
Definitionen des Zubehörs (Parameter, Attributwerte).
-
AccessoriesGroups[].Accessories[].Definitions[].DefinitionNo integer
Nummer der Zubehördefinition.
-
PriceGroup string
Symbol der Produktpreisgruppe (z. B. „10”).
-
IgnoreSurcharges integerPossible values: 0 1
Flag zum Überspringen von Aufschlägen (0 – nein, 1 – ja).
Default value: 0 -
Gradation integer
Gradationswert auf Produktebene.
Default value: 0 -
ExecutionLog array<object>
Protokoll der Ausführungszeit der einzelnen Schritte auf der API-Seite.
-
ExecutionLog[].desc string
Beschreibung des Schritts im Ausführungsprotokoll.
-
ExecutionLog[].execution_time number
Ausführungszeit des Schritts (z. B. in ms).
Default value: 0 -
ExecutionFinishTime string
Zeitstempel für das Ende der Antwortgenerierung (Datums-/Zeitformat).
{
"status": 500,
"error": "server_error",
"message": "Es ist ein Serverfehler aufgetreten."
}
Implementation
Beispiele für den Aufruf des Endpunkts (anonymer GET, ohne Authorization-Header) für https://external-api.mddlinx.com/externalapi/configurator/{symbol}.
<?php
declare(strict_types=1);
$symbol = 'MIT1RP'; // Produktsymbol
$endpoint = 'https://external-api.mddlinx.com/externalapi/configurator/' . urlencode($symbol);
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_HTTPGET => true,
CURLOPT_HTTPHEADER => [
'Accept: application/json',
],
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 60,
]);
$body = curl_exec($ch);
$errno = curl_errno($ch);
$error = curl_error($ch);
$http = (int) curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($errno) {
throw new RuntimeException($error);
}
if ($http < 200 || $http >= 300) {
throw new RuntimeException('HTTP ' . $http . ': ' . $body);
}
$data = json_decode($body, true, 512, JSON_THROW_ON_ERROR);
print_r($data);
<?php
use Illuminate\Support\Facades\Http;
$symbol = 'MIT1RP';
$endpoint = 'https://external-api.mddlinx.com/externalapi/configurator/' . urlencode($symbol);
$response = Http::acceptJson()
->timeout(60)
->get($endpoint);
if ($response->failed()) {
throw new RuntimeException('HTTP ' . $response->status() . ': ' . $response->body());
}
$config = $response->json();
print_r($config);
const symbol = 'MIT1RP';
const endpoint = `https://external-api.mddlinx.com/externalapi/configurator/${encodeURIComponent(symbol)}`;
(async () => {
const res = await fetch(endpoint, {
method: 'GET',
headers: {
'Accept': 'application/json'
}
});
if (!res.ok) {
throw new Error('HTTP ' + res.status + ': ' + (await res.text()));
}
const data = await res.json();
console.log(data);
})();
import requests
from urllib.parse import quote
symbol = 'MIT1RP'
endpoint = 'https://external-api.mddlinx.com/externalapi/configurator/' + quote(symbol)
r = requests.get(
endpoint,
headers={
'Accept': 'application/json',
},
timeout=60,
)
r.raise_for_status()
print(r.json())
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
class Program {
static async Task Main() {
var symbol = "MIT1RP";
var endpoint = "https://external-api.mddlinx.com/externalapi/configurator/" + Uri.EscapeDataString(symbol);
using var http = new HttpClient();
http.DefaultRequestHeaders.Accept.ParseAdd("application/json");
var res = await http.GetAsync(endpoint);
var body = await res.Content.ReadAsStringAsync();
if (!res.IsSuccessStatusCode)
throw new Exception("HTTP " + (int)res.StatusCode + ": " + body);
Console.WriteLine(body);
}
}