Documentación Mercado Libre

Descubre toda la información que debes conocer sobre las APIs de Mercado Libre.
circulos azuis em degrade

Documentación

Última actualización 16/02/2024

Compatibilidades entre ítems y productos de Autopartes

Importante:
Este recurso está disponible sólo para Argentina, México, Brasil, Uruguay, Chile y Colombia.

Las compatibilidades permiten asociar los ítems publicados a los productos compatibles del marketplace por ejemplo, si tienes un “Amortiguador Corven Plus” publicado podrás definir atributos como Marca, Modelo, Año y Motor para los cuales este repuesto es compatible. De esta manera, mejoras la calidad de las publicaciones y reduces la cantidad de publicaciones por ítem.
Para esto, deberás acceder al dump y verificar que el dominio de los ítems y el dominio de los productos sean compatibles. Luego, podrás agregar las compatibilidades de 3 (tres) maneras diferentes y por último, listarlas.
Si la compatibilidad no es la adecuada, podrás eliminar aquellas definidas por los usuarios (vendedores).


Verificar compatibilidad entre dominios

Nota:
- A partir del 5 de febrero, será obligatorio informar compatibilidades en nuevas publicaciones. Por lo que antes de publicar te recomendamos validar si la categoría del ítem contiene el atributo categories.required = true.

- Una vez creada la publicación, podrás identificar los ítems en donde es obligatorio informar compatibilidades con el atributo tag= [incomplete_compatibilities]. Puedes ver más detalle en identificar ítems que requieren compatibilizarse.

Antes de crear compatibilidades entre ítems y productos, debes verificar que los dominios y catagorías de ítems y productos sean compatibles.

Consultando el siguiente dump, obtienes el listado de dominios y categorías en los cuales puede o necesita informar compatibilidades por site.

Llamada:

curl -X GET http://api.mercadolibre.com/catalog/dumps/domains/$SITE_ID/compatibilities

Ejemplo llamada:

curl -X GET https://api.mercadolibre.com/catalog/dumps/domains/MLM/compatibilities

Ejemplo respuesta:

[
    {
        "domain_id": "MLM-AUTOMOTIVE_SHOCK_ABSORBERS",
        "main": false,
        "compatibilities": [
            {
                "compatible_domain_id": "MLM-CARS_AND_VANS_FOR_COMPATIBILITIES",
                "type": "EXTENSION",
                "required": false,
                "restrictions": [],
                "categories": [
                    {
                        "id": "MLM45878",
                        "required": true,
                        "note_status": "ENABLED",
                        "restrictions_status": "DISABLED",
                        "universal_status": "DISABLED"
                    }
                ]
            }
        ]
    },
    …
}]

Los nuevos campos indican:

  • categories: categorías que admiten la carga de compatibilidades.
  • required: categorías en las que es obligatorio cargar compatibilidades.
  • type: tipo de compatibilidad. Solo el tipo EXTENSION admite carga de compatibilidades.
  • note_status y restrictions_status: indican si la categoría permite informar notas y restricciones de posición.
  • universal_status: indica si la categoría permite informar compatibilidades universales. ENABLED: permite informar compatibilidades universales o DISABLED: no permite informar compatibilidades universales.

Múltiples publicaciones elegibles con multiget

Obtén más información de dominios, productos y atributos de autopartes.


Contar productos de un dominio

Para consultar la cantidad de productos existentes por dominio (familia de producto) que cumplen con determinados atributos y valores puedes realizar el siguiente POST. Esto te permitirá validar, previo a agregar las compatibilidades, la cantidad de productos y evitar errores en la asignación de compatibilidades.
Esto es importante ya que solo se pueden asignar un máximo de 200 productos por llamado.

Nota:
El límite de tráfico por APP_ID es de 100 rpm.

Llamada:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/catalog_compatibilities/products_search/count_family_products
{
  "domain_id": "$domainId",
  "attributes": [{
    "id": "$attributeId1",
    "value_id": "$valueId1"
  }, {
    "id": "$attributeId2",
    "value_name": "$valueName2"
  }]
}

