1

Selecciona tu región para verificar los precios en tu moneda, la tasa de IVA y los costos de envío.

Endpoint

GET https://external-api.mddlinx.com/externalapi/configurator/{symbol}

Devuelve la definición completa del producto para el símbolo especificado (SKU): nombres en diferentes idiomas, jerarquía del catálogo, parámetros técnicos, atributos de configuración, precios, ecotasa, accesorios y comentarios. El endpoint es público: no requiere encabezado Authorization ni token.

Request

Headers
  • Accept string
    Possible values: application/json

    Tipo de respuesta esperada.

    Default value: application/json

Response

JSON
{
  "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

    Símbolo del producto (SKU).

  • IndexSAP string Required

    Índice SAP en formato de texto (con ceros a la izquierda).

  • Name array<object>

    Nombres del producto en diferentes idiomas.

  • Name[].LangSymbol string Required
    Possible values: PL EN DE ES FR IT

    Código del idioma (dos letras, p. ej., PL, EN, DE).

  • Name[].Value string Required

    Nombre del producto en el idioma especificado.

  • Hierarchy object

    Árbol jerárquico del catálogo en el que se encuentra el producto (recursivo Child -> Child -> ...).

  • Hierarchy.Child object

    Nodo subordinado de la jerarquía (recursivamente el mismo esquema: Child, Hierarchy_Id, Hierarchy_Symbol, Description).

  • Hierarchy.Child.Hierarchy_Id string

    ID del nodo en la jerarquía (devuelto como texto, p. ej., "07").

  • Hierarchy.Child.Hierarchy_Symbol string

    Símbolo del nodo en la jerarquía (por ejemplo, h1, h2, etc.).

  • Hierarchy.Child.Description array<object>

    Descripción del nodo en diferentes idiomas.

  • Parameters object

    Parámetros técnicos básicos del producto.

  • Parameters.Width number

    Ancho en mm (o cm, según el sistema de origen).

  • Parameters.Lenght number

    Longitud en mm (el campo en la API se llama "Lenght").

  • Parameters.Height number

    Altura en mm.

  • Parameters.Weight number

    Peso en kg.

  • Parameters.Volume_of_packages number

    Volumen de los paquetes (por ejemplo, m³).

  • Parameters.Number_of_packages integer

    Número de paquetes.

  • Parameters.AdditionalDimensions array<object>

    Dimensiones adicionales (por ejemplo, rango de altura).

  • Parameters.AdditionalDimensions[].Width number

    Ancho adicional.

  • Parameters.AdditionalDimensions[].Lenght number

    Longitud adicional.

  • Parameters.AdditionalDimensions[].Height number

    Altura adicional.

  • Parameters.AdditionalDimensions[].Dimension_Type string

    Tipo de dimensión adicional (por ejemplo, "ZW").

  • Parameters.AdditionalDimensions[].Dimension_Desc string

    Descripción de la dimensión adicional.

  • Attributes array<object>

    Lista de atributos de configuración del producto (por ejemplo, color de la encimera, tipo de patas).

  • Attributes[].AttributeId string

    Identificador del atributo (devuelto como texto, por ejemplo, "1").

  • Attributes[].Symbol string

    Símbolo del atributo (por ejemplo, B1, C1, etc.).

  • Attributes[].Name array<object>

    Nombres del atributo en diferentes idiomas.

  • Attributes[].Values_groups array<object>

    Grupos de valores (opciones disponibles para el atributo).

  • Attributes[].Values_groups[].GroupID integer

    Identificador del grupo de valores.

  • Attributes[].Values_groups[].Description string

    Descripción del grupo de valores (por ejemplo, "Colores estándar").

  • Attributes[].Values_groups[].Name array<object>

    Nombres de grupos de valores en diferentes idiomas.

  • Attributes[].Values_groups[].Available_values array<object>

    Lista de valores concretos entre los que se puede elegir (por ejemplo, colores, tejidos).

  • Attributes[].Values_groups[].Available_values[].Value string

    Código de 4 dígitos del valor en formato de texto (por ejemplo, "0172").

  • Attributes[].Values_groups[].Available_values[].Name array<object>

    Nombres de un valor determinado en diferentes idiomas.

  • Attributes[].Values_groups[].Available_values[].AdditionalInfo array<object>

    Información adicional (por ejemplo, descripción técnica) en diferentes idiomas.

  • Attributes[].Values_groups[].Available_values[].Gradation array

    Información sobre la gradación/orden; en la práctica, a menudo una tabla vacía [].

  • Attributes[].Values_groups[].Available_values[].Surcharge array<object>

    Lista de recargos para un valor determinado (estructura como Price: Price, Currency, Currency_symbol, PriceList_symbol, IsCommon).

  • Attributes[].Values_groups[].Available_values[].SpecialSurcharge number

    Recargo especial (valor numérico).

    Default value: 0
  • Attributes[].Values_groups[].Available_values[].MDDOnly integer
    Possible values: 0 1

    Indicador: valor disponible solo para clientes MDD (0 - no, 1 - sí).

    Default value: 0
  • Attributes[].Values_groups[].Available_values[].OriginalGroupDescription string|null

    Descripción original del grupo en el sistema de origen.

  • Attributes[].Values_groups[].Available_values[].OriginalGroupId integer|null

    Identificador original del grupo en el sistema de origen.

  • Attributes[].Values_groups[].Available_values[].DaysToComplete integer|null

    Días adicionales necesarios para la ejecución con esta configuración.

  • Attributes[].CouplingWithAttribute string|null

    Vínculo con otro atributo (identificador como cadena o vacío, si no existe).

  • Attributes[].AvailableForStandardConfiguration integer
    Possible values: 0 1

    ¿El atributo está disponible en las configuraciones estándar (0 - no, 1 - sí)?

    Default value: 0
  • Price array<object>

    Lista de precios del producto en diferentes listas de precios y divisas.

  • Price[].Price number

    Precio numérico.

  • Price[].Currency string

    Código de moneda en formato ISO 4217 (por ejemplo, EUR, PLN).

  • Price[].Currency_symbol string

    Símbolo de moneda (por ejemplo, €, zł).

  • Price[].PriceList_symbol string

    Símbolo de lista de precios.

  • Price[].IsCommon integer
    Possible values: 0 1

    ¿El precio es común (0 - no, 1 - sí)?

    Default value: 0
  • Ecotax number

    Valor del impuesto ecológico (por ejemplo, porcentaje o importe, según el sistema).

  • Comments string|null

    Comentarios de texto (si están disponibles).

  • LinxComments array<object>

    Comentarios Linx en diferentes idiomas.

  • LinxComments[].LangSymbol string

    Código del idioma del comentario.

  • LinxComments[].Value string

    Contenido del comentario en el idioma correspondiente.

  • AccessoriesGroups array<object>

    Grupos de accesorios relacionados con el producto.

  • AccessoriesGroups[].GroupID integer

    Identificador del grupo de accesorios.

  • AccessoriesGroups[].Description string

    Descripción del grupo de accesorios.

  • AccessoriesGroups[].Accessories array<object>

    Lista de accesorios del grupo.

  • AccessoriesGroups[].Accessories[].Symbol string

    Símbolo del accesorio.

  • AccessoriesGroups[].Accessories[].Quantity integer

    Cantidad predeterminada del accesorio.

    Default value: 0
  • AccessoriesGroups[].Accessories[].Definitions array<object>

    Definiciones del accesorio (parámetros, valores de los atributos).

  • AccessoriesGroups[].Accessories[].Definitions[].DefinitionNo integer

    Número de definición del accesorio.

  • PriceGroup string

    Símbolo del grupo de precios del producto (por ejemplo, "10").

  • IgnoreSurcharges integer
    Possible values: 0 1

    Indicador de omisión de recargos (0: no, 1: sí).

    Default value: 0
  • Gradation integer

    Valor de gradación a nivel de producto.

    Default value: 0
  • ExecutionLog array<object>

    Registro del tiempo de ejecución de los pasos individuales en el lado de la API.

  • ExecutionLog[].desc string

    Descripción del paso en el registro de ejecución.

  • ExecutionLog[].execution_time number

    Tiempo de ejecución del paso (por ejemplo, en ms).

    Default value: 0
  • ExecutionFinishTime string

    Marca de tiempo de finalización de la generación de la respuesta (formato datetime).

JSON
{
  "status": 500,
  "error": "server_error",
  "message": "Se ha producido un error en el servidor."
}

Implementation

Ejemplos de llamada al punto final (GET anónimo, sin encabezado Authorization) para https://external-api.mddlinx.com/externalapi/configurator/{symbol}.

PHP
<?php
declare(strict_types=1);

$symbol = 'MIT1RP'; // símbolo del producto

$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);
Laravel
<?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);
JS
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);
})();
Python
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())
C#
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);
  }
}