Ejemplo:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/catalog_compatibilities/products_search/count_family_products
{
  "domain_id": "MLM-CARS_AND_VANS_FOR_COMPATIBILITIES",
  "attributes": [{
      "id": "BRAND",
      "value_name": "Volkswagen"
    },
    {
      "id": "CAR_AND_VAN_MODEL",
      "value_name": "VENTO"
    }
  ]
}

Respuesta:

{
   "count":141
}

Identificar ítems que requieren compatibilizarse

Con el siguiente recurso a través del tag incomplete_compatibilities puedes identificar los ítems que requieren informar compatibilidades de manera obligatoria para evitar moderaciones.

Llamada:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID

Ejemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLA1417560910

Respuesta:

{
  "id": "MLA743626587",
  "site_id": "MLA",
  "title": "Paragolpe Trasero Peugeot 307 Linea Nueva 5 Puertas",
  "seller_id": 65711207,
  "category_id": "MLA60954",
  "official_store_id": null,
.
.
.
.

  "tags": [
    "good_quality_picture",
    "brand_verified",
    "loyalty_discount_eligible",
    "good_quality_thumbnail",
    "ahora-paid-by-buyer",
    "incomplete_compatibilities",
    "immediate_payment"
  ],
  "warranty": "CON GARANTIA DEL FABRICANTE",
  "catalog_product_id": null,
  "domain_id": "MLA-VEHICLE_REAR_BUMPERS",
  "parent_item_id": null,
  "deal_ids": [
  ],
  "automatic_relist": false,
  "date_created": "2018-08-17T20:36:54.000Z",
  "last_updated": "2023-12-15T17:18:35.000Z",
  "health": 0.83,
  "catalog_listing": false
}

Filtrar ítems que requieren compatibilizarse

Llamada:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/users/$SELLER_ID/items/search?tags=incomplete_compatibilities

Ejemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/users/$SELLER_ID/items/search?tags=incomplete_compatibilities

Respuesta:

{
   "seller_id": "1373279576",
   "results": [
       "MLA1417560910",
       "MLA1373565211",
       "MLA1371734513",
       "MLA1396609243"
   ],
   "paging": {
       "limit": 50,
       "offset": 0,
       "total": 4
   },
   "query": null,
.
.
.
.
}

Agregar compatibilidades

Nota:
- Disponibilizamos todas las funcionalidades de compatibilidades en las publicaciones de autopartes de las categorías MLA1747, MLM1748, MLB22693, MLU1748 , MLC1748 y MCO87919.

-En los sites de MLA, MLM, MLB, MLU, MLC y MCO deberán informar compatibilidades de manera obligatoria en los ítems marcados con el tag incomplete_compabilities para evitar que las publicaciones de autopartes sean pausadas.

Para agregar compatibilidades de un ítem con un producto y/o dominio podrás consultar hasta un máximo de 200 productos por llamado (incluidos los definidos en los dominios) y hacerlo de 3 maneras diferentes:

  • Por producto: para agregar nuevas compatibilidades a un ítem debes enviar las compatibilidades que quieras añadir. No es necesario enviar las existentes para mantener las actuales.
  • Por dominio de producto: puedes especificar un conjunto de atributos que definen el dominio de productos. Para cada dominio, debes especificar su dominio y para cada atributo, un value conformado por id y/o name.
  • Por producto y dominio: puedes agergar compatibilidades a un ítem publicado de otro producto y una dominio de productos, es decir, te permite agregar de manera conjunta las 2 primeras.
Nota:
El límite de tráfico por APP_ID es de 100 RPM (request por minuto).

Valores posibles para una restricción de posición

Al agregar una compatibilidad también podrás indicar la restricción de posición de la misma, con la siguiente llamada podrás conocer los valores posibles para informarla.

Llamada:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/catalog_compatibilities/restrictions/values?main_domain_id=MLA-CARS_AND_VANS&secondary_domain_id=MLA-VEHICLE_SHOCK_ABSORBERS

Respuesta:

{
      "attributes_values": [   
          {
               "attribute_id": "POSITION",
               "values":
                [
                    {
                        "value_id": "23536",
                        "value_name": "Superior",
                    },
                    {
                        "value_id": "23537",
                        "value_name": "Inferior"
                    }
               ]
         }
    ]
}

Agregar compatibilidad por producto

Para agregar una compatibilidad a uno o varios productos individuales, puedes utilizar el product search.

Llamada:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
{
   "products": [{
       "id": "$PRODUCT_ID",
       "note": "texto",
       "restrictions": [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      },
                      {
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}, 
                                  {"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      }
                    ]
                }]
   }]
}'

Ejemplo:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
{
   "products": [{
       "id": "MLB155254",
       "note": "Modelos posteriores a Mayo de 2018",
       "restrictions": [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "12456","value_name": "Delantero"}]
                      },
                      {
                        "values":[{"value_id": "65432","value_name": "Trasero"}, 
                                  {"value_id": "87675","value_name": "Inferior"}]
                      }
                    ]
                }]
   }]
}

Respuesta:

{
 "created_compatibilities_count": 72
}

También es posible agregar una nota y restricción de posición a más de una compatibilidad, para esto es necesario reemplazar el nodo products por products_group, ejemplo:

Llamada:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
{
   "products_group": [{
       "ids": ["MLB155254", "MLB155255"],
       "note": "texto",
       "restrictions": [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      },
                      {
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}, 
                                  {"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      }
                    ]
                }]
   }]
}

Agregar compatibilidad por dominio

Para agregar compatibilidades definidas por los atributos que determinan un dominio, conoce los dominios y atributos de autopartes.

Llamada:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
{
   "products_families": [{
       "domain_id": "$DOMAIN_ID",
       "attributes": [{
               "id": "$ATTRIBUTE_ID",
               "value_id": "$VALUE_ID"
           },
           {
               "id": "$ATTRIBUTE_ID",
               "value_id": "$VALUE_ID"
           },
       ],
     "note": "Texto",
     "restrictions":
                [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      },
                      {
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}, 
                                  {"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      }
                    ]
                }]
}

Ejemplo (excepto MLM):

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLA794706391/compatibilities
{
   "products_families": [{
       "domain_id": "MLA-CARS_AND_VANS",
       "attributes": [{
               "id": "BRAND",
               "value_id": "60249"
           },
           {
               "id": "YEAR",
               "value_name": "2010"
           },
       ],
     "note": "Solamente para vehículos de fabricación Europea",
     "restrictions":
                [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "12456","value_name": "Delantero"}]
                      },
                      {
                        "values":[{"value_id": "65432","value_name": "Trasero"}, 
                                  {"value_id": "87675","value_name": "Inferior"}]
                      }
                    ]

                }]
}

Respuesta:

{
 "created_compatibilities_count": 23
}

Ejemplo MLM:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM794706391/compatibilities
{
   "products_families": [{
           "domain_id": "MLM-CARS_AND_VANS_FOR_COMPATIBILITIES",
           "attributes": [{
                   "id": "DRIVE_TYPE",
                   "value_id": "8182649"
                  
               },
               {
                   "id": "CAR_AND_VAN_BODY_TYPE",
                   "value_id": "8183109"
                  
               },
               {
                   "id": "YEAR",
                   "value_name": "2010"
                  
               }
           ],
     "note": "Solamente para vehículos de fabricación Europea",
     "restrictions":
                [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "12456","value_name": "Delantero"}]
                      },
                      {
                        "values":[{"value_id": "65432","value_name": "Trasero"}, 
                                  {"value_id": "87675","value_name": "Inferior"}]
                      }
                    ]
       }
   ]
}

Respuesta:

{
 "created_compatibilities_count": 23
}

Agregar por producto y dominio de productos

Llamada:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
{
   "products": [{
       id": "$PRODUCTIID",
       "note": "texto",
       "restrictions": [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      },
                      {
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}, 
                                  {"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      }
                    ]
   }],
   "products_families": [{
       "domain_id": "$DOMAIN_ID",
       "attributes": [{
               "id": "ATTRIBUTE_ID",
               "value_id": "$VALUE_ID"
           },
           {
               "id": "ATTRIBUTE_ID",
               "value_id": "$VALUE_ID"
           },
       ],
     "note": "Texto",
     "restrictions":
                [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      },
                      {
                        "values":[{"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}, 
                                  {"value_id": "$VALUE_ID","value_name": "$VALUE_NAME"}]
                      }
                    ]
                }]
}

Ejemplo:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM794706391/compatibilities
{
   "products": [{
       "id": "MLB155254",
       "note": "Modelos posteriores a Mayo de 2018",
       "restrictions": []
   }],
   "products_families": [{
       "domain_id": "MLB-CARS_AND_VANS",
       "attributes": [{
               "id": "BRAND",
               "value_id": "60249"
           },
           {
               "id": "YEAR",
               "value_name": "2010"
           },
       ],
     "note": "Solamente para vehículos de fabricación Europea",
     "restrictions":
                [{
                    "attribute_id": "POSITION",
                    "attribute_values":
                    [{
                        "values":[{"value_id": "12456","value_name": "Delantero"}]
                      },
                      {
                        "values":[{"value_id": "65432","value_name": "Trasero"}, 
                                  {"value_id": "87675","value_name": "Inferior"}]
                      }
                    ]
                }]
}

En el campo note permitimos hasta 500 caracteres y el texto es moderado.

Respuesta:

{
 "created_compatibilities_count": 23
}

Posibles errores

400: validaciones de consistencia:

  • Los campos obligatorios están incompletos.
  • El formato de los ids es incorrecto.
  • Se encontraron y/o especificaron más de 200 productos para los dominios de productos.
  • Se especificaron más de 10 dominios de productos.
  • Los productos y/o dominios no pertenecen al mismo site que el ítem.
  • Los productos deben ser todos hijos.
  • El dominio del ítem es compatible con los dominios de los productos especificados y/o con los dominios especificados en los dominos de productos especificadas.
  • No puede haber más de 4 posiciones configuradas en una restricción de posición.
  • Cada restricción puede tener máximo 4 ids.
  • Los ids deben pertenecer al conjunto cerrado de ids definidos.
  • La combinación de valores debe ser única, es decir no puede haber dos listas de ids iguales dentro de una restricción.
  • La categoría del ítem debe tener habilitadas las notas y restricciones.
  • La nota no puede superar los 500 caracteres.

403: token inválido o falta de permisos sobre el ítem.
404: no existe el ítem, los productos o los dominios especificados.


Agregar una compatibilidad universal

Con el objetivo de mejorar la calidad de las publicaciones de autopartes de las categorías de accesorios para autos y camionetas ( MLA6520, MLM5320, MLU1747, MLB1747) se podrán informar compatibilidades universales para indicar que un ítem es compatible con cualquier producto.

Para indicar que un ítem es compatible con cualquier producto, dentro de la petición, se cuenta con el campo universal, el cual deberá ser informado en true. Lo anterior indica que este ítem es universal (por lo tanto no se le debe de agregar compatibilidades dado que es compatible con todos los productos dentro del mismo dominio).


Al indicar una compatibilidad universal, no es posible especificar productos ni familias. En caso de que se envíen ambos campos se obtendrá un error.

Llamada:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
{
   "products": [],
   "products_families": [],
   "products_group": [],
   "universal": true
}

Ejemplo:

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM12456789/compatibilities
{
   "products": [],
   "products_families": [],
   "products_group": [],
   "universal": true,
}

Respuesta:

{
 "created_compatibilities_count": 1
}

Posibles errores al asignar compatibilidades universales

400: validaciones de consistencia:

  • En caso de que se envíen productos y familias al mismo tiempo que se informa una compatibilidad universal, se obtendrá:
      • Message: "Invalid arguments for specific request. Please check details to satisfy validations".
      • Details: "at least one of products, products_groups, products_families or universal must be specified, if universal no products can be specified".
  • En el caso que se tenga alguna compatibilidad en el ítem registrada anteriormente y se intenta volver universal, se obtendrá:
    • Message: Item has compatibilities and these must be removed before setting it as universal.
  • Cuando se intenta generar un ítem universal pero la categoria no esta habilitada para esta experiencia, se obtendrá:
    • Message: There is no configured compatibility for the category $CATEGORY_ID
  • Si el ítem anteriormente es universal y se intenta cargar alguna compatibilidad, se obtendrá:
    • Message: Item has universal setting and must be removed before creating compatibilities.

    403: token inválido o falta de permisos sobre el ítem.

    404: no existe el ítem.


    Modificar o eliminar notas y restricciones de posición

    Para modificar o eliminar una nota y restricción de posición, ejecuta un PUT en el recurso de informar compatibilidades cambiando la información que necesitas en el campo update. Para borrar una o ambas, basta enviar el campo note y/o el array restrictions vacíos, como en el ejemplo que se muestra a continuación, donde se eliminan ambos campos.


    Ejemplo:

    curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
    {
      "update": {
        "products": [{
                "id": "MLB155254",
                "note": "",
                "restrictions":[]
                }
            ]
        }
    }
    

    Identificar ítems compatibilizados

    Con el siguiente recurso puedes puedes identificar que un ítem ya está compatibilizado a través del atributo id = “HAS_COMPATIBILITIES”. En caso de que este atributo no se observe en la salida de la llamada quiere decir que el ítem no cuenta con compatibilidades informadas.

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID

    Ejemplo:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLA1417560910

    Respuesta:

    {
      "id": "MLA1417560910",
      "site_id": "MLA",
      "title": "Interruptor Columna (palanca) Tamatel 15104 - No Ofertar",
      "seller_id": 1373279576,
      "category_id": "MLA435058",
    .
    .
    .
    .
     "attributes": [
        {
          "id": "HAS_COMPATIBILITIES",
          "name": "Tiene compatibilidades",
          "value_id": "242085",
          "value_name": "Sí",
          "values": [],
          "value_type": "boolean"
        },
        {},
        {}
      ],
    .
    .
    .
    }
    

    Listar compatibilidades

    Con este recurso, puedes listar todas las compatibilidades para un ítem particular.

    Nota:
    Se agregó a la respuesta del recurso el objeto “reputation” con los atributos “level” y “total_claims” (color y total de vehículos que generaron reclamos) que ayudarán a identificar los vehículos que están causando reclamos por incompatibilidad.

    Obtener todas compatibilidades de un ítem

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities?extended=true

    Atributos:

    • Extended: cuando el valor es “true” devolverá el detalle de las notas y posiciones.

    Ejemplo:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM794706391/compatibilities?extended=true

    Respuesta:

    {
       "products": [
            {
                "id": "bcbd413f-cd65-0e0f-88c9-5eb4aebb5372",
                "domain_id": "MLM-CARS_AND_VANS_FOR_COMPATIBILITIES",
                "catalog_product_id": "MLM15847548",
                "catalog_product_name": "Volkswagen Jetta 2010 GLI Manual 5",
                "source": "SELLER",
                "note": "Solo modelos de caja automática"
            },
            {
                "id": "58bd413f-cd65-a719-9570-2ca8f2b528af",
                "domain_id": "MLM-CARS_AND_VANS_FOR_COMPATIBILITIES",
                "catalog_product_id": "MLM15847546",
                "catalog_product_name": "Volkswagen Jetta 2010 GLI Automática 6",
                "source": "SELLER",
              "note": "Modelos posteriores a Junio 2010",
                "restrictions":
                    [{
                        "attribute_id": "POSITION",
                        "attribute_values":
                        [{
                            "values":[{"value_id": "12456","value_name": "Delantero"}]
                          },
                          {
                            "values":[{"value_id": "65432","value_name": "Trasero"}, 
                                      {"value_id": "87675","value_name": "Inferior"}]
                        }]
                 }],
                "reputation:" {
                "level": "RED",
                "total_claims": 2
                }
    
            }
    
       ],
        "catalog_compatibilities_count": 15
    }
    
    Nota:
    - En caso que la compatibilidad no tenga reclamos por incompatibilidad, el objeto reputation no se mostrará en la respuesta.
    - Sólo se compatibilizan reclamos cuyo reason_id sea PDD9575 o PDD9967.

    Campos de respuesta

    • products: array con todos los vehículos (compatibilidades) informadas por el vendedor.
      • ID: Id de la compatibilidad.
      • domain_id: dominio del producto principal.
      • catalog_product_id: Id del producto del dominio principal.
      • catalog_product_name: nombre del producto del dominio principal.
      • source: flujo de origen de la compatibilidad.
      • note: especificación de condiciones de la compatibilidad entre el item y el producto principal.
      • restrictions: restricciones de compatibilidad entre item y producto principal (Ej. Posición de instalación de la pieza).
      • reputation: color y total de vehículos que generaron reclamos.
      • level: tomará el valor de RED para las compatibilidades con alta cantidad de reclamos por incompatibilidad.
      • total claims: cantidad de reclamos por incompatibilidad relacionados a la compatibilidad.
  • catalog_compatibilities_count: cantidad de compatibilidades del catálogo de Mercado Libre, es decir, estas últimas compatibilidades no estarán listadas debido a limitantes en licencias de propiedad intelectual.

  • Nota:
    Si una compatibilidad cargada por el vendedor ya está disponible en el catálogo de Mercado Libre, no se mostrará en el campo products de la respuesta debido a /Responsabilidad de Licencias.

    Obtener compatibilidades de un ítem universal

    En el caso de que el ítem esté configurado como universal, en la respuesta se agrega un campo adicional llamado universal que contiene una lista de dominios principales con los cuales es compatible el ítem.

    Ejemplo respuesta:

    {
              "universal": {
                  “domain_ids”:  [“MLM_CARS_AND_VANS_FOR_COMPATIBILITIES”]
                }
    }
    

    Obtener una compatibilidad particular de un ítem mediante su id

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities/$COMPATIBILITY_ID

    Ejemplo:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM794706391/compatibilities/$COMPATIBILITY_ID

    Respuesta:

    {
      "id": "bcbd413f-cd65-0e0f-88c9-5eb4aebb5372",
      "domain_id": "MLM-CARS_AND_VANS_FOR_COMPATIBILITIES",
      "catalog_product_id": "MLM15847548",
      "catalog_product_name": "Volkswagen Jetta 2010 GLI Manual 5",
      "note": "Solo para versiones con frenos a disco en las ruedas traseras",
      "note_status": "PENDING",
      "restrictions": [{
                        "attribute_id": "POSITION",
                        "attribute_values":
                        [{
                            "values":[{"value_id": "12456","value_name": "Delantero"}]
                          }]
                   }],
                "reputation:" {
                "level": "RED",
                "total_claims": 2
                }
    
            }
    

    Las notas solo figuran en el front del ítem en los status APPROVED o CHECKED.

    Un error 404 significa que el ítem o la compatibilidad no existen.



    Obtener la nota de una compatibilidad

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities/$COMPATIBILITY_ID/note
    

    Ejemplo:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM12456789/compatibilities/bcbd413f-cd65-0e0f-88c9-5eb4aebb5372/note

    Respuesta:

    {
        "note": "Solo para versiones con frenos a disco en las ruedas traseras"
    }
    

    Eliminar compatibilidades

    En caso de haber asociado una compatibilidad incorrecta con el ítem, podrás eliminarla siempre que haya sido realizada por el vendedor.


    Eliminar una compatibilidad específica para el ítem indicado

    Llamada:

    curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities/$COMPATIBILITY_ID

    Ejemplo:

    curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM794706391/compatibilities/4cb9af35-8e9b-ebfd-9e7f-2245ac363d10

    La respuesta será un http 200.


    Eliminar compatibilidades para un ítem

    Llamada:

    curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities

    Ejemplo:

    curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM794706391/compatibilities

    Respuesta:

    {
      "deleted_compatibilities": [
        "d0ba2aeb-7409-0037-7b23-0b91266fd00e",
        "72ba233d-16d8-218b-4062-7a97dab166c8"
      ]
    }

    Eliminar compatibilidades para un dominio de un ítem

    Llamada:

    curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID/compatibilities
    {
    "products_families": [{
      "domain_id": "$domain_id",
      "attributes": [{
        "id": "$attribute_id1",
        "values":[{ 
          "id": "$value_id1",
          "name": "$value_name1"
        }]
      },{
        "id": "$attribute_id2",
        "values":[{ 
          "id": "$value_id1",
          "name": "$value_name1"
        }]
      }]
    }]
    }
    

    Ejemplo:

    curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLM794706391/compatibilities
      {
      "products_families": [{
              "domain_id": "MLM-CARS_AND_VANS_FOR_COMPATIBILITIES",
              "attributes": [{
                      "id": "DRIVE_TYPE",
                      "value_id": "8182649"           
                  },
                  {
                      "id": "CAR_AND_VAN_BODY_TYPE",
                      "value_id": "8183109"
                  },
                  {
                      "id": "YEAR",
                      "value_name": "2010"              
                  }]
          }]
    }
    

    Respuesta:

    {
       "deleted_compatibilities": [
           "d0ba2aeb-7409-0037-7b23-0b91266fd00e",
           "72ba233d-16d8-218b-4062-7a97dab166c8"
       ]
    }

    Posibles errores

    400: formato incorrecto / más de 200 productos para el dominio especificado / más de 10 dominios especificados.
    403: token inválido o falta de permisos sobre el ítem.
    404: el ítem o la compatibilidad no existen.


    Cómo informar excepciones

    En casos de autopartes en que la categoría exige la información de compatibilidades, pero no encuentra ningún vehículo, modelo o versión disponible en el catálogo. Estos ítems hacen parte del flujo de excepciones y para informarlos disponibilizamos el siguiente recurso.


    Llamada:

    curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$item_id/compatibilities/exception
    {
      "comment": “texto libre con máximo 255 caracteres” 
    }

    Ejemplo:

    curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLB12345678/compatibilities/exception
    {
      "comment": “texto libre con máximo 255 caracteres” [Requerido]
    }
    

    Respuesta:

    200 OK

    Posibles errores

    400: el ítem está cerrado o inactivo.
    400: el ítem tiene compatibilidades existentes.
    400: la categoría del ítem no tiene compatibilidades.
    400: el ítem tiene una excepción de compatibilidad existente.
    400: se requiere comentario.


    Consultar si un ítem tiene excepción

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$item_id/compatibilities/exception

    Ejemplo:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLB12345678/compatibilities/exception
    

    Respuesta:

    {
       "has_exception": true/false
    }
    

    - Devuelve true sólo cuando el ítem no tienen ninguna compatibilidad cargada y se informó una excepción.
    - Devuelve false siempre que el ítem tiene por lo menos un vehículo informado como compatible (independientemente de si se informó excepción o no).


    Conocer compatibilidades que generan reclamos

    Con la finalidad de que puedas corregir compatibilidades mal indicadas, con el siguiente endpoint puedes identificar el auto que eligió el comprador desde el momento en que se genera un reclamo por incompatibilidad.

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/compats-snapshots/orders/$ORDER_ID

    Ejemplos:

    Órden con reclamo donde el comprador seleccionó diferentes filtros durante la compra del producto y se confirmó que el producto seleccionado "Sí era compatible" con el ítem (compatibility_status.compatibility = CONFIRMED).

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/compats-snapshots/orders/2000006372967416

    Respuesta:

    {
        "item_id": "MLM2187940074",
        "product_id": "MLM15879678",
        "seller_id": "61597650",
        "user_selection": {
            "label_values": [
                {
                    "label": "Marca",
                    "value_name": "Jeep",
                    "values": [
                        {
                            "attribute_id": "BRAND",
                            "value_id": "60395"
                        }
                    ]
                },
                {
                    "label": "Modelo",
                    "value_name": "Grand Cherokee",
                    "values": [
                        {
                            "attribute_id": "CAR_AND_VAN_MODEL",
                            "value_id": "8236932"
                        }
                    ]
                },
                {
                    "label": "Año",
                    "value_name": "1998",
                    "values": [
                        {
                            "attribute_id": "YEAR",
                            "value_id": "60500"
                        }
                    ]
                },
                {
                    "label": "Versión",
                    "value_name": "Limited - SUV 4 Puertas",
                    "values": [
                        {
                            "attribute_id": "CAR_AND_VAN_SUBMODEL",
                            "value_id": "8238101"
                        },
                        {
                            "attribute_id": "CAR_AND_VAN_BODY_TYPE",
                            "value_id": "8183114"
                        },
                        {
                            "attribute_id": "BODY_DOORS_NUMBER",
                            "value_id": "8239302"
                        }
                    ]
                },
                {
                    "label": "Mecánica",
                    "value_name": "5.2L V8 Gasolina Aspirado Caja Automática 4 Marchas - Tracción RWD",
                    "values": [
                        {
                            "attribute_id": "CAR_AND_VAN_ENGINE",
                            "value_id": "8753511"
                        },
                        {
                            "attribute_id": "ASPIRATION",
                            "value_id": "8183201"
                        },
                        {
                            "attribute_id": "TRANSMISSION_CONTROL_TYPE",
                            "value_id": "8183158"
                        },
                        {
                            "attribute_id": "TRANSMISSION_SPEEDS_NUMBER",
                            "value_id": "8239312"
                        },
                        {
                            "attribute_id": "DRIVE_TYPE",
                            "value_id": "8182651"
                        }
                    ]
                }
            ]
        },
        "compatibility_status": {
            "compatibility": "CONFIRMED", 
        "compatibility_id": "bec40b54-c7de-1ad2-a7e2-00a5e34376a4"
        },
        "compatibility_deleted": true,
        "date_created": "2023-08-31T20:08:41Z",
        "date_updated": "2023-08-31T22:37:39Z"
    }
    

    Órden con reclamo donde el comprador no seleccionó algún vehículo durante la compra del producto.

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/compats-snapshots/orders/2000006372967424

    Respuesta:

    {
        "item_id": "MLM2038068352",
        "seller_id": "186880296",
        "compatibility_status": {
          "compatibility": "NO_USER_SELECTION",
          "note": "We don't have the compatibility information for this order. The user made the order without completing the widget. ",
          "restrictions": []
        },
        "date_created": "2023-08-23T12:30:57Z"
      }
    

    Órden con reclamo donde previo a la compra se confirmó al compradorque el producto seleccionado "No era compatible" con el ítem (compatibility_status.compatibility = INCOMPATIBLE).

    Llamada:

    curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/compats-snapshots/orders/2000006372967684

    Respuesta:

    {
        "item_id": "MLM693204319",
        "seller_id": "56493851",
        "compatibility_status": {
            "compatibility": "INCOMPATIBLE"
        },
        "compatibility_deleted": true,
        "date_created": "2023-08-25T14:45:48Z"
    }
    

    Los campos indican:

    • compatibility_id: identificador de la compatibilidad seleccionada durante la compra.
    • product_id: id del vehículo seleccionado previo a la compra.
    • user_selection: detalle de los filtros seleccionados por el comprador al momento de la compra.
    • compatibility_status.compatibility:
      • CONFIRMED: indica que se confirmó al comprador que el vehículo seleccionado era compatible con el ítem comprado.
      • INCOMPATIBLE: indica que se confirmó al comprador que el vehículo seleccionado no era compatible con el ítem comprado.
      • compatibility_deleted::
        • “true” indica que la compatibilidad para el vehículo seleccionado por el comprador ya fue borrada por el ítem al momento de realizar la consulta.
      • Nota:
        A partir del 19 de febrero para obtener el detalle de reclamos por incompatibilidad consulta el endpoint GET /v1/claims/search?reason_id=$reason_id e identifica el atributo "reason_id": "PDD9967" o reason_id: “PDD9575”.

        Posibles errores:

        Error_code Mensaje del error Descripción
        400 Compatibility snapshot for order with id $ORDER_ID not found. La orden no es válida.
        401 Invalid access token. Access Token inválido.
        403 The compatibility snapshot can only be retrieved for orders with claims. La orden no tiene claim asociado.
        403 Caller must be the seller of the item. Se está intentando consultar la orden de un seller que no corresponde al del Access Token proporcionado.
        Importante:
        Para mantener actualizadas las compatibilidades puedes conocer los vehiculos que se agregaron al catálogo realizando un get al recurso /catalog_compatibilities/products_search/new?categoryId=$CATEGORY_ID.

        Siguiente: Referencias de dominios, productos y atributos para Autopartes